Matching Networks for One Shot Learning論文分析
Matching Networks for One Shot Learning
Abstract
研究領域: One Shot Learning(小樣本學習)從少量樣本中快速學習,是傳統監督學習和Deep Learning無法解決的問題,該研究領域被稱為小樣本學習。
創新:
以下兩種方法結合:
- metric learning目前,小樣本學習的主流方法
- external memories以前小樣本學習的主流方法
資料集: Omniglot & ImageNet
1. Introduction
- 人類可以從少量樣本中學習新的概念。比如:一個小朋友看到鄰居家的新玩具一次,下次跟媽媽去商場的時候馬上就能從貨架上認出它來。
- 現在Deep Learning仍然需要大資料的驅動。
- 一些non-parametric model可以快速學習新樣本,比如KNN。本文要融合parametric model(即DL)和non-parametric model。DL中的樣本是用完即棄的,而KNN中的樣本會被儲存。
- 本文還為在Omniglot & ImageNet上的One Shot Learning實驗設定了benchmark。
2. Model
2.1 Model Architecture
- 在網路上加external memories。
- external memories有很多種。在seq2seq中,external memories用於對的建模。在本文的Matching Net中,也用這種方式,只不過這裡的是一個set。如上圖所示,網路的輸入是有多個圖片組成的set。
- 數學建模部分。這裡比較複雜,我會講的詳細一點。
從上圖可以看到,左邊4個圖片形成一組,稱為support set;右下1個單身狗,稱為test example。全部5個圖片稱為1個task。
該模型用函式可表示為,即模型有兩個輸入。該模型用概率可表示為, 其中,k表示support set中樣本的個數。上圖support set有4個圖片,k=4。
Matching Net作者把該模型表示為:
預測值被看做是support set中樣本的labels的線性組合,組合的權重是test example和support set中1個樣本的關係——。
- 將作為一個核函式,則該模型可近似為:Deep Learning做嵌入層,KDE做分類層。
- 將作為一個01函式,則該模型可金思維:Deep Learning做嵌入層,KNN做分類層。
2.1.1 The Attention Kernel
本文賦予新的形式——將它看做attention kernel。此時,模型的預測結果就是support set中attention最多的圖片的label。
常見的attention kernel是cosine距離上的softmax:
,其中是兩個嵌入函式(可由神經網路實現,如:VGG or Inception)。
2.1.2 Full Context Embeddings
嵌入向量,嵌入函式的輸出同時由對應的和整個support set有關。support set是每次隨機選取的,嵌入函式同時考慮support set和可以消除隨機選擇造成的差異性。類似機器翻譯中word和context的關係,可以看做是的context,所以本文在嵌入函式中用到了LSTM。
對text example的嵌入函式為:
,其中是CNN嵌入層的輸出,可以是VGG或Inception,是support set中樣本的嵌入函式輸出,K是LSTM層的timesteps,等於support set的圖片個數。
詳解full context embedding:
The Fully Conditional Embedding f
The Fully Conditional Embedding g
support set中的在經過多層卷積網路後,在經過一層bidirectional LSTM。
2. 2Training Strategy
- 一個batch包括多個task;
- 一個task包括一個support set和一個test example;
- 一個support set包括多個sample(image & label);
- support set中有且只有一個樣本與test example同類。
Related Work
Memory Augumented Neural Networks attention機制
Metric Learning 比較學習