主體元件分析
重要
Machine Learning 工作室 (傳統) 的支援將於 2024 年 8 月 31 日結束。 建議您在該日期之前轉換成 Azure Machine Learning。
自 2021 年 12 月 1 日起,您將無法建立新的 Machine Learning 工作室 (傳統) 資源。 在 2024 年 8 月 31 日之前,您可以繼續使用現有的 Machine Learning 工作室 (傳統) 資源。
ML 工作室 (傳統) 文件即將淘汰,未來將不再更新。
以精簡維度性計算一組功能以提升學習效率
類別: 資料轉換/取樣和分割
模組概觀
本文說明如何使用機器學習 Studio (傳統) 中的「主體元件分析」模組,來降低定型資料的維度。 此模組會分析您的資料並建立縮減的特徵集,以捕捉資料集內包含的所有資訊,但功能較少。
此模組也會建立可套用至新資料的轉換,以達到類似的維度性縮減和特徵壓縮,而不需要額外的定型。
進一步了解主成份分析
主體元件分析 (PCA) 是機器學習中常用的技巧。 它依賴許多類型的向量空間資料都可壓縮,而壓縮可透過取樣來達到最高效率。
PCA 的額外優點是改善了資料視覺效果,以及學習演算法所使用的資源優化。
機器學習 Studio (傳統) 中的主體元件分析模組會在所提供的資料集中採用一組功能資料行,並建立具有較低維度的特徵空間投射。 此演算法會使用隨機技術來識別可在完整功能矩陣中捕捉大部分資訊的功能子空間。 因此,轉換的資料矩陣會捕捉原始資料中的變異數,同時減少雜訊的影響,並將過度學習的風險降至最低。
如需有關主體元件分析 (PCA 的一般資訊) 請參閱這 篇維琪百科文章。 如需此課程模組中所使用 PCA 方法的詳細資訊,請參閱下列文章:
尋找具有隨機性的結構:用來建立近似矩陣分解的概率演算法。 Halko、Martinsson 和 Tropp,2010。
在大規模 PCA 中結合結構化和非結構化隨機性將結構化和非結構化隨機性合併在大規模的 PCA 中。 Karampatziakis 和 Mineiro,2013。
如何設定主體元件分析
將「 主體元件分析 」模組新增至您的實驗。 您可以在 [ 資料轉換] 下的 [ 調整規模和縮減 ] 類別中找到它。
連線您想要轉換的資料集,並選擇要分析的特徵資料行。
如果尚未清除哪些資料行是功能,哪些是標籤,建議您使用 [ 編輯中繼資料 ] 模組,事先標記這些資料行。
要縮減至的維度數目:在最終輸出中輸入所需的資料行數目。 每個資料行都代表在輸入資料行中捕捉部分資訊的維度。
例如,如果源資料集有八個數據行,而您輸入
3
了,則會傳回三個新的資料行來捕捉八個所選資料行的資訊。 這些資料行的名稱為Col1
、Col2
和Col3
。 這些資料行不會直接對應至來源資料行;相反地,資料行包含原始資料行1-8 所描述之功能空間的近似值。提示
當縮減的維度數目遠小於原始維度時,演算法會以最佳方式運作。
將密集資料集正規化為零平均數:如果資料集是密集的,請選取此選項,這表示它包含幾個遺漏值。 如果選取此選項,此模組會將資料行中的值正規化為任何其他處理之前的平均零。
若為稀疏資料集,則不應選取此選項。 如果偵測到稀疏資料集,則會覆寫參數。
執行實驗。
結果
此模組會輸出一組縮減的資料行,供您用來建立模型。 您可以將輸出儲存為新的資料集,或將其用於您的實驗中。
(選擇性)您可以將分析程式儲存為儲存的轉換,以套用至使用 [套用 轉換] 的另一個資料集。
您套用轉換的資料集必須與原始資料集具有相同的架構。
範例
如需如何在機器學習中使用主體元件分析的範例,請參閱 Azure AI 資源庫:
群集:尋找類似的公司:使用主體元件分析,將值的數目從文字挖掘減少為可管理的功能數目。
雖然此範例 PCA 是使用自訂 R 腳本套用的,但它會說明如何通常使用 PCA。
技術說明
計算較低維度的元件有兩個階段。
- 第一個是要建立可捕獲矩陣動作的低維度子空間。
- 第二個是將矩陣限制在子空間,然後計算縮減矩陣的標準分解。
預期的輸入
名稱 | 類型 | 說明 |
---|---|---|
資料集 | 資料表 | 要縮減維度的資料集 |
模組參數
名稱 | 類型 | 範圍 | 選用 | 描述 | 預設 |
---|---|---|---|---|---|
選取的資料行 | ColumnSelection | 必要 | 要套用 PCA 選定資料行 | ||
要縮減到的維度數目 | 整數 | >=1 | 必要 | 縮減資料集中所需的維度數目 | |
將密集資料集正規化到零平均值 | Boolean | 必要 | true | 指出輸入資料行是否為針對密集資料集正規化 (忽略稀疏資料參數) 的平均值 |
輸出
名稱 | 類型 | 說明 |
---|---|---|
結果資料集 | 資料表 | 已縮減維度的資料集 |
PCA 轉換 | ITransform 介面 | 套用至資料集時會得到維度縮減之新資料集的轉換 |
例外狀況
例外狀況 | 描述 |
---|---|
錯誤 0001 | 如果找不到資料集的一或多個指定的資料行,就會發生例外狀況。 |
錯誤 0003 | 如果一或多個輸入為 Null 或空白,就會發生例外狀況。 |
錯誤 0004 | 如果參數小於或等於特定值,就會發生例外狀況。 |
如需 Studio (傳統) 模組特定的錯誤清單,請參閱機器學習錯誤碼。
如需 API 例外狀況的清單,請參閱機器學習 REST API 錯誤碼。