群組類別值
重要
Machine Learning 工作室 (傳統) 的支援將於 2024 年 8 月 31 日結束。 建議您在該日期之前轉換成 Azure Machine Learning。
自 2021 年 12 月 1 日起,您將無法建立新的 Machine Learning 工作室 (傳統) 資源。 在 2024 年 8 月 31 日之前,您可以繼續使用現有的 Machine Learning 工作室 (傳統) 資源。
ML 工作室 (傳統) 文件即將淘汰,未來將不再更新。
將來自多個類別的資料分組為新類別
類別: 資料轉換/操作
模組概觀
本文描述如何使用機器學習 Studio (傳統) 中的 [群組類別值] 模組,建立就地查閱資料表。
分組類別值的一般用途是將多個字串值合併成一個新的層級。 例如,您可以將區域中的個別郵遞區號指派給單一區域程式碼,或在一個類別目錄下分組多個產品。
若要使用此模組,請輸入您想要使用的查閱值,並將現有的值對應至取代值。 您只能為類別資料行建立群組,而不能為指定為標籤或特徵的數數值型別或資料行建立群組。
未明確對應至新層級的任何資料行值都會指派給預設層級。 例如,如果您未對應所有的個別郵遞區號,則會將其分組為未對應值的層級,您可能會將其命名為 未知。
注意
最多可以建立20個新層級,包括預設層級。 如果您需要更多的值,或需要動態定義對應,建議您在 [ 執行 R 腳本 ] 模組中使用自訂 R 腳本。 或者,在Apply SQL 轉換模組中使用 SQL 語句。
如何使用群組類別值
建議您事先準備現有值的清單和新的類別。 針對每個類別目錄,您應該準備新的分類名稱,以及要包含在類別目錄中的值清單(以逗號分隔)。
將 [ 群組類別值 ] 模組新增至您的實驗。 您可以在 [ 資料轉換]、[ 操作] 下找到此模組。
連線具有您要轉換之值的資料集。
在群組類別值的 [屬性] 窗格中,使用 [資料行選取器] 選擇要減少層級的資料行。
建議您按一下 [ 開始 日期] 和 [ 不啟動任何資料行 ],然後依名稱加入資料行。 否則,可能會將太多資料行新增為候選項,因而導致錯誤。
此資料行必須是類別資料行。 如果不是,請將 編輯中繼資料 加入上游,然後變更資料行類型。
請務必從輸入中移除不應套用字串取代的任何資料行。
針對 [ 輸出模式],指出您想要只輸出新的層級,或附加變更來查看原始資料行,並以並存的方式取代。
預設值 僅限結果只會顯示新的值。 就地選項會將現有的資料行值取代為新的層級。
針對 [ 預設層級名稱],輸入要用來取代所有未明確對應之值的字串值。 您可以使用「未知」或「預設」之類的內容。
注意
此預設層級值會套用至所有無法對應的值。 如果您不小心包含您不想要對應的資料行,此值會套用至資料行中的所有值。 因此,在處理之前,請先檢查資料行選取是否正確。
在 [ 新的層級數目] 中,輸入一個數位來指出 (層級) 的新類別總數,包括未對應值的預設層級。
在 [ 新層級1的名稱] 中,為第一個類別提供新的組名。
在緊接在下方的文字方塊中, 要對應至新層級1的舊層級的逗號分隔清單,輸入或貼上要對應至新層級的所有值的詳盡清單。 不允許使用萬用字元和正則運算式。
繼續輸入新的層級名稱,然後輸入或貼上應對應至新層級的值。
建議您在工作時,將值清單儲存在個別的檔案中。 如果您變更層級數目,您先前輸入的任何字串都會被移除,而且必須重新開始。
但是,如果您要編輯先前儲存的模組,您可以還原成原始設定。
執行實驗。
結果
若要查看結果,請以滑鼠右鍵按一下 [ 群組類別值 ] 模組,選取 [ 結果資料集],然後按一下 [ 視覺化]。
範例
如需機器學習服務的範例,請參閱 Azure AI 資源庫。
您也可以自行嘗試此課程模組,方法是使用小型資料集搭配一些可輕鬆分組的字串變數,例如機器學習 Studio (傳統) 中提供的汽車價格資料集。
讓我們假設您想要依引擎大小將汽車價格資料集中的車輛分組(使用圓柱的數目)。 除了許多不同的引擎大小之外,您還會建立新的層級:「大」、「小型」和「其他」,如下所示:
- 大型引擎:六張圓柱或更大
- 小型引擎:兩個或四個圓柱
- 其他:任何其他
- 在 [資料集] 模組中加入 [ 選取資料行 ],然後只
num-of-cylinders
選取資料行。 - 加入 [ 編輯中繼資料 ] 模組,然後將資料行變更
num-of-cylinders
為 類別。 - 新增 [ 群組類別值 ] 模組,並連接已修改的資料集。
- 針對 [ 預設層級名稱],輸入
other
。 您不需要提供此層級的值。 - 在 [ 新層級1的名稱] 中,輸入
big
。 在要對應至層級1的舊層級清單中,貼six, eight, twelve
上。 - 在 [ 新層級2的名稱] 中,輸入
small
。 針對對應的值,貼two, four
上。 - 執行實驗。
- 當您將結果 視覺化 時,您會發現原始資料集有一些您未考慮的奇數引擎大小,例如
five
和three
。 所有這類專案都會對應到other
層級。
技術說明
本節包含實作詳細資料、提示和常見問題集的解答。
您可能會遇到錯誤訊息:「名稱為 " < columnname > " 的資料行不在允許的類別中」。
此訊息表示您所選取的資料行不是類別資料行。 您可以使用 [編輯中繼資料] 將資料行標示為
Categorical
,或選取包含適當類別值的其他資料行。
預期的輸入
名稱 | 類型 | 說明 |
---|---|---|
資料集 | 資料表 | 待分組的資料 |
模組參數
名稱 | 範圍 | 類型 | 預設 | 描述 |
---|---|---|---|---|
選取的資料行 | 任意 | ColumnSelection | CategoricalAll | 選取要分組的資料行 |
輸出模式 | 任意 | OutputTo | ResultOnly | 指定如何輸出類別標籤 |
預設層級名稱 | 任意 | String | 指出沒有相符的對應時要使用的預設層級 | |
新的層級數目 | List | 群組數目 | 指定值已分組之後的層級數目,包括預設層級。 |
輸出
名稱 | 類型 | 說明 |
---|---|---|
結果資料集 | 資料表 | 已分組的資料 |