將數據分組到 Bins 元件
本文說明如何使用群組數據到 Azure 機器學習 設計工具中的 Bins 元件,將數位分組或變更連續數據的分佈。
將數據分組至 Bin 元件支援多個量化資料選項。 您可以自定義量化邊緣的設定方式,以及如何將值分派到量化中。例如,您可以:
- 手動輸入一系列值,做為 bin 界限。
- 使用 分位數或百分位數排名將值指派給 bin。
- 強制將值平均分佈到量化中。
進一步瞭解量化和分組
量化或分組數據(有時稱為量化)是準備機器學習數值數據的重要工具。 在這類案例中,它很有用:
連續數字的數據行具有太多唯一值,無法有效地建立模型。 因此,您會自動或手動將值指派給群組,以建立一組較小的離散範圍。
您想要以代表特定範圍的類別值取代數字數據行。
例如,您可以藉由指定自定義範圍,例如 1-15、16-22、23-30 等方式,將年齡數據行中的值分組。
數據集有一些極端值,全都超出預期範圍,而這些值對定型的模型有超量的影響。 若要減輕模型中的偏差,您可以使用分位數方法將數據轉換成統一分佈。
使用此方法,將數據分組至 Bins 元件會決定理想的量化位置和量化寬度,以確保大約相同數目的樣本落入每個量化。 然後,根據您選擇的正規化方法,bin 中的值會轉換成百分位數或對應至量化編號。
量化範例
下圖顯示使用 分位數 方法量化前後的數值分佈。 請注意,相較於左側的原始數據,數據已量化並轉換成單位一般小數字數。
因為有許多方式可將數據分組,所以所有可自定義,建議您試驗不同的方法和值。
如何將群組數據設定為 Bin
將群組 數據新增至 Bins 元件至設計工具中的管線。 您可以在資料轉換類別中找到此元件。
將具有數值數據的數據集連線到 bin。 量化只能套用至包含數值數據的數據行。
如果數據集包含非數值數據行,請使用 [ 選取數據集 中的數據行] 元件來選取要使用的數據行子集。
指定量化模式。 量化模式會決定其他參數,因此請務必先選取 [ 量化模式 ] 選項。 支援下列型態的量化:
分位數:分位數方法會根據百分位數排名將值指派給 bin。 這個方法也稱為相等高度量化。
相等寬度:使用此選項時,您必須指定間隔總數。數據行中的值會放在量化中,讓每個間隔在開始和結束值之間具有相同的間隔。 因此,如果數據在某一點周圍縮水,某些量化可能會有更多的值。
自訂邊緣:您可以指定開始每個量化的值。 邊緣值一律是 bin 的下限。
例如,假設您想要將值分組為兩個量化。一個的值會大於0,一個值會小於或等於0。 在此情況下,針對 bin 邊緣,您會在以逗號分隔的 bin 邊緣清單中輸入 0。 元件的輸出會是 1 和 2,表示每個資料列值的 bin 索引。 請注意,逗號分隔值清單必須以遞增順序排列,例如 1、3、5、7。
注意
Entropy MDL 模式是在 Studio 中定義(傳統版),而且沒有對應的 開放原始碼 套件可以運用在設計工具中支援。
如果您使用 Quantiles 和 Equal Width 量化模式,請使用 [量化數目] 選項來指定您要建立的量化或分位數。
針對 [ 數據行到量化],使用數據行選取器來選擇具有您要量化值的數據行。 數據行必須是數值數據類型。
相同的量化規則會套用至您選擇的所有適用數據行。 如果您需要使用不同的方法來量化某些數據行,請針對每組數據行使用個別的 Group Data 實例到 Bins 元件。
警告
如果您選擇不是允許類型的數據行,就會產生運行時錯誤。 元件會在找到不允許類型的任何數據行時立即傳回錯誤。 如果您收到錯誤,請檢閱所有選取的數據行。 錯誤不會列出所有無效的數據行。
針對 [輸出] 模式,指出您要如何輸出量化值:
附加:使用量化值建立新的數據行,並將該數據行附加至輸入數據表。
就地:以數據集中的新值取代原始值。
ResultOnly:只傳回結果數據行。
如果您選取 [ Quantiles 量化] 模式,請使用 [分位數正規化 ] 選項來判斷值在排序為分位數之前如何正規化。 請注意,正規化值會轉換值,但不會影響量化的最終數目。
支援下列正規化類型:
百分比:值會在 [0,100] 範圍內正規化。
PQuantile:值會在 [0,1] 範圍內正規化。
QuantileIndex:值會在 [1,bins 數目] 範圍內正規化。
如果您選擇 [自定義邊緣] 選項,請在 [間隔邊緣] 文本框的逗號分隔清單中輸入逗號分隔的數位清單做為 bin 邊緣。
值會標示分割量化的點。例如,如果您輸入一個 bin 邊緣值,將會產生兩個 bin。 如果您輸入兩個 bin 邊緣值,則會產生三個 bin。
值必須依照建立間隔的順序排序,從最低到最高。
選取 [ 將數據行標記為類別 ] 選項,以指出應該將量化數據行當做類別變數來處理。
提交管線。
結果
群組數據到 Bins 元件會傳回數據集,其中每個元素都已根據指定的模式進行量化。
它也會傳 回量化轉換。 您可以使用相同的量化模式和參數,將該函式傳遞至 套用轉換 元件至量化新數據樣本。
提示
如果您在定型數據上使用量化,則必須在用於測試和預測的數據上使用相同的量化方法。 您也必須使用相同的量化位置和量化寬度。
若要確保數據一律使用相同的量化方法來轉換,建議您儲存有用的數據轉換。 然後使用套用 轉換 元件將它們套用至其他數據集。