一個變量的線性迴歸問題【機器學習】

問題的引入

我們通過調查得出若干房子的面積大小與其價格的數據,給出一個房子面積的數據,對其房價進行預

問題分析

這個問題是典型的數據挖掘的問題,通過對數據的分析得出規律,然後利用規律對一些未知的數據的結果進行預測,又由於它只有房子面積大小這一個數據特徵,所以又叫做一個變量的線性迴歸問題,問題的解決模型如下圖:
在這裏插入圖片描述

問題的解決

根據數據的特徵,我們假設模型爲:
在這裏插入圖片描述
我們的目標是使得樣本數據離我們得出的模型越近越好,所以我們的目標是使得損失函數最小:
在這裏插入圖片描述
公式說明:其實這個公式與方差的定義非常相似,但前面加了一個1/2,原因是爲了方便求導。

最後我們的問題簡化爲:
在這裏插入圖片描述
接下來就是兩個參數的確定了,我們採用梯度下降的方法來對模型進行訓練。
回想高等數學求極小值的方法,通過對函數求導取極小值,梯度下降也是這個原理,整個過程是:

  1. 初始化兩個參數。
  2. 通過梯度下降更新兩個參數,更新的標準是使得損失函數的值變小。
  3. 滿足我們設定的條件則終止。

在這裏插入圖片描述
這裏需要注意的是,兩個參數的更新都是用的上一輪訓練得到的兩個參數。最後得到的效果應該是這樣的:
在這裏插入圖片描述

整體理解了這個模型以後,我們探討一下參數alpha的設置,這個參數是學習率,這個學習率一般很小0.001-0.1,爲什麼要對這個參數進行設置,已經他的幾何意義是什麼,首先我們看一下兩張圖:
學習率較大:
在這裏插入圖片描述
學習率較小:
在這裏插入圖片描述
從上面我們可以看出,在學習率大的時候,參數梯度下降的幅度很大,也就是說模型收斂得很快,但在接近極值點的時候可能錯過;而學習率小的時候參數下降的梯度較小,模型收斂的速度慢,但取得的結果一般比較好。基於兩種特點,我們可以選擇先選擇大學習率進行訓練,達到一定的迭代次數後動態減少學習率。

過程推導如下:
在這裏插入圖片描述
最後需要在程序實現的過程就是:
在這裏插入圖片描述
更多技術博客https://vilin.club/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章