WEFV2626EFCEYYYB15VEF

 

詳細資料

  • ISBN:9570189843
  • 叢書系列:
  • 規格:平裝 / 318頁 / 16k / 19 x 26 x 1.59 cm / 普通級 / 初版
  • 出版地:台灣
  • 本書分類:> >

 

 

一、梯度下降 梯度下降是一個用來求函數最小值的算法,我們將使用梯度下降算法來求出代價函數J(θo,θ1)的最小值。 ... 梯度下降算法中要做的就是不停地一點點改變θo和θ1,直到J成為最小值或局部最小值。通常將θo和θ1的初始值設為0。 梯度下降背後的思想是:開始時我們隨機選擇一個參數的組合(θo, θ1, ......, θn),計算代價函數,然後我們尋找下一個能讓代價函數值下降最多的參數組合。我們持續這麼做直到找到一個局部最小值(local minimum),因為我們並沒有嘗試完所有的參數組合,所以不能確定我們得到的局部最小值是否便是全局最小值(global minimum),選擇不同的初始參數組合,可能會找到不同的局部最小值。 ... 想像一下你正站立在山的這一點上,站立在你想像的公園這座紅色山上,在梯度下降算法中,我們要做的就是旋轉360度,看看我們的周圍,並問自己要在某個方向上,用小碎步儘快下山。這些小碎步需要朝什麼方向?如果我們站在山坡上的這一點,你看一下周圍,你會發現最佳的下山方向,你再看看周圍,然後再一次想想,我應該從什麼方向邁著小碎步下山?然後你按照自己的判斷又邁出一步,重複上面的步驟,從這個新的點,你環顧四周,並決定從什麼方向將會最快下山,然後又邁進了一小步,並依此類推,直到你接近局部最低點的位置。 批量梯度下降(batch gradient descent)算法的公式為: 其中α是學習率(learning rate),它決定了我們沿著能讓代價函數下降程度最大的方向向下邁出的步子有多大(或者理解成「步長」),在批量梯度下降中,我們每一次都同時讓所有的參數減去學習速率乘以代價函數的導數。上面的(for j = 0 and j = 1)是指同時對θo和θ1處理。 ... 在梯度下降算法中,還有一個更微妙的問題,梯度下降中,我們要更新θo和θ1,當j=0和j=1時,會產生更新,所以你將更新J(θo)和J(θ1)。實現梯度下降算法的微妙之處是,在這個表達式中,如果你要更新這個等式,你需要同時更新θo和θ1,我的意思是在這個等式中,我們要這樣更新: θo:=θo,並更新θ1:=θ1 (:=表示賦值;=表示判斷是否相等) 實現方法是:你應該計算公式右邊的部分,通過那一部分計算出的θo和θ1值,然後同時更新θo和θ1。 像下圖這樣不同時更新的做法是錯誤的: ... 二、梯度下降的直觀理解 梯度下降算法如下: 描述:對θ賦值,使得J(θ)按梯度下降最快方向進行,一直疊代下去,最終得到局部最小值。其中α是學習率(learning rate),它決定了我們沿著能讓代價函數下降程度最大的方向向下邁出的步子有多大(多大的步長)。 ... 求導的目的,基本上可以說取這個紅點的切線,就是這樣一條紅色的直線,剛好與函數相切於這一點,這條剛好與函數曲線相切的直線的斜率正好是這個三角形的高度除以這個水平長度,現在,這條線有一個正斜率,也就是說它有正導數,因此,我得到的新的θ1,θ1更新後等於θ1減去一個正數乘以α。 ... 無論斜率是正還是負,θ1更新後等於θ1減去一個正數乘以α,都會使得θ1逐步逼近使得代價函數J(θ1)最下的θ1值。 α太小或太大會出現什麼情況: 如果α太小了,即學習速率太小,結果就是需要很多步才能到達最低點,所以如果α太小的話,可能會很慢,因為它會一點點挪動,它會需要很多步才能到達全局最低點。 如果α太大,那麼梯度下降法可能會越過最低點,甚至可能無法收斂,下一次疊代又移動了一大步,越過一次,又越過一次,一次次越過最低點,直到你發現實際上離最低點越來越遠,所以,如果α太大,它會導致無法收斂,甚至發散。 如果預先把θ1放在一個局部的最低點,下一步梯度下降法會怎樣工作? 假設θ1初始化在局部最低點,那麼它已經在一個局部的最優處或局部最低點。結果是局部最優點的導數將等於零,因為它是那條切線的斜率。這意味著你已經在局部最優點,它使得θ1不再改變,也就是新的θ1等於原來的θ1,因此,如果你的參數已經處於局部最低點,那麼梯度下降法更新其實什麼都沒做,它不會改變參數的值。這也解釋了為什麼即使學習速率α保持不變時,梯度下降也可以收斂到局部最低點。 ... 在梯度下降法中,當我們接近局部最低點時,梯度下降法會自動採取更小的幅度,這是因為當我們接近局部最低點時,很顯然在局部最低時導數等於零,所以當我們接近局部最低時,導數值會自動變得越來越小,所以梯度下降將自動採取較小的幅度,這就是梯度下降的做法。所以實際上沒有必要再另外減小α。 梯度下降算法可以用來最小化任何代價函數J,不只是線性回歸中的代價函數J。 三、梯度下降的線性回歸算法 此部分將梯度下降和代價函數結合,應用於具體的擬合直線的線性回歸算法里。 梯度下降算法和線性回歸算法比較如圖: ... 對我們之前的線性回歸問題運用梯度下降法,關鍵在於求出代價函數的導數,即: ... 則算法改寫成: ... 我們剛剛使用的算法,有時也稱為批量梯度下降。」批量梯度下降」,指的是在梯度下降的每一步中,我們都用到了所有的訓練樣本,在梯度下降中,在計算微分求導項時,我們需要進行求和運算,所以,在每一個單獨的梯度下降中,我們都要對所有m個訓練樣本求和。因此,批量梯度下降法這個名字說明了我們需要考慮所有這一"批"訓練樣本,而事實上,有時也有其他類型的梯度下降法,不是這種"批量"型的,不考慮整個的訓練集,而是每次只關注訓練集中的一些小的子集。 線性代數中有一種稱為正規方程(normal equations)的方法,它可以在不需要多步梯度下降的情況下,也能解出代價函數的最小值。但是實際上在數據量較大的情況下,梯度下降法比正規方程要更適用一些。 微信公眾號:BioLearner

 

 

WEFV2626EFCEYYYB15VEF

 

 

 

文章來源取自於:

 

 

壹讀 https://read01.com/yynxzAx.html

博客來 https://www.books.com.tw/exep/assp.php/888words/products/0010362718

如有侵權,請來信告知,我們會立刻下架。

DMCA:dmca(at)kubonews.com

聯絡我們:contact(at)kubonews.com


台中中區耳下三公分修剪上班族染髮推薦髮廊石岡好感度最高色系專業染髮燙髮髮廊外埔不顯老的髮型專業染髮燙髮髮廊沙鹿韓系明星髮型風格專業剪髮推薦髮廊
北屯LOB髮型修改推薦髮廊 潭子彎度瀏海專業染髮燙髮髮廊 布丁頭的救星推薦台中髮廊梧棲精油養護護髮推薦髮廊 大遠百附近瀏海減齡方式推薦髮型設計工作室 台中男士理髮推薦和平如何維持頭髮的顏色推薦髮型設計工作室 新光三越附近男生髮型推薦的髮廊專業染髮燙髮髮廊 Dcard推薦的台中護髮染髮燙髮推薦太平逗號瀏海推薦染髮店 台中中區兩側漸層髮型專業染髮燙髮髮廊 台中在地推薦染髮技術很好的髮廊

arrow
arrow
    全站熱搜

    購物中心優質嚴選 發表在 痞客邦 留言(0) 人氣()