標籤:

機器學習-線性回歸

給定條件:

  • 數據集 left{ left( x^{(1)},y^{(1)} 
ight),…,left( x^{(m)},y^{(m)} 
ight) 
ight}
  • x^{(i)} (特徵向量)是 n 維向量 x^{(i)}=left( x_{1}^{(i)},…,x_{n}^{(i)} 
ight)
  • y^{(i)} 是一個標量

假設函數: 	ilde{y}^{(i)}=w_{1}x_{1}^{(i)}+w_{2}x_{2}^{(i)}+…+w_{n}x_{n}^{(i)}+b

目標函數: Jleft( W,b 
ight)=frac{1}{m}sum_{i=1}^{m}{left( 	ilde{y}^{(i)}-y^{(i)} 
ight)^{2}}

優化方法:梯度下降法


Step1:用0或者小的隨機值來初始化 Wb

Step2:計算出初始化下的 Wb 對應的 y 值,記作 	ilde{Y}=X·W+b ,其中 	ilde{Y} 的緯度為 m*1X 的緯度為 m*n , W 的緯度為 n*1

Step3:用均方誤差計算訓練集上的損失: Jleft( W,b 
ight)=frac{1}{m}sum_{i=1}^{m}{left( 	ilde{y}^{(i)}-y^{(i)} 
ight)^{2}}

Step4:計算每個參數的梯度,為了便於計算,令 b=w_{0}x_{0} ,其中 x_{0}=1 ,則單個權重值的梯 度為frac{?J}{?w_{j}}=frac{2}{m}sum_{i=1}^{m}{left( 	ilde{y}^{(i)}-y^{(i)} 
ight)^{}}x_{j}^{(i)};所有權重值的梯度為 ▽_{W}J=frac{2}{m}X^{T}left( 	ilde{Y}-Y 
ight) ;

Step5:更新權重值和向量 W_{new}=W_{old}-eta ▽_{W}J ,其中, eta 表示學習率。

在達到指定訓練次數或參數收斂前,重複Step2~Step5。


推薦閱讀:

初探機器學習檢測 PHP Webshell
機器學習篇-數據劃分
《集異璧》作者侯世達瘋狂吐槽谷歌翻譯,AI讓譯者失業?還早著呢!
SRCNN 論文閱讀
自動調參、ROC——2017.03.13

TAG:機器學習 |