線性迴歸

本單元將介紹線性迴歸的概念。

線性迴歸是一種統計技巧,可用來找出變數之間的關係。在 ML 情境中,線性迴歸會找出特徵標籤之間的關係。

舉例來說,假設我們想根據車輛重量,預測汽車的油耗表現 (以每加侖汽油可行駛的英里數表示),並且擁有下列資料集:

以 1000 為單位的英鎊 (功能) 每加侖英里 (標籤)
3.5 18
3.69 15
3.44 18
3.43 16
4.34 15
4.42 14
2.37 24

如果將這些點繪製成圖,就會得到下列圖表:

圖 1. 資料點顯示從左到右的下滑趨勢。

圖 1. 車輛重量 (以磅為單位) 與英里/加侖評分。車輛越重,每加侖汽油可行駛的里程數通常就會降低。

我們可以透過在點之間畫出最佳配適線,自行建立模型:

圖 2:資料點與代表模型的最佳配適線。

圖 2. 以上圖的資料繪製最佳配適線。

線性迴歸方程式

在代數術語中,模型的定義為 $ y = mx + b $,其中

  • $ y $ 是每加侖英哩數,也就是我們要預測的值。
  • $ m $ 是線條的斜率。
  • $ x $ 是磅,也就是輸入值。
  • $ b $ 是 y 截距。

在機器學習中,我們會以以下方式寫出線性迴歸模型的方程式:

$$ y' = b + w_1x_1 $$

其中:

  • $ y' $ 是預測標籤,也就是輸出內容。
  • $ b $ 是模型的偏差。偏差與直線代數方程中的 y 截距相同。在機器學習中,偏差有時會稱為 $ w_0 $。偏差是模型的參數,會在訓練期間計算。
  • $ w_1 $ 是特徵的權重。權重與直線代數方程中的斜率 $ m $ 相同。權重是模型的參數,會在訓練期間計算。
  • $ x_1 $ 是特徵,也就是輸入值。

在訓練期間,模型會計算權重和偏差,產生最佳模型。

圖 3. 方程式 y' = b + w1x1,每個元件都附註其用途。

圖 3. 線性模型的數學表示法。

在本例中,我們會根據所繪製的線條計算權重和偏差。偏差為 30 (線條與 y 軸的交點),權重為 -3.6 (線條的斜率)。模型會定義為 $ y' = 30 + (-3.6)(x_1) $,我們可以用來進行預測。舉例來說,使用這個模型,重量為 4,000 磅的汽車預測燃油效率為每加侖 15.6 英里。

圖 4. 與圖 2 相同的圖表,其中 (4, 15.6) 點已醒目顯示。

圖 4. 使用這個模型後,重達 4,000 磅的汽車預估油耗為每加侖 15.6 英里。

含有多項功能的模型

雖然本節範例只使用一項特徵 (車輛的重量),但更精密的模型可能會依賴多項特徵,每項特徵都有不同的權重 ($ w_1 $、$ w_2 $ 等)。舉例來說,如果模型需要五個功能,則寫法如下:

$ y' = b + w_1x_1 + w_2x_2 + w_3x_3 + w_4x_4 + w_5x_5 $

舉例來說,預測油耗的模型還可以使用下列功能:

  • 引擎排氣量
  • 加速性能
  • 圓柱數
  • 馬力

這個模型的寫法如下:

圖 5. 包含五個特徵的線性迴歸方程式。

圖 5:模型包含五個特徵,可預測汽車的每加侖油耗量評分。

透過繪製這些額外功能的圖表,我們可以看到這些功能與「每加侖英哩數」標籤之間也有線性關係:

圖 6. 排氣量以立方公分為單位,與英里/加侖繪製成圖表,顯示負向線性關係。

圖 6. 汽車的排氣量 (以立方公分為單位) 和英里/加侖評等。隨著汽車引擎變大,其每加侖汽油行駛里程評等通常會降低。

圖 7. 從零加速到每小時 60 英里的時間 (以秒為單位) 與每加侖英哩數的對照圖表,顯示出正向線性關係。

圖 7. 汽車的加速度和每加侖英里數評等。汽車加速時間越長,每加侖汽油行駛里程數通常就會增加。

圖 8:馬力與每加侖油耗的負線性關係圖表。

圖 8. 汽車的馬力和每加侖英里數評分。隨著汽車馬力的增加,每加侖汽油可行駛里程數通常會下降。

練習:檢查您的理解程度

訓練期間會更新線性迴歸方程式的哪些部分?
偏差和權重
在訓練期間,模型會更新偏差和權重。
預測結果
系統不會在訓練期間更新預測結果。
特徵值
特徵值是資料集的一部分,因此不會在訓練期間更新。