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 |