今天我們要學(xué)習(xí)的就是之前提到過的使用深度學(xué)習(xí)進(jìn)行人臉識(shí)別的神經(jīng)網(wǎng)絡(luò)廊散,Siamese network。
其實(shí)Siamese跟之前我們所使用的神經(jīng)網(wǎng)絡(luò)在前面的部分都是大致相同的扯旷,通過了卷積層雄妥,池化層等等進(jìn)入全連接層。分類類的神經(jīng)網(wǎng)絡(luò)一般會(huì)在后面加上一個(gè)softmax分類器炕横,輸出它的類別源内。
但是Siamese在全連接層的最后一層就停止了。
我們會(huì)把一張圖片輸入到卷積神經(jīng)網(wǎng)絡(luò)當(dāng)中份殿,得到一個(gè)全連接層膜钓,我們就稱這個(gè)全連接層是這個(gè)圖片的編碼f(x)嗽交。(要注意的是:這里的編碼不是指把圖片的像素一個(gè)一個(gè)解讀出來,而是把它的數(shù)據(jù)處理之后提取的特征做成編碼)
那么假設(shè)我們輸入兩張圖片颂斜,我們就會(huì)得到兩個(gè)f(x)夫壁,我們所要做的就是比較兩個(gè)f(x)的差異,來判斷兩張圖片是否是同一張圖片焚鲜。
這里的公式是d(x1,x2)=||f(x1)-f(x2)||掌唾,這里的兩個(gè)豎代表的是范數(shù)范數(shù),范數(shù)是某種意義上向量的一個(gè)長(zhǎng)度忿磅,通過長(zhǎng)度大小比較可以發(fā)現(xiàn)兩張圖片的差異性糯彬。
那么理所當(dāng)然的,我們可以知道葱她,范數(shù)的差值越小撩扒,就能說明這兩張圖越有可能是同一個(gè)人,差值越大吨些,則兩張圖越有可能不是同一個(gè)人搓谆。
下一節(jié)課會(huì)講到這個(gè)神經(jīng)網(wǎng)絡(luò)的損失函數(shù)。
記
其實(shí)吳恩達(dá)在卷積神經(jīng)網(wǎng)絡(luò)的課程后部設(shè)計(jì)這一個(gè)人臉識(shí)別的課題是別有用心的豪墅,這個(gè)課題其實(shí)并不是非常的難泉手,用的基本上也是之前學(xué)過的知識(shí)。
其實(shí)深度網(wǎng)絡(luò)在大部分領(lǐng)域都可以應(yīng)用偶器,哪怕現(xiàn)在我們是一個(gè)人只有一張圖片的數(shù)據(jù)庫(kù)斩萌,我們也可以通過另外一個(gè)角度來訓(xùn)練這個(gè)模型。(也就是我們可以通過很多人來訓(xùn)練這個(gè)模型的差值)
一般來說屏轰,不同的應(yīng)用場(chǎng)景颊郎,差別就在于輸出端究竟是什么,可以是一個(gè)分類霎苗,或者是一個(gè)編碼姆吭,或者是什么別的東西。