Course Notes:Neural Networks and Deep Learning Week 2
Logistic Regression as a Neural Network
Binary Classification
在二分類中,輸出的結果是離散值,0或1。以一個判斷圖片是否為貓的分類器為例,說明二分類的過程。
分類器的輸入是圖片的特徵向量,輸出為0或1,其中0表示不是貓,1表示是貓。圖片大小為64×64像素,三個顏色通道RGB,因此有三個矩陣大小均為64×64。我們通常將矩陣變形為一個64×64×3的向量。
Logistic Regression
邏輯回歸學習演算法的輸出標籤y的取值為0或1,因此這是一種針對二分類問題的演算法。在二分類問題中,我們需要輸出yhat預測值,yhat表示輸出y為1的概率,因此yhat的取值範圍應該在0到1之間。
以貓的分類器為例,具體參數和函數使用如下。
Logistic Regression Cost Function
為了訓練參數w和b,我們需要定義一個代價函數,去衡量預測值與實際值之間的誤差。直觀上,我們經常採用平方誤差去定義損失;但在logistic回歸中,我們通常不這麼做,因為我們期待成本函數為凸函數,便於更好地找到全局最優解,而非凸函數在優化時有很多的局部最優解,使得採用梯度下降的方法變得困難。
這裡,我們把loss function和cost function分別定義為:
Gradient Descent
我們需要尋找到使得代價函數最小的w和b,最常見的方法是梯度下降法。如下圖所示,即找到使凸函數J(w, b)最小的w和b。
關於梯度下降法的具體內容,通常大家都比較熟悉,這裡不再贅述。在這個代價函數中,我們需要更新w和b值,迭代公式定義如下:
其中,dw和db分別表示J(w, b)關於w和b的偏導數,為學習率,也就是每次更新的步長,需要人工設定。
Computation graph
當J(a, b, c) = 3( a + bc )時,我們可以得到如下圖的計算圖。我們還可以根據計算圖,計算出每一步的導數。
Logistic Regression Gradient Descent
Gradient Descent on m Examples
需要知道以下公式:
計算過程(假設n=2):
Vectorization
推薦閱讀:
※Coursera (或其它慕課平台)上有哪些演算法、數據結構相關的課程值得推薦?
※在 Coursera 工作是怎樣一番體驗?
※有哪些質量較高,完成難度較大的計算機科學方面的MOOC課程?
※如何正確有效地使用 Coursera 的結課證書?
※約翰霍普金斯大學在Coursera上的Data Science 系列課程是否值得花錢去上?
TAG:深度學習DeepLearning | 神經網路 | Coursera |