
介紹
定義:線性回歸在假設特證滿足線性關系,根據給定的訓練數據訓練一個模型,并用此模型進行預測。
(小萌A:)什么意思?
簡單來說,我們把每個數據樣本比作一個點,對于這堆點,我們試著用一條直線去擬合它們,盡可能的使得這些點均勻的分布在直線的兩邊,像這樣:

我們擬合出一條最優(yōu)的直線后,當有新的數據出現(xiàn)時,我們可以通過這條直線來預測對應的y值,就是這個意思。
(小萌B:)怎么擬合呢?
首先,我們有一個函數模型:

對于我們的訓練數據:

便于計算機的計算,我們將我們的樣本寫成舉證的形式:

——————————————
(小萌B突然發(fā)問:)為什么每行都會多出來一個1?
請看到我們的上上上一張圖,W0 就是我們的函數模型的截距,它的系數始終為1。
——————————————
然后我們通過已知的Y值和X值來找到這個神秘的W值,我們的函數模型每次都完美的擬合所有的數據是不可能的,這時候我們引入損失函數cost(拿最小二乘法來說):

(小萌D:)然后呢?
當我們的矩陣滿秩時求解,直接對其求導:

當矩陣不滿秩時,采用梯度下降法:? ?
梯度下降法

原理:將函數比作一座山,我們站在某個山坡上,往四周看,從哪個方向向下走一小步,能夠下降的最快;
1、首先對θ賦值,這個值可以是隨機的,也可以讓θ是一個全零的向量。
2、改變θ的值,使得J(θ)按梯度下降的方向進行減少。

對損失函數求導可以得到:

不斷的迭代“這個步驟”,最后當我們導數幾乎為零是,我們就求得了這個W值。
但是我們需要知道的是,梯度下降算法是一種求局部最優(yōu)解的方法
Tips:
1)為了更好更迅速的進行梯度下降,我們需要對數據進行歸一化或者標準化,使得數據分布在某一個范圍內(比如將值從1-100000的數據歸一化到0-1的范圍內)
2)對于線性回歸模型而言,符合高斯分布的數據可以獲得更好的準確率,所以適當的時候我們需要對數據進行數據處理,讓其盡可能的滿足高斯分布
這些會在后續(xù)的章節(jié)里面逐一介紹
文章內容若有不足,歡迎批評指正