1. 人臉識别
Face recognition可分為:Verification, Recognition。
1.1 One Shot Learning
One shot learning所針對的情況是,在訓練集隻有一張目标對象的圖檔時,正确識别目标對象。
顯然基于我們之前的知識,在隻有目标對象的一個訓練樣本時,無法建構出一個有效的深度學習模型。是以我們相信建構一個能夠學習分辨兩個樣本相似度的模型。
Learning a “similarity” function
那麼如何去比較兩種圖檔的相似度呢?Siamese Network将告訴我們
1.2 Siamese Network
過程:将圖檔輸入CNN模型,利用最後某一層作為該圖檔的編碼代表,然後比較任意兩張圖檔在該層的差異。
下一步我們将告訴模型怎樣判斷兩張圖檔的差異大小。
1.3 Triplet Loss
在模型訓練時,每次我們都喂給模型三張圖檔,一張目标圖檔,一張陽性圖檔(同一個人),一張陰性圖檔(非同一個人)。然後讓調整參數,使得模型判别目标圖檔與陽性圖檔的相似高高于目标圖檔與陰性圖檔的相似度。
Loss function
在訓練集裡我們還是需要同一個人的多張照片。
Choosing the triplets A, P, N
然而如果是完全随機選擇的一張圖檔作為陰性樣本,則很容易達到A與P的相似度遠高于A與N,這樣模型的學習過程就會變得非常低效。是以我們需要在初始時,選擇那些很相近的三聯體(triplets)。
Training set using triplet loss
1.4 Face Verification and Binary Classification
Learning the similarity function
2. 風格遷移
Neural style transfer
2.1 What are deep ConvNets learning?
利用可視化圖像去觀察深度神經網絡模型所學到的特征。
從下圖可以發現,第一層的神經元大多在學習識别簡單的直線線條:
随後的深層神經元會逐漸學習更複雜的特征:
2.2 Cost Function
為了實作風格遷移,我們也要選擇一個損失函數。
Find the generated image G
首先随機初始化一張圖像G(像素随機分布),然後利用梯度下降算法降低損失函數
2.3 Content Cost Function
2.4 Style Cost Function
什麼是Style?
我們用卷積網絡的第L層神經元去度量“style”;style 被定義為不同channels的激活值的相關性(correlation)
Intuition about style of an image
correlation 訓示兩組特征同時出現的幾率。
Style matrix
(風格遷移的損失函數這塊确實有點跟不上了)
2.5 1D and 3D Generalizations
Convolutions in 2D and 1D
注:如無特殊說明,以上所有圖檔均截選自吳恩達在Coursera開設的神經網絡系列課程的講義。