深度學習(四)卷積神經網絡-卷積神經網絡(3) -Andrew Ng

一、基礎知識

1.1 目標定位

前兩節課程中,我們介紹的是利用CNN模型進行圖像分類。除此之外,本週課程將繼續深入介紹目標定位目標檢測(包含多目標檢測)。

                                       

圖片分類問題你已經並不陌生了,如:

輸入一張圖片到多層卷積神經網絡。這就是卷積神經網絡,它會輸出一個特徵向量,並反饋給 softmax 單元來預測圖片類型。

                                                

原始圖片經過CONV卷積層後,Softmax層輸出4 x 1向量,分別是:

                                                               

注意,class label也可能是概率。上述四個向量分別對應pedestrain,car,motorcycle和background四類。

 這就是標準的分類過程,如果你還想定位圖片中汽車的位置,該怎麼做呢?

我們可以讓 神經網絡多輸出幾個單元,輸出一個邊界框。具體說就是讓神經網絡再多輸出 4 個數字,標 記爲𝑏𝑥 ,𝑏𝑦 ,𝑏h 和𝑏𝑤 ,這四個數字是被檢測對象的邊界框的參數化表示。

對於目標定位和目標檢測問題,其模型如下所示:

                           

 我們先來約定下面使用的符號表示,圖片左上角的座標爲(0,0),右下角標記爲 (1,1)。要確定邊界框的具體位置,需要指定紅色方框的中心點,這個點表示爲(𝑏𝑥 ,𝑏𝑦 ),邊界框的高度爲𝑏h ,寬度爲𝑏𝑤 。因此訓練集不僅包含神經網絡要預測的對象分類標籤,還要包含表示邊界框的這四個數字,接着採用監督學習算法,輸出一個分類標籤,還有四個參數值, 從而給出檢測對象的邊框位置。

輸出label可表示爲:

                                                

若Pc=0,表示沒有檢測到目標,則輸出label後面的7個參數都可以忽略。

若Pc= 1,表示存在某個對象,同時輸出𝑐1、𝑐2和𝑐3,表示該對象屬於 1-3 類中的哪一類,𝑐1、𝑐2和𝑐3中最多隻有一個等於 1;是行人,汽車還是摩托車。

對於損失函數Loss function,若使用平方誤差形式,有兩種情況:

神經網絡的損失:

對於損失函數Loss function,若使用平方誤差形式,有兩種情況:

  • Pc=1,即y1=1:

                                                          

  • Pc=0,即y1=0:

                                                                                

當然,除了使用平方誤差之外,還可以使用邏輯迴歸損失函數,類標籤c1,c2,c3c1,c2,c3也可以通過softmax輸出。比較而言,平方誤差已經能夠取得比較好的效果。 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章