1. 程式人生 > >機器學習之邏輯回歸

機器學習之邏輯回歸

反向 margin -1 mil 局部最優 一個數 簡單 line 滿足

給定一張圖片,如何讓計算機幫助我們識別它是不是一張貓的圖片,這個問題可以看成一個簡單的分類問題。如下圖所示,平面上有兩種不同顏色(黑色,紅色)的點,我們要做到就是要找到類似與那條直線那樣的界限。當某個點位於直線上方時,那麽就可以判定該點是黑色的,當某個點位於直線的下方時,那麽就可以判定該點是紅色的。

技術分享

  • 正向傳播

正向傳播考慮的是如何得到這條直線的方程,可以先來假定這條直線的函數為,這裏的Wb先任意取一個數(可能會很不準確),當我們把x帶入裏面後會有一個輸出y,從圖中我們發現當y值越大,那麽它就越可能屬於黑色點一類,當y值越小,那麽它就越有可能屬於紅色點一類。這種接近程度通常可以用概率來表示,由此引入

sigmoid函數:

技術分享

技術分享

正如圖像所示,sigmoid函數的值域為(01),定義域為(-∞,+∞)。下面求兩個極限

技術分享

技術分享

這就意味著無論我們在實數的定義域內取何值,經過sigmoid函數運算後結果都可以收斂於(01)之間,而一件事發生的概率取值正好滿足此區間。

對於sigmoid函數的理解

技術分享技術分享,當我們輸入x後用事先任取的wb參與運算後會得到一個z值,這個z值越大,就認為這點越接近黑色的點,將z帶入sigmoid函數z值越大g(z)的值就越接近1,可以認為該點是黑色的點的概率越接近1Z值越小,認為這點越接近紅色的點(越遠離黑色的點),z帶入sigmoid函數z值越小

g(z)的值就越接近0,可以認為該點是黑色的點的概率越接近0

  • 反向傳播

反向傳播考慮的是直線的方程準不準,即參數w,b的取值是否合理。利用數據訓練的過程實質上就是不斷叠代尋找最合適的參數的過程。判斷參數準不準,就要用一個偏差來衡量實際輸出與真實結果y(真實y101表示這點是黑色,0表示這點不是黑色)之間的距離。由此需要來定義損失函數。

技術分享

這樣定義是為了避免在進行梯度下降法中得到局部最優解(不太理解)。

y=0時,技術分享,如果想讓損失函數取值較小即距離越小,那麽技術分享就應該接近0

y=1時,技術分享,如果想讓損失函數取值較小即距離越小,那麽技術分享就應該接近1

梯度下降法

梯度的方向是函數變化速度最快的方向,為了使損失函數取到最小值,所以需要使用按照梯度下降的方向來逐步叠代求出函數的最小值。

技術分享

技術分享

技術分享

那麽由鏈式求導法有一下關系

技術分享

得到

技術分享

技術分享

技術分享

那麽更新後的w,b變為

技術分享

技術分享

其中α為學習率,需要人為設置。對於更新後的w,b為了達到較好的訓練效果,需要再次正向傳播得到輸出,再進行反向傳播縮小差距更新w,b多次叠代。

以上所談如下圖所示僅為一個樣本輸入一層傳播的情況。

技術分享

對於如下圖所示的多個樣本輸入的一層傳播情況,需要將樣本數據寫成矩陣形式,相應的運算變為矩陣運算。

技術分享

機器學習之邏輯回歸