線性回歸元件
本文說明 Azure 機器學習 設計工具中的元件。
使用此元件建立用於管線的線性回歸模型。 線性回歸嘗試建立一個或多個獨立變數與數值結果或相依變數之間的線性關聯性。
您可以使用此元件來定義線性回歸方法,然後使用加上標籤的數據集來定型模型。 然後,定型的模型可以用來進行預測。
關於線性回歸
線性回歸是常見的統計方法,已在機器學習中採用,並透過許多新的方法來調整線條和測量誤差。 簡單地說,回歸是指數值目標的預測。 當您想要基本預測工作的簡單模型時,線性回歸仍然是不錯的選擇。 線性回歸也傾向於在缺乏複雜性的高維度、疏鬆數據集上運作良好。
除了線性回歸之外,Azure 機器學習 還支援各種回歸模型。 不過,「回歸」一詞可以鬆散解譯,而且不支援在其他工具中提供的某種回歸類型。
傳統回歸問題涉及單一獨立變數和相依變數。 這稱為 簡單回歸。 此元件支援簡單的回歸。
多重線性回歸 牽涉到兩個以上的獨立變數,這些變數會參與單一相依變數。 使用多個輸入來預測單一數值結果的問題也稱為 多重變數線性回歸。
線性回歸元件可以解決這些問題,其他大部分的回歸元件也可以解決。
多重標籤回歸 是預測單一模型中多個相依變數的工作。 例如,在多標籤羅吉斯回歸中,可以將範例指派給多個不同的標籤。 (這與預測單一類別變數內多個層級的工作不同。
Azure 機器學習 不支援這種類型的回歸。 若要預測多個變數,請為每個您想要預測的輸出建立個別學習模組。
多年來,統計人員一直在開發越來越先進的回歸方法。 即使線性回歸也是如此。 此元件支援兩種方法來測量錯誤並調整回歸線:一般最小平方方法和梯度下降。
梯度下降 是一種方法,可將模型定型程式每個步驟的錯誤量降到最低。 梯度下降有許多變化,其各種學習問題的優化已被廣泛研究。 如果您選擇 [解決方案] 方法的此選項,您可以設定各種參數來控制步驟大小、學習速率等等。 此選項也支援使用整合式參數掃掠。
一般最小平方 是線性回歸中最常用的技術之一。 例如,最小平方是用於 Microsoft Excel 之 Analysis Toolpak 中的方法。
普通最小平方是指損失函式,它會計算實際值與預測線之差距的平方和以求出誤差,並藉由將平方誤差最小化來配適模型。 此方法會假設輸入與相依變數之間有很大的線性關聯性。
設定線性回歸
此元件支援兩種方法來調整回歸模型,並使用不同的選項:
-
對於小型數據集,最好選取一般最小平方。 這應該會提供與 Excel 類似的結果。
-
對於更複雜的模型而言,梯度下降是較佳的損失函式,或是給定變數數目的定型數據太少。
使用一般最小平方建立回歸模型
將 線性回歸模型 元件新增至設計工具中的管線。
您可以在 機器學習 類別中找到此元件。 展開 [初始化模型]、展開 [回歸],然後將線性回歸模型元件拖曳至您的管線。
在 [屬性] 窗格中的 [方案方法] 下拉式清單中,選取 [一般最小平方]。 此選項會指定用來尋找回歸線的計算方法。
在 L2 正規化權數中,輸入做為 L2 正規化權數的值。 建議您使用非零值,以避免過度學習。
若要深入了解正規化如何影響模型調整,請參閱這篇文章:適用於 機器學習 的 L1 和 L2 正規化
如果您想要檢視截距的字詞,請選取 [包含攔截字詞] 選項。
如果您不需要檢閱回歸公式,請取消選取此選項。
針對 隨機數種子,您可以選擇性地輸入值來植入模型所使用的隨機數產生器。
如果您想要在相同管線的不同執行之間維護相同的結果,使用種子值會很有用。 否則,預設值為使用來自系統時鐘的值。
將 定型模型 元件新增至管線,並連接標示的數據集。
提交管線。
一般最小平方模型的結果
完成定型之後:
- 若要進行預測,請將定型的模型連接到 評分模型 元件,以及新值的數據集。
使用在線漸層下降建立回歸模型
將 線性回歸模型 元件新增至設計工具中的管線。
您可以在 機器學習 類別中找到此元件。 展開 [初始化模型]、展開 [回歸],然後將線性回歸模型元件拖曳至您的管線
在 [屬性] 窗格的 [解決方案方法] 下拉式清單中,選擇 [在線漸層下降] 作為用來尋找回歸線的計算方法。
針對 [建立定型器] 模式,指出您是否要使用預先定義的參數集來定型模型,或是想要使用參數掃掠來優化模型。
單一參數:如果您知道如何設定線性回歸網路,您可以提供一組特定的值作為自變數。
參數範圍:如果您不確定最佳參數,而且想要執行參數掃掠,請選取此選項。 選取要逐一查看的值範圍,而 微調模型超參數 會逐一查看您提供之設定的所有可能組合,以判斷產生最佳結果的超參數。
針對 學習速率,指定隨機漸層下降優化器的初始學習速率。
針對 [定型 Epoch 數目],輸入值,指出演算法應該逐一查看範例的次數。 對於具有少量範例的數據集,此數目應該很大,才能達到聚合。
正規化特徵:如果您已經將用來定型模型的數值數據正規化,您可以取消選取此選項。 根據預設,元件會將所有數值輸入正規化為介於 0 到 1 之間的範圍。
注意
請記得將相同的正規化方法套用至用於評分的新數據。
在 L2 正規化權數中,輸入做為 L2 正規化權數的值。 建議您使用非零值,以避免過度學習。
若要深入了解正規化如何影響模型調整,請參閱這篇文章:機器學習 的 L1 和 L2 正規化
如果您想要在反覆項目進行時減少學習速率,請選取 [降低學習率] 選項。
針對 隨機數種子,您可以選擇性地輸入值來植入模型所使用的隨機數產生器。 如果您想要在相同管線的不同執行之間維護相同的結果,使用種子值會很有用。
定型模型:
如果您將 [建立定型器模式] 設定為 [單一參數],請連接已標記的數據集和定型模型元件。
如果您將 [建立定型器模式] 設定為 [參數範圍],請使用 [微調模型超參數] 連接已標記的數據集並定型模型。
提交管線。
在線梯度下降的結果
完成定型之後:
- 若要進行預測,請將定型的模型連接到 評分模型 元件,以及新的輸入數據。