使用分割資料列分割資料

本文說明如何使用 Azure Machine Learning Studio 分割資料模組中的 分割資料列 選項 (傳統) 。 當您需要分割用於定型和測試的資料集時(不論是隨機或依某些準則),此選項特別有用。

注意

適用于 : Machine Learning Studio (傳統)

此內容僅適用于 Studio (傳統) 。 Azure Machine Learning 設計工具中已新增類似的拖放模組。 若要深入瞭解 這兩個版本,請參閱這篇文章

分割資料列 選項支援隨機和分層分割。 例如,您可以指定70-30 分割,或使用您的目標變數平均表示在這兩個資料集中的10-90 分割。

如需機器學習服務實驗之資料分割的一般資訊,請參閱 分割資料 和分割區 和分割

分割資料 模組中的其他選項支援不同的資料分割方式:

將資料集分成兩個群組

  1. 將 [ 分割資料 ] 模組新增至您在 Studio (傳統) 中的實驗,然後連接您要分割的資料集。

  2. 針對 [分割 模式],選擇 [ 分割資料列]。

  3. 第一個輸出資料集中的資料列分數。 您可以使用此選項來決定要進入第一個 (左邊) 輸出的資料列數目。 所有其他資料列將會移至第二個 (右手) 輸出。

    比率代表傳送至第一個輸出資料集的資料列百分比,因此您必須輸入介於0和1之間的十進位數。

    例如,如果輸入的值為 0.75,則會以 75:25 的比率來分割資料集,亦即 75% 的資料列會傳送至第一個輸出資料集,而 25% 會傳送至第二個輸出資料集。

  4. 如果您想要將選取的資料隨機放入這兩個群組中,請選取 [ 隨機化分割 ] 選項。 這是建立定型和測試資料集時的慣用選項。

  5. 隨機種子:輸入非負整數值,以初始化要使用的實例的非虛擬亂數序列。 所有會產生隨機數字的模組中都使用此預設種子。

    指定種子會讓結果通常可重現。 如果您需要重複分割作業的結果,您應該指定亂數產生器的種子。 否則隨機種子會預設為 0,表示從系統時鐘取得初始種子值。 如此一來,每次執行分割時,資料分佈可能稍有不同。

  6. 分層分割:將此選項設定為 True ,以確定兩個輸出資料集包含 分層資料行 或分層索引鍵資料 中值的代表性樣本。

    使用分層取樣時,資料會分割,讓每個輸出資料集的每個目標值大致相同。 例如,您可能會想要確保定型和測試集大致上與結果相關,或與其他資料行(例如性別)相關。

  7. 執行實驗,或以滑鼠右鍵按一下模組,然後選取 [ 執行選取]。

範例

下列範例示範如何使用 分割資料列 模式執行簡單的分割。

分割成兩個相等的部分

分割資料 模組加入資料集之後,無需其他變更。 根據預設,此模組會將資料集分割成兩等分。 對於含有奇數個資料列的資料,第二個輸出會取得其餘部分。

分割成三分之二

假設您想要將資料集分割成兩個部分,其中第三個數據用於定型,另一個用於測試或其他分割。

若要這樣做,請加入 分割資料 模組,然後將 第一個輸出中 的資料列比例設為0.33。 第二個輸出包含其餘的三分之二。

若要將第二個輸出分割成相等的部分,請新增另一個 分割資料 模組實例,這次使用50-50 分割的預設值。

技術說明

本節包含對常見問題的執行詳細資料、秘訣和解答。

實作詳細資料

  • 此模組需要資料集至少包含兩個數據列;否則,就會引發錯誤。

  • 如果您使用此選項來指定需要的資料列數,指定的數字必須是正整數,而且數字必須小於資料集的資料列總數。

  • 所有百分比值都必須在0到1的範圍內。

  • 如果您指定的數位或百分比是小於1的浮點數,而且不使用百分比符號 (% ) ,則會將數位解釋為比例值。

分層取樣的其他需求

  • 分層資料行只能包含名義或類別資料。 如果資料行包含連續數值資料,則會引發錯誤訊息。

  • 具有太多唯一值的資料行不是階層式理想候選。 您可以事先嘗試折迭某些類別或群組值。

另請參閱

範例和分割資料分割和範例