多元線性回歸
具有多個特徵的線性回歸
如果我們有一個具有多個特徵的連續標記數據,我們可以使用多元線性回歸來建立機器學習模型。
標籤是數據的答案,值是連續的。以下面的房價示例,標籤是價格,特徵是大小,卧室數量,樓層數和房齡。

注意,數據只有一個真正的機器學習模型。不幸的是,我們不知道真正的機器學習模型是什麼。為了找到真正的模型,我們做了一個假設,調整它直到我們可以檢查它是否足夠接近真實的模型或者它是錯誤的(根據準確率,精度,F1分數等標準)。如果這個假設是錯的,那麼再做一個調整。
在選擇機器學習模型時,一定要注意假設。
根據以上房價的例子,假設數據的真實模型是線性的,那麼我們可以嘗試使用線性回歸及其假設函數。
假設函數
在多元線性回歸中,具有多個變量x和參數θ的假設函數如下所示。

以下示例顯示了如何使用假設函數。

在調整假設時,我們的模型學習參數θ,這使得假設函數h(x)成為「好的」預測器。一個好的預測器意味着假設對真實模型足夠接近。越接近越好。
但是,我們如何知道假設h(x)是否足夠好?答案是使用成本函數,我們定義該成本函數來衡量假設的誤差。
成本函數
假設函數 h(x) 的準確性可以使用成本函數來度量。
在回歸問題中,最常用的代價函數是均方誤差(MSE)。公式定義如下。

注意,正方形(參見上面的粉色矩形)是必要的,因為誤差值總是正的。此外,平方誤差函數是可微的,因此我們可以對其應用梯度下降法。
從本質上講,成本函數J(θ)是每個數據的平方誤差的總和。誤差越大,假設的性能越差。因此,我們要減少誤差,即最小化J(θ)。
梯度下降算法
梯度下降算法是最小化成本函數的常用方法。一旦找到最小誤差,機器學習模型同時學習最佳參數θ。因此,我們可能會找到好的預測器,一個具有最佳參數θ的假設函數,它可以產生最小誤差。
請注意,我們在這裡使用「可能」這個詞,因為具有最佳參數θ的假設可能會遇到問題,即所謂的「過度擬合」。
- 偽代碼
在每次迭代時, 需要同時更新 參數θ 。

為了更好的理解梯度下降算法,我們將如下圖所示的步驟可視化。
在圖(a)中,起點是橙色(θj J(θj))。計算其偏微分法,然後乘以一個學習率α和更新後的結果是綠色(θj J(θj)),如圖(b)所示。

- 學習率α
我們使用學習率α來控制我們在一次迭代中更新的程度。如果α太小,則會使梯度下降更新太慢,而更新可能會超過最小值並且不會收斂。
請注意,我們在開始時設置固定學習率α,因為梯度下降將緩慢且自動更新,直到達到最小值。因此,不需要在每次迭代時自己改變學習率α。

在這一部分,我們提供兩種技能,即特徵縮放和學習率,以確保梯度下降能夠很好地發揮作用。
特徵縮放,也稱為歸一化特徵。由於每個特徵的不同範圍,contours可能非常粗糙,這將使梯度下降極度緩慢,見圖(a)。在特徵縮放之後,結果顯示在圖(b)中。
值得確保的是,這些特性在相似的範圍內,並且大致在[- 1,1]範圍內。

縮放特徵的一種方法是均值歸一化,公式為

學習率α -如何選擇α的值?建議試試……,0.001,0.003,…,0.01,0.03,…,0.1,0.3,…,1,……
正規方程法
在求解線性回歸問題時,正規方程法非常有用。
舉一個簡單的例子 – 單變量的線性回歸。在下圖中,有三個線性方程,因為我們有三個數據。

在線性代數中,線性系統可以表示為矩陣方程。

如果您熟悉線性代數中的偽逆的概念,則可以通過以下公式獲得參數θ:

在多元線性回歸中,公式與上述相同。但是,如果正規方程是不可逆的怎麼辦?然後考慮刪除冗餘特徵或使用正則化。
總之,使用正規方程的優點是
- 無需選擇學習率α
- 無需迭代
- 特徵縮放不是必需的
請注意,如果特徵的數量非常大,則「正規方程」的工作速度非常慢,而「梯度下降」算法仍能正常工作。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/268188.html
微信掃一掃
支付寶掃一掃