日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

机器学习入门系列一(关键词:单变量线性回归,梯度下降法)

發(fā)布時間:2025/3/21 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习入门系列一(关键词:单变量线性回归,梯度下降法) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

? ? ? ? 機器學(xué)習(xí)入門系列一(關(guān)鍵詞:單變量線性回歸,梯度下降法)



如上圖所示,我們的目標是希望通過這些數(shù)據(jù)得到城市人口數(shù)和利潤可能的對應(yīng)關(guān)系,并可以通過城市人口數(shù)(利潤)來預(yù)測它的利潤(城市人口數(shù)),在這里我們先規(guī)定一下符號記法。

符號含義
m訓(xùn)練樣本的個數(shù)
x訓(xùn)練樣本中的輸入變量(特征)
y訓(xùn)練樣本中的輸出變量(特征)
(x(i),y(i))i個訓(xùn)練樣本
hθ(x)輸入變量x與輸出變量y的映射關(guān)系

在本例中,訓(xùn)練樣本個數(shù)m為97;輸入變量x為城市人口數(shù),其中x(i)表示第i個城市的人口數(shù);輸出變量y為利潤,其中y(i)表示第i個城市所得利潤。有了訓(xùn)練樣本,下一步我們需要用一種算法得到一個比較好的映射關(guān)系hθ(x),當(dāng)給定城市人口數(shù)x?時,通過映射關(guān)系可以得到一個符合訓(xùn)練樣本規(guī)律的合理的利潤y?。由于我們現(xiàn)在討論的是比較簡單的單變量的線性回歸,因此我們假設(shè)

hθ(x)=θ0+θ1x(1) 現(xiàn)在我們要選擇一組θ0θ1,使得在訓(xùn)練集中對于給定xhθ(x)盡可能地接近y,因為只有這樣,hθ(x)才能更為接近訓(xùn)練樣本的規(guī)律,才能進行更為準確的預(yù)測。漢語言中的“盡可能地接近”非常的抽象,此時我們要把它轉(zhuǎn)化為數(shù)學(xué)語言。不妨用數(shù)值之差的平方來表示,事實證明用這種表示方法可以更為方便地進行后續(xù)的數(shù)學(xué)處理。 argminθ0,θ112mi=1m(hθ(x(i))?y(i))2
為方便說明,我們在此定義一個代價函數(shù)J(θ0,θ1)。這樣,問題就轉(zhuǎn)化為尋找一組θ0θ1使得J(θ0,θ1)最小。 J(θ0,θ1)=12mi=1m(hθ(x(i))?y(i))2(3) 那么這個代價函數(shù)J(θ0,θ1)到底是什么,長的什么樣子?我們不妨窮舉可能的θ0θ1,并畫出J(θ0,θ1)的三維圖像。

從圖像可以很直觀地看到,代價函數(shù)存在著最小值,但是我們該如何找到這樣的θ0θ1,難道真的要遍歷所有可能的θ么?其一,我們有可能會找到效果比較好的θ,但是無法找到最優(yōu)解;其二,當(dāng)問題變得比較復(fù)雜,代價函數(shù)變得比較復(fù)雜時(hθ(x)不是現(xiàn)在的一元一次),我們甚至不能確定θ的可能范圍,那么我們只能在整個實數(shù)范圍內(nèi)去搜尋,可想而知這是一項多么艱巨的任務(wù)。

那么該如何找到最優(yōu)解,下面介紹一個很重要也很實用的方法,梯度下降法。
什么是梯度下降法?讓我們置身于一望無際的群山之中,現(xiàn)在我們在某個山的半山腰上,現(xiàn)在天快黑了,我們想要下山。忽略一切危險的可能,我們當(dāng)然要順著最陡的路下山,畢竟這樣比較快。設(shè)想一下如果沿著一個非常非常緩的坡下山,我們就要走很久很久的路,無法在天黑之前順利下山。這就是梯度下降法,即朝著梯度最大的方向移動。
在本例中,數(shù)學(xué)語言描述如下,其中α(正數(shù))為移動的步長,我們首先初始化一組隨機的θ0θ1,然后對其進行更新。

???θ0=θ0?α??θ0J(θ0,θ1)θ1=θ1?α??θ1J(θ0,θ1)(4)
注意!!梯度下降法是同時更新θ0θ1,而不是先更新θ0再用更新后的θ0去更新θ1

梯度下降法有一些很有趣的特征
1.可以找到最優(yōu)值。
為方便說明,我們設(shè)θ0=0,即代價函數(shù)J(θ0,θ1)是關(guān)于θ1的函數(shù)。
- 當(dāng)初始θ1位于左側(cè),即小于最優(yōu)θ1時,梯度為負數(shù),由式(4)可知θ1將會增加。
- 當(dāng)初始θ1位于右側(cè),即大于最優(yōu)θ1時,梯度為正數(shù),由式(4)可知θ1將會減小。

2.容易陷入局部最優(yōu)值。
假設(shè)代價函數(shù)J(θ0,θ1)有多個極值點,如圖所示。不同的初始點,所得的梯度將會不同,迭代很多次后,不同的初始點所走的路線可能會有很大的差異,最終甚至陷入不同的局部最優(yōu)值。

3.α的選取有一定的講究,過大或過小都無法找到最優(yōu)值。
為方便說明,我們設(shè)θ0=0,即代價函數(shù)J(θ0,θ1)是關(guān)于θ1的函數(shù)。
- α過小。如圖和式(4)可知當(dāng)逐漸逼近最優(yōu)解時,梯度會變小,θ1的變化速度將會越來越小,于是需要經(jīng)過很多很多次迭代才能找到最優(yōu)解。對于極端情況,θ1甚至永遠也無法得到最優(yōu)解。
- α過大。如圖和式(4)可知,若初始點距離最優(yōu)點比較近時,經(jīng)過一次迭代,θ1將會跨越過最優(yōu)值,而此時對應(yīng)的梯度大于初始點的梯度,因而再一次的迭代可能將會更遠離最優(yōu)值。這樣迭代下去,既無法收斂,也無法找到最優(yōu)解。

現(xiàn)在我們對梯度下降法有一定的了解,但是該如何去應(yīng)用在尋找局部最小值?首先我們要求得代價函數(shù)J(θ0,θ1)的梯度,求法如下


在本例中對式(1)中的hθ(x)求偏導(dǎo),結(jié)果如下
??θ0hθ(x)=1(6) ??θ1hθ(x)=x(7) 把式(1)(5)(6)(7)代入到(4)中,得
?????????θ0=θ0?αmi=1m(θ0+θ1x(i)?y(i))θ1=θ1?αmi=1m(θ0+θ1x(i)?y(i))x(i)(8) 因此梯度下降法算法為:
1. 初始化一組隨機的θ0θ1,選取一個合適的α
2. 用式(8)循環(huán)迭代計算θ0θ1,直至收斂到局部最小值。
訓(xùn)練結(jié)果如下

總結(jié)

以上是生活随笔為你收集整理的机器学习入门系列一(关键词:单变量线性回归,梯度下降法)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。