梯度下降法原理_第1頁
梯度下降法原理_第2頁
梯度下降法原理_第3頁
梯度下降法原理_第4頁
梯度下降法原理_第5頁
已閱讀5頁,還剩1頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、回歸與梯度下降:回歸在數學上來說是給定一個點集,能夠用一條曲線去擬合之,如果這個曲線是一條直線,那就被稱為線性回歸,如果曲線是一條二次曲線,就被稱為二次回歸,回歸還有很多的變種,如locally weighted回歸,logistic回歸,等等,這個將在后面去講。用一個很簡單的例子來說明回歸,這個例子來自很多的地方,也在很多的open source的軟件中看到,比如說weka。大概就是,做一個房屋價值的評估系統,一個房屋的價值來自很多地方,比如說面積、房間的數量(幾室幾廳)、地 段、朝向等等,這些影響房屋價值的變量被稱為特征(feature),feature在機器學習中是一個很重要的概念,有很

2、多的論文專門探討這個東西。在 此處,為了簡單,假設我們的房屋就是一個變量影響的,就是房屋的面積。假設有一個房屋銷售的數據如下:面積(m2)  銷售價錢(萬元)123            250150            32087           &#

3、160;  160102            220               這個表類似于帝都5環左右的房屋價錢,我們可以做出一個圖,x軸是房屋的面積。y軸是房屋的售價,如下:如果來了一個新的面積,假設在銷售價錢的記錄中沒有的,我們怎么辦呢?我們可以用一條曲線去盡量準的擬合這些數據,然后如果有新的輸入過來,我們可以在將曲線上這個點對

4、應的值返回。如果用一條直線去擬合,可能是下面的樣子:綠色的點就是我們想要預測的點。首先給出一些概念和常用的符號,在不同的機器學習書籍中可能有一定的差別。房屋銷售記錄表 - 訓練集(training set)或者訓練數據(training data), 是我們流程中的輸入數據,一般稱為x房屋銷售價錢 - 輸出數據,一般稱為y擬合的函數(或者稱為假設或者模型),一般寫做 y = h(x)訓練數據的條目數(#training set), 一條訓練數據是由一對輸入數據和輸出數據組成的輸入數據的維度(特征的個數,#features),n下面是一個典型的機器學習的過程,首先給出一個輸入數據,我們的算法會通

5、過一系列的過程得到一個估計的函數,這個函數有能力對沒有見過的新數據給出一個新的估計,也被稱為構建一個模型。就如同上面的線性回歸函數。我們用X1,X2.Xn 去描述feature里面的分量,比如x1=房間的面積,x2=房間的朝向,等等,我們可以做出一個估計函數:在這兒稱為參數,在這兒的意思是調整feature中每個分量的影響力,就是到底是房屋的面積更重要還是房屋的地段更重要。為了如果我們令X0 = 1,就可以用向量的方式來表示了:我們程序也需要一個機制去評估我們是否比較好,所以說需要對我們做出的h函數進行評估,一般這個函數稱為損失函數(loss function)或者錯誤函數(error fun

6、ction),描述h函數不好的程度,在下面,我們稱這個函數為J函數在這兒我們可以做出下面的一個錯誤函數:這個錯誤估計函數是去對x(i)的估計值與真實值y(i)差的平方和作為錯誤估計函數,前面乘上的1/2是為了在求導的時候,這個系數就不見了。如何調整以使得J()取得最小值有很多方法,其中有最小二乘法(min square),是一種完全是數學描述的方法,在stanford機器學習開放課最后的部分會推導最小二乘法的公式的來源,這個來很多的機器學習和數學書 上都可以找到,這里就不提最小二乘法,而談談梯度下降法。梯度下降法是按下面的流程進行的:1)首先對賦值,這個值可以是隨機的,也可以讓是一個全零的向量

7、。2)改變的值,使得J()按梯度下降的方向進行減少。為了更清楚,給出下面的圖: 這是一個表示參數與誤差函數J()的關系圖,紅色的部分是表示J()有著比較高的取值,我們需要的是,能夠讓J()的值盡量的低。也就是深藍色的部分。0,1表示向量的兩個維度。在上面提到梯度下降法的第一步是給給一個初值,假設隨機給的初值是在圖上的十字點。然后我們將按照梯度下降的方向進行調整,就會使得J()往更低的方向進行變化,如圖所示,算法的結束將是在下降到無法繼續下降為止。 當然,可能梯度下降的最終點并非是全局最小點,可能是一個局部最小點,可能是下面的情況:上面這張圖就是描述的一個局部最小點,這是我們重新選擇了一個初始點得到的,看來我們這個算法將會在很大的程度上被初始點的選擇影響而陷入局部最小點下面我將用一個例子描述一下梯度減少的過程,對于我們的函數J()求偏導J:(求導的過程如果不明白,可以溫習一下微積分)下面是更新的過程,也就是i會向著梯度最小的方向進行減少。i表示更新之前的值,-后面的部分表示按梯度方向減少的量,表示步長,也就是每次按照梯度減少的方向變化多少。 一個很重要的地方值得注意的是,梯度是有方向的,對于一個向量,每一維分量i都可以求出一個梯度的方向,我們就可以找到一個整體的方向,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論