【吳恩達Deeplearning.ai筆記一】直觀解釋邏輯回歸
深度學習(Deep Learning)是機器學習(Machine Learning)的一大分支,它試圖使用包含複雜結構或由多重非線性變換構成的多個處理層對數據進行高層抽象的演算法。
邏輯回歸(Logistic Regression,也譯作「對數幾率回歸」)是離散選擇法模型之一,屬於多重變數分析範疇,是社會學、生物統計學、臨床、數量心理學、計量經濟學、市場營銷等統計實證分析的常用方法。
1
符號約定
邏輯回歸一般用於二分類(Binary Classification)問題中,給定一些輸入,輸出結果是離散值。例如用邏輯回歸實現一個貓分類器,輸入一張圖片 x ,預測圖片是否為貓,輸出該圖片中存在貓的概率結果 y。
圖片是一類非結構化的數據。在計算機中,一張圖片以RGB編碼方式存儲時,是將它以紅、綠、藍為三基色,以每個像素點上三種顏色的十六進位顏色碼進行編碼,形成一個包含三個信道(Channel),各信道大小和圖片的大小相同的矩陣。例如圖中的貓圖大小為 64*64,那麼表示為矩陣後的每個信道大小即為 64*64
模式識別(Pattern Recognition)以及機器學習中,處理的各種類型的數據都需要用一些特徵向量來表示。為了將上例中的圖片表示為一個特徵向量 x,將每三個信道中三種顏色的值進行拆分重塑,形成維數為 nx = 64*64*3=12288的特徵向量:
2
邏輯回歸
邏輯回歸是一種用於解決監督學習(Supervised Learning)問題的學習演算法,進行邏輯回歸的目的,是使訓練數據的標籤值與預測出來的值之間的誤差最小化。
其函數圖像為:
3
成本函數
但在邏輯回歸中一般不使用這個損失函數,因為在訓練參數過程中,使用這個損失函數將得到一個非凸函數,最終將存在很多局部最優解,這種情況下使用梯度下降(Gradient Descent)將無法獲得最優解。對邏輯回歸模型,希望滿足條件概率:
p(y|x)需要最大化,而損失函數需要最小化,所以在原來的式子中填上負號,就可以將它作為一個損失函數。在上式右邊添加一個負號,就推導出了邏輯回歸中用到的log損失函數,表達式為:
對m個訓練樣本整體的成本函數,可以使用數理統計中的極大似然估計法(Maximum Likelihood Estimation)推導出來的。
假設所有訓練樣本獨立同分布,則聯合概率為所有樣本概率的乘積:
4
梯度下降
想找到使成本函數的值最小的參數 w和b的值,一般採用梯度下降法。標量場中某一點上的梯度指向標量場增長最快的方向,梯度的長度是這個最大的變化率。
在空間坐標中以w,b為軸畫出損失函數J(w,b)的三維圖像,可知這個函數為一個凸函數。為了找到合適的參數,先將w和b賦一個初始值,正如圖中的小紅點。
在邏輯回歸中,幾乎任何初始化方法都有效,通常將參數初始化為零。隨機初始化也起作用,但通常不會在邏輯回歸中這樣做,因為這個成本函數是凸的,無論初始化的值是多少,總會到達同一個點或大致相同的點。
梯度下降就是從起始點開始,試圖在最陡峭的下降方向下坡,以便儘可能快地下坡到達最低點,這個下坡的方向便是此點的梯度值。
在二維圖像中來看,順著導數的方向,下降速度最快,用數學公式表達即是:
5
參考資料
吳恩達-神經網路與深度學習-網易雲課堂
Andrew Ng-Neural Networks and Deep Learning-Coursera
deeplearning.ai
課程代碼與資料-GitHub
註:本文涉及的圖片及資料均整理翻譯自Andrew Ng的Deep Learning系列課程,版權歸其所有。翻譯整理水平有限,如有不妥的地方歡迎指出。
![](https://pic.pimg.tw/zzuyanan/1488615166-1259157397.png)
![](https://pic.pimg.tw/zzuyanan/1482887990-2595557020.jpg)