• 沒有找到結果。

第三章 方法

3.4. 特徵擷取

在之前的方法,我們都是透過已知的特徵來挑選出最好的組合或者是以人 類的角度來看是好的特徵便拿來使用,所以以另一個角度來看,我們希望電腦 能夠自己發現對於電腦來說是能夠幫助辨識娃娃臉的特徵,即電腦能夠從人臉 圖片中自己擷取出有用的特徵。在本論文中我們使用深度學習(Deep learning)的 方法讓電腦自動學習出有用的特徵。

3.4.1. 神經網路

深度學習的概念源於人工神經網路的研究,深度學習期望建立一個可 以模擬人類大腦進行分析學習的神經網路。人類大腦在視覺判斷上是層層 迭代的,一開始眼睛先接收到眼前的畫面的訊號之後傳送到大腦裡,大腦 皮層細胞開始對傳送的訊號做初步的分析找出物體的邊緣,之後更進一步 的將邊緣逐漸組合成物體的形狀,最後大腦判斷出眼前的物體。這代表我 們的大腦會先取得低等級的特徵,然後將低等級的特徵組合成上一級的特 徵,而新組合成的特徵又再更進一步組合成更高級的特徵,而在這過程中 新產生的特徵也越來越有足夠的能力去表達所看到的物體。因此深度學習 便仿效這種方式建立出人工神經網路。

圖 4. 神經網路架構圖

如圖 4所示,我們將圖片的像素當作起始的特徵輸入到輸入層中,之 後透過多層的隱藏層讓電腦自動學習特徵,前一層的輸出會成為下一層的 輸入直到輸出層得到我們最終擷取出來的特徵。

圖 5. 卷積神經網路架構圖

3.4.2. 卷積神經網路

在本篇論文中,我們使用卷積神經網路來擷取特徵。傳統神經網路如 同圖 4所示,任意相鄰的兩層形成一個完全二分圖,即前一層的每個節點

(神經元)與下一層的每個節點(神經元)皆相連,但同一層之間不會相連。而 神經網路的這種性質代表當前一層輸入到下一層的節點數越多(圖越大),神 經網路所要學習的權重越多,學習所花費的時間相對的也增加。為了解決 這個問題,卷積神經網路採用局部連接,即下一層的節點並不是連接了前 一層的所有節點,而是只連接了部分的節點,如同人類大腦皮層中視覺皮 層不同位置的神經元只對局部區域有反應。所以卷積神經網路在進入傳統 神經網路之前新增了兩種層,即卷積層(convolutional layer)以及子採樣層 (sub-sampling layer)。

在圖 5中顯示了卷積神經網路的架構,卷積神經網路與傳統神經網路 式採用 pooling 的方法,使用方式是將圖片固定大小的區塊(2x2)裡的值相加 取平均值或是取最大值(本論文使用 max pooling),計算完畢後我們便能獲得 只有約原圖四分之一的新圖片,由於先前所述的圖片的穩定性,我們對圖

片進行統計計算時,得到的結果也會與原本的相似,所以我們便能用較小 作,在 caffe 裡包含了事先利用 Imagenet 資料庫[25]訓練好的卷積神經網路 模型,並且在一個文件裡記載了卷積神經網路模型每一層的架構,我們只 如何建立辨識娃娃臉所使用的模型。我們使用支持向量機器(Support Vector Machine, SVM)來訓練我們的模型,positive 樣本為娃娃臉,分類標籤設為 1;

negative 樣本為非娃娃臉,分類標籤設為-1。在訓練模型時採用的是徑向基函數 核(Radial basis function kernel, RBF kernel)並且使用支持向量機器裡所附帶的 工具來學習最佳化參數,訓練完成後即可得到我們所需的娃娃臉模型。

相關文件