Fisher 線性判別分析

重要

Machine Learning 工作室 (傳統) 的支援將於 2024 年 8 月 31 日結束。 建議您在該日期之前轉換成 Azure Machine Learning

自 2021 年 12 月 1 日起,您將無法建立新的 Machine Learning 工作室 (傳統) 資源。 在 2024 年 8 月 31 日之前,您可以繼續使用現有的 Machine Learning 工作室 (傳統) 資源。

ML 工作室 (傳統) 文件即將淘汰,未來將不再更新。

識別可將資料分成不同類別之最佳群組的功能變數線性組合

類別: 特徵選取模組

注意

適用于僅限機器學習 Studio (傳統)

Azure Machine Learning 設計工具中提供類似的拖放模組。

模組概觀

本文說明如何在機器學習 Studio (傳統) 中使用費雪線性判別分析模組,以建立新的功能資料集,以捕捉最能分隔兩個或多個類別的功能組合。

這個方法通常用於縮減維度,因為它會將一組特徵投射至一個較小的特徵空間,同時保留可用來區別各組的資訊。 這不僅可以降低給定分類工作的運算成本,還有助於協助防止過度配適。

若要產生分數,請提供標籤資料行和數值特徵資料行的集合做為輸入。 此演算法會決定最佳的輸入資料行組合,此組合以線性方式區隔每一組資料,同時將各組內的距離縮到最餖。 模組會傳回包含精簡、轉換功能的資料集,以及您可以儲存並套用至另一個資料集的轉換。

深入瞭解線性判別分析

線性判別分析類似于分析變異 (方程式) ,因為它們是藉由比較變數的方式來運作。 就像 ANOVA 一樣,它依賴下列假設:

  • 預測量彼此無關
  • 每個樣本的條件機率密度函式通常會分散
  • 各組之間的變異數類似

線性判別分析有時會縮寫為 LDA,但這很容易與 潛在的狄氏配置混淆。 這些技術完全不同,因此在本檔中,我們會盡可能使用完整名稱。

如何設定線性判別分析

  1. 新增您的輸入資料集,並檢查輸入資料是否符合下列需求:

    • 您的資料應該盡可能完成。 系統會忽略具有任何遺漏值的資料列。
    • 值應為一般分佈。 使用 費雪線性判別分析之前,請先檢查極端值的資料,或測試分佈。
    • 您的預測指標應該少於範例。
    • 移除任何非數值資料行。 此演算法會檢查輸入中包含的 所有 有效數值資料行,並在包含不正確資料行時傳回錯誤。 如果您需要排除任何數值資料行,請先 在資料集模組中加入選取的資料行 ,再 費雪線性判別分析,以建立只包含您想要分析之資料行的視圖。 您稍後可以使用 [新增資料 ] 重新加入資料行。 保留原始的資料列順序。
  2. 連線費雪線性判別分析模組的輸入資料。

  3. 針對 [ 類別標籤] 資料行,按一下 [ 啟動資料行選取器 ],然後選擇一個標籤

  4. 針對 [ 功能擷取器的數目],輸入您想要的資料行數目作為結果。

    例如,如果您的資料集包含八個數值特徵資料行,您可以鍵入 3 將它們折迭為只有三個數據行的新精簡功能空間。

    請務必瞭解,輸出資料行不會完全對應至輸入資料行,而是表示輸入資料行中值的精簡轉換。

    如果您使用0作為 特徵擷取器數目的值,並使用 n 個數據行做為輸入,則會傳回 n 個特徵擷取器,其中包含代表 n 維度功能空間的新值。

  5. 執行實驗。

結果

演算法會決定輸入資料行中的值組合,這些值會以線性方式分隔每個資料群組,同時將每個群組內的距離降到最低,並建立兩個輸出:

  • 轉換的功能。 包含指定數目之功能解壓縮程式資料行的資料集,名為 col1col2col3等等。 輸出也包含類別或標籤變數。

    您可以使用這組精簡的值來定型模型。

  • 費雪線性判別分析轉換。 您可以儲存然後套用至具有相同架構之資料集的轉換。 如果您要分析多個相同類型的資料集,而且想要將相同的功能減少套用到每個資料集,這會很有用。 您套用它的資料集應該具有相同的架構。

範例

如需機器學習中特徵選取的範例,請參閱 Azure AI 資源庫

技術說明

本節包含實作詳細資料、提示和常見問題集的解答。

使用提示

  • 這個方法只適用於連續變數,而不是類別或序數變數。

  • 計算轉換矩陣時會忽略含有遺漏值的資料列。

  • 如果您從實驗儲存轉換,從原始實驗計算的轉換會重新套用至每一組新的資料,而且不會重新計算。 因此,如果您想要計算每個資料集的新功能集,請針對每個資料集使用新的 費雪線性判別分析 實例。

實作詳細資料

特徵的資料集會使用 特徵向量進行轉換。 輸入資料集的特徵向量是根據提供的特徵資料行(也稱為辨識 矩陣)來計算。

模組的轉換輸出包含這些特徵向量,可加以套用以轉換具有相同架構的另一個資料集。

如需如何計算特徵值的詳細資訊,請參閱這份檔 (PDF) : 適用于分類的 Eigenvector 型功能解壓縮。 Puuronen Tymbal 等。

預期的輸入

名稱 類型 說明
資料集 資料表 輸入資料集

模組參數

名稱 類型 範圍 選擇性 預設 描述
分類標籤資料行 ColumnSelection 必要 選取包含類別分類標籤的資料行
功能擷取器的數目 整數 >=0 必要 0 若要使用的功能擷取器的數目。 如果是零,則所有的功能擷取器會使用

輸出

名稱 類型 說明
已轉換的特徵 資料表 費雪線性判別分析功能已轉換為 eigenvector 空間
費雪線性判別方法分析轉換 ITransform 介面 費雪線性判別方法分析的轉換

例外狀況

例外狀況 描述
錯誤 0001 如果找不到資料集的一或多個指定的資料行,就會發生例外狀況。
錯誤 0003 如果一或多個輸入為 Null 或空白,就會發生例外狀況。
錯誤 0017 如果一或多個指定的資料行具有目前模組不支援的類型,就會發生例外狀況。

如需 Studio (傳統) 模組特定的錯誤清單,請參閱機器學習錯誤碼

如需 API 例外狀況的清單,請參閱機器學習 REST API 錯誤碼

另請參閱

特徵選取
以篩選為基礎的特徵選取
主體元件分析