數據分割和範例元件
本文說明 Azure 機器學習 設計工具中的元件。
使用數據分割和範例元件在數據集上執行取樣,或從數據集建立數據分割。
取樣是機器學習中的重要工具,因為它可讓您減少數據集的大小,同時維持相同的值比率。 此元件支援數個在機器學習中很重要的相關工作:
將數據分割成相同大小的多個子區段。
您可以使用分割區進行交叉驗證,或將案例指派給隨機群組。
將數據分成群組,然後處理來自特定群組的數據。
將案例隨機指派給不同的群組之後,您可能需要修改僅與一個群組相關聯的功能。
取樣。
您可以擷取數據百分比、套用隨機取樣,或選擇用來平衡數據集的數據行,並對其值執行分層取樣。
建立較小的數據集以進行測試。
如果您有大量數據,您可能只想在設定管線時使用前 n 個數據列,然後在建置模型時切換到使用完整數據集。 您也可以使用取樣來建立較小的數據集,以用於開發。
設定元件
此元件支援下列方法,可將您的資料分割成分割區或進行取樣。 先選擇 方法,然後設定方法所需的其他選項。
- 前端
- 取樣
- 指派給折疊
- 挑選折疊
從數據集取得 TOP N 個數據列
使用此模式只取得前 n 個數據 列。 如果您想要在少量數據列上測試管線,而且您不需要以任何方式平衡或取樣數據,這個選項會很有用。
將分割區和 範例 元件新增至介面中的管線,然後連接數據集。
數據分割或範例模式:將此選項設定為 Head。
要選取的數據列數目:輸入要傳回的數據列數目。
數據列數目必須是非負整數。 如果選取的數據列數目大於數據集中的數據列數目,則會傳回整個數據集。
提交管線。
元件會輸出只包含指定數據列數目的單一數據集。 數據列一律會從數據集頂端讀取。
建立數據的範例
此選項支援簡單的隨機取樣或分層隨機取樣。 如果您想要建立較小的代表性範例數據集進行測試,這會很有用。
將分割 區和範例 元件新增至管線,並連接數據集。
數據分割或範例模式:將此選項設定為 [取樣]。
取樣率:輸入介於 0 到 1 之間的值。 這個值會指定來源數據集的數據列百分比,這些數據列應該包含在輸出數據集中。
例如,如果您只想要原始數據集的一半,請輸入
0.5
來指出取樣率為 50%。根據指定的比例,輸入數據集的數據列會隨機顯示,並選擇性地放在輸出數據集中。
取樣的隨機種子:選擇性地輸入要當做種子值的整數。
如果您想要每次以相同方式分割數據列,這個選項就很重要。 默認值為 0,表示會根據系統時鐘產生起始種子。 每次執行管線時,這個值可能會導致稍微不同的結果。
分層分割進行取樣:如果數據集中的數據列在取樣之前會平均除以一些索引鍵數據行,請選取此選項。
針對 取樣的分層索引鍵數據行,選取分割數據集時要使用的單 一階層數據 行。 然後,數據集中的數據列會分割如下:
所有輸入數據列都會依指定階層數據行中的值分組(分層)。
每個群組內的數據列會隨機顯示。
每個群組都會選擇性地新增至輸出數據集,以符合指定的比率。
提交管線。
使用此選項時,元件會輸出包含數據代表性取樣的單一數據集。 數據集的其餘未取樣部分不會輸出。
將數據分割成分割區
當您想要將資料集分割成數據的子集時,請使用此選項。 當您想要建立用於交叉驗證的自定義折疊數,或將數據列分割成數個群組時,這個選項也很有用。
將分割 區和範例 元件新增至管線,並連接數據集。
針對 [ 分割區] 或 [範例模式],選取 [ 指派給折迭]。
在資料分割中使用取代:如果您想要將取樣的數據列放回數據列集區,以便重複使用,請選取此選項。 因此,相同的數據列可能會指派給數個折疊。
如果您未使用取代專案(預設選項),取樣的數據列不會放回數據列集區中,以便重複使用。 因此,每個數據列只能指派給一個折疊。
隨機分割:如果您想要將數據列隨機指派給折疊,請選取此選項。
如果您未選取此選項,則會將數據列指派給迴圈配置資源方法的折疊。
隨機種子:選擇性地輸入要當做種子值的整數。 如果您想要每次以相同方式分割數據列,這個選項就很重要。 否則,預設值 為 0 表示將使用隨機起始種子。
指定資料分割器方法:使用下列選項,指出您想要如何將資料分派給每個分割區:
平均分割:使用此選項,在每個分割區中放置相等的數據列數目。 若要指定輸出分割區的數目,請在 [指定折疊數以平均分割成方塊] 中輸入整數。
具有自定義比例的數據分割:使用此選項可將每個分割區的大小指定為逗號分隔清單。
例如,假設您想要建立三個分割區。 第一個數據分割將包含 50% 的數據。 其餘兩個分割區各包含 25% 的數據。 在 [ 以逗號 分隔的比例清單] 方塊中,輸入下列數位: .5、.25、.25。
所有分割區大小的總和必須加到 1。
如果您輸入最多 小於 1 的數位,則會建立額外的分割區來保存其餘的數據列。 例如,如果您輸入值 .2 和 .3,則會建立第三個分割區來保存其餘 50% 的所有數據列。
如果您輸入最多 1 的數位,當您執行管線時,就會引發錯誤。
分層分割:如果您想要分割時將數據列分層,然後選擇 階層數據行,請選取此選項。
提交管線。
使用此選項時,元件會輸出多個數據集。 數據集會根據您指定的規則進行分割。
使用預先定義數據分割中的數據
當您將數據集分割成多個分割區,而現在想要接著載入每個分割區以進行進一步分析或處理時,請使用此選項。
將分割 區和範例 元件新增至管線。
將元件連接到先前的 Partition 和 Sample 實例的輸出。 該實例必須使用 [ 指派給折迭 ] 選項來產生一些數據分割。
數據分割或範例模式:選取 [ 挑選折疊]。
指定要取樣的折疊:輸入其索引來選取要使用的分割區。 數據分割索引是以 1 為基礎。 例如,如果您將數據集分割成三個部分,分割區會有索引 1、2 和 3。
如果您輸入無效的索引值,則會引發設計時間錯誤:「錯誤 0018:數據集包含無效的數據」。
除了依折迭將數據集分組之外,您還可以將數據集分成兩個群組:目標折疊,以及其他所有專案。 若要這樣做,請輸入單一折疊的索引,然後選取選取之折疊的 [挑選補碼] 選項,以取得指定之折疊中除數據外的所有專案。
如果您使用多個分割區,則必須新增更多 數據分割實例和範例 元件來處理每個分割區。
例如,第二列的 Partition 和 Sample 元件會設定為 [指派給 折疊],而第三列中的元件會設定為 [挑選折疊]。
提交管線。
使用此選項時,元件會輸出只包含指派給該折疊之數據列的單一數據集。
注意
您無法直接檢視折疊指定。 它們只存在於元數據中。