本科毕设研究记录(一)————小样本综述
本科畢設記錄(一)————小樣本綜述
- 綜述
- 問題定義
- 相關的領域
- 核心問題
- 經驗風險最小化(Empirical Risk Minimization)
- 不可靠的經驗風險最小化(Unreliable Empirical Risk Minimizer)
- 解決方法
- 數據增強
- 模型
- 算法
- 未來工作
- 問題
- 技術
- 應用
- 理論
- 論文總結
論文鏈接[1904.05046] Generalizing from a Few Examples: A Survey on Few-Shot Learning (arxiv.org)
綜述
問題定義
-
機器學習定義:A computer program is said to learn from experience E with respect to some classes of task T and performance measure P if its performance can improve with E on T measured by P.
計算機程序可以通過使用方法P在任務T中獲得經驗E來使它的表現變好。但是總是需要大量的數據,這是比較困難的。
-
小樣本學習:Few-Shot Learning(FSL) is a type of machine learning problems (specified by E, T and P), where E contains only a limited number of examples with supervised information for the target T.
使用少量樣本數據進行訓練完成目標任務的一種機器學習方法。
使用小樣本學習典型的幾種場景
- 字符生成:學習(E)由給定示例和監督信息以及預先訓練的概念(如零件和關系)組成的知識,作為先驗知識。生成的字符通過視覺圖靈測試(P)的通過率進行評估,該測試可區分圖像是由人類還是機器生成的。
- 罕見案例學習:當不能獲得充足的訓練集來進行訓練時,如,考慮一個藥物發現任務(T),它試圖預測一個新分子是否具有毒性作用。正確分配為有毒或無毒(P)的分子百分比隨著(E)的增加而提高,(E)通過新分子的有限分析和許多類似分子的分析作為先驗知識獲得。
- 減輕樣本收集的負擔:考慮少量鏡頭圖像分類任務(T)。圖像分類精度(P)通過為每個類別的target提取一些標記圖像,以及從其他類別(如原始圖像)提取先驗知識(E)來提高。成功完成此任務的方法通常具有較高的通用性。因此,它們可以很容易地應用于許多樣本的任務。
例如下表
Remark 1.When there is only one example with supervised information inE, FSL is calledone-shot
learning[14,35,138]. When E does not contain any example with supervised information for the
targetT, FSL becomes azero-shot learningproblem (ZSL). As the target class does not contain
examples with supervised information, ZSL requires E to contain information from other modalities
(such as attributes, WordNet, and word embeddings used in rare object recognition tasks), so as to
transfer some supervised information and make learning possible.
當只有一個有監督信息的樣本稱為單樣本學習,沒有辦法從監督學習獲得信息的時候成為0樣本學習,0樣本要求從其他地方獲得信息。
相關的領域
-
Weakly supervised learning弱監督學習:僅從包含弱監督(如不完整、不精確、不準確或有噪聲的監督信息)的經驗中學習。根據人工干預的不同又分為以下幾類:
- Semi-supervised learning半監督學習:從少量有標簽數據和大量無標簽數據,通常應用文本分類和網頁分類。還有一種Positive-unlabeled learning正未學習,只判斷樣本是未知的還是正向。
- Active learning主動學習,它選擇信息性的未標記數據來查詢oracle的輸出。這通常用于注釋標簽昂貴的應用程序,如行人檢測。
FSL也包括強化學習問題,只有當先驗知識是未標記數據且任務是分類或回歸時,FSL才成為弱監督學習問題。
-
Imbalanced learning不平衡學習:不平衡學習是從經驗中學習的,它的分布是偏態的。在欺詐檢測和災難預測應用程序中,當一些值很少被采用時,就會發生這種情況。
-
遷移學習:將知識從訓練數據豐富的源域/任務轉移到訓練數據稀缺的目標域/任務。它可以用于跨域推薦、跨時間段、跨空間和跨移動設備的WiFi定位等應用。
小樣本學習中經常使用遷移學習的方法
-
元學習:元學習者在任務中逐漸學習通用信息(元知識),學習者通過任務特定信息概括元學習者的新任務
元學習者被視為指導每個特定FSL任務的先驗知識。
核心問題
經驗風險最小化(Empirical Risk Minimization)
假設一個任務h,我們想最小化他的風險R,損失函數用p(x,y)p(x,y)p(x,y)進行計算。得到如下公式
R(h)=∫?(h(x),y)dp(x,y)=E[?(h(x),y)]R(h)=\int \ell(h(x),y)dp(x,y)=\mathbb{E}[\ell(h(x),y)]R(h)=∫?(h(x),y)dp(x,y)=E[?(h(x),y)]
因為p(x,y)是未知的,經驗風險在有I個樣本的訓練集上的平均值p(x,y)是未知的,經驗風險在有I個樣本的訓練集上的平均值p(x,y)是未知的,經驗風險在有I個樣本的訓練集上的平均值來代理經驗風險值RI(h)R_I(h)RI?(h)
RI(h)=1I∑i=1i?(h(xi),yi)R_I(h)= \frac{1}I\sum_{i=1}^i \ell(h(x_i),y_i)RI?(h)=I1?i=1∑i??(h(xi?),yi?)
為方便說明做以下三種假設,
- h^=argminh(R(h))\hat{h} = arg {\ } min_h(R(h))h^=arg?minh?(R(h))期望最小值函數
- h?=argminh∈HR(h)h^* = arg{\ }min_{h \in \mathcal{H}}R(h)h?=arg?minh∈H?R(h)在H\mathcal{H}H中期望最小值函數
- hI=argminh∈HRI(h)h_I=arg {\ }min_{h\in\mathcal{H}}R_I(h)hI?=arg?minh∈H?RI?(h)在H\mathcal{H}H中經驗最小值函數
因為h^\hat{h}h^是未知的,但是在H\mathcal{H}H中h?h^*h?是h^\hat{h}h^最好的近似值,所以可以得到誤差為
E[R(hI)?R(h^)]=E[R(h?)?R(h^)]?ξapp(H)+E[R(hI)?R(h?)]?ξest(H,I)\mathbb{E}[R(h_I)-R(\hat h)]=\underbrace{\mathbb{E}[R(h^*)-R(\hat h)]}_{\xi_{app}(\mathcal H)}+\underbrace{\mathbb{E}[R(h_I)-R( h^*)]}_{\xi_{est}(\mathcal H,I)}E[R(hI?)?R(h^)]=ξapp?(H)E[R(h?)?R(h^)]??+ξest?(H,I)E[R(hI?)?R(h?)]??
ξapp(H)\xi_{app}(\mathcal H)ξapp?(H)計算的是在H\mathcal HH能多接近期望最小是h^,ξest(H,I)\hat h, \xi_{est}(\mathcal H,I)h^,ξest?(H,I)計算的是經驗風險可以多接近在H\mathcal HH上的期望風險。
不可靠的經驗風險最小化(Unreliable Empirical Risk Minimizer)
h^,ξest(H,I)\hat h, \xi_{est}(\mathcal H,I)h^,ξest?(H,I)可以通過增大I來進行減少,但是在小樣本學習中I很小,所以經驗風險離期望風險很遠,這就是小樣本學習中的核心問題,用下圖進行表示。
解決方法
根據上面的誤差計算公式,我們可以發現,減少誤差有三種方法
下表為文章中總結的方法
數據增強
-
從訓練集中轉換樣本
- 早期的方法,通過迭代地將每個樣本與其他樣本對齊,從類似的類中學習一組幾何變換。將學習到的轉換應用于每個(xi,yi)以形成一個大型數據集,然后可以通過標準機器學習方法學習這些數據集。
- 從類似的類中學習一組自動編碼器,每個編碼器代表一個類內可變性。通過添加學習的變化toxi生成新樣本。
- 通過假設所有類別在樣本之間共享一些可轉換的可變性,學習單個轉換函數,以將從其他類別學習的樣本對之間的變化轉換為(xi,yi)
- 從大量場景圖像中學習的一組獨立屬性強度回歸器將每個樣本轉換為多個樣本,并將原始樣本的標簽指定給這些新樣本。
-
從弱標記或者無標記的數據集中轉換樣本
- 為每個訓練集的目標標簽學習一個樣本SVM,然后用于預測弱標簽數據集中樣本的標簽。然后將具有目標標簽的樣本添加到訓練集中。
- 直接使用標簽傳播來標記未標記的數據集。
- 使用漸進策略選擇信息性未標記樣本。然后為選定的樣本指定偽標簽,并用于更新CNN。
-
從相似的樣本中轉換樣本
該策略通過聚合和調整來自相似但較大數據集的輸入-輸出對來增強性能。
選擇使用哪種增強策略取決于應用程序。有時,目標任務(或類)存在大量弱監督或未標記的樣本,但由于收集注釋數據和/或計算成本高,因此小樣本學習是首選的。現有的方法主要是針對圖像設計的,因為生成的圖像可以很容易地由人類進行視覺評估。相比之下,文本和音頻涉及語法和結構,更難生成。
模型
-
多任務學習:
- 參數共享。此策略在任務之間直接共享一些參數。eg:兩個任務網絡共享通用信息的前幾層,并學習不同的最終層以處理不同的輸出。
- 參數綁定:正則化對齊不同任務。
-
嵌入學習:將每一個例子embed(嵌入)一個低維,這樣相似的樣本靠的很近,而不同的樣本則更容易區分。同時可以構造更小的假設空間KaTeX parse error: Undefined control sequence: \cal at position 1: \?c?a?l? ?H。嵌入學習主要從先驗知識中學習。
根據嵌入函數和參數是否隨任務改變,將FSL分為三種
-
特定于任務的嵌入模型
-
任務不變了嵌入模型
-
混合嵌入模型
-
-
用外部記憶學習:使用額外的存儲器從訓練集中學習知識并保存起來(key-value的鍵值槽)。與嵌入學習不同的是,測試集不直接用這種方式表示,只基于額外存儲的內存的相似性,進行預測。
-
生成模型:從先驗知識中觀察到的x估計的概率分布P(x)。
算法
假設θ\thetaθ是在H\mathcal HH上能獲得最好的h?h^{*}h?,算法通過(i)提供良好的初始化參數θ0θ_0θ0?,或(ii)直接學習優化器以輸出搜索步驟,使用先驗知識來影響θ的獲取方式。根據先驗知識對搜索策略的影響,分為以下三類
-
細化現存參數
-
通過正則化微調現有參數
-
早停
-
選擇性更新θ0\theta_0θ0?:僅更新一部分θ0\theta_0θ0?防止過擬合
-
一起更新θ0\theta_0θ0?相關部分:可以將θ0θ_0θ0?的元素分組(例如深層神經網絡中的神經元),并使用相同的更新信息對每組進行聯合更新。
-
使用模型回歸網絡:捕獲了任務不可知變換,該變換映射了通過對幾個示例進行訓練獲得的參數值。
- 聚合一組參數:有時,我們沒有一個合適的θ0開始。相反,我們有許多從相關任務中學習的模型。例如,在人臉識別中,我們可能已經有了眼睛、鼻子和耳朵的識別模型。因此,可以將這些模型參數聚合到一個合適的模型中,然后直接使用該模型或通過訓練集進行細化
- 使用新參數微調現有參數:使用新參數微調現有參數。預先訓練的θ0可能不足以完全編碼新的FSL任務。因此,使用一個附加參數δ來考慮特殊性。具體來說,該策略將模型參數擴展為θ={θ0,δ},并在學習δ的同時微調θ0。
-
-
細化元學習參數:使用元學習來細化參數θ0\theta_0θ0?,它持續被元學習器更新。
一種代表性的方法是模型不可知元學習(MAML)
- 包含特定于任務的信息:一般MAML為所有任務提供相同的初始化。但是,這忽略了特定于任務的信息,只有當任務集非常相似時才適用。
- 使用元學習θ0θ_0θ0?建模不確定性:通過幾個例子學習不可避免地會導致模型具有更高的不確定性。因此,所學習的模型可能無法以高置信度對新任務執行預測。測量這種不確定性的能力為主動學習和進一步的數據收集提供了提示。
- 改進精煉程序:通過幾個梯度下降步驟進行細化可能不可靠。正則化可用于糾正下降方向。
-
學習優化器:不使用梯度下降,而是學習一個優化器,該優化器可以直接輸出更新。這樣就不需要調整步長α或找到搜索方向,因為學習算法會自動完成這項工作。
在第t次迭代中,這一行的工作學習一個元學習器,它接受在(t-1)處計算的錯誤信號,并直接輸出更新△?t?1\triangle\phi_{t-1}△?t?1?,更新特定于任務的參數?t=?t?1+△?t?1\phi_{t}=\phi_{t-1}+\triangle\phi_{t-1}?t?=?t?1?+△?t?1?
未來工作
問題
大多使用數據增強的方式,
可能的方向是多模態在FSL中的設計
技術
元學習
避免災難性遺忘
自動機器學習(Automated machine learning)
應用
計算機視覺(除了字符識別和圖像分類外,還考慮了其他圖像應用。其中包括物體識別[35,36,82]、字體樣式轉換[7]、短語基礎[162]、圖像檢索[130]、物體跟蹤[14]、圖像中的特定物體計數[162]、場景位置識別[74]、手勢識別[102]、部分標記[24]、圖像生成[34,76,107,109]、跨域圖像翻譯[12],三維對象的形狀視圖重建[47],以及圖像字幕和視覺問答[31]。FSL還成功地應用于視頻應用,包括運動預測[50]、視頻分類[164]、動作定位[152]、人員重新識別[148]、事件檢測[151]和對象分割)
機器人學:機器仿生,模仿人的動作等。
自然語言處理(解析[64]、翻譯[65]、句子完成(使用從提供的集合中選擇的單詞填空)[97138]、簡短評論中的情感分類[150157]、對話系統的用戶意圖分類[157]、刑事指控預測[61]、詞語相似性任務,如nonce定義[56125]和多標簽文本分類[110]。最近,發布了一個名為FewRel[52]的新關系分類數據集。這彌補了自然語言處理中FSL任務基準數據集的不足)
聲音信號處理:最近的努力是語音合成。一項流行的任務是從用戶的幾個音頻樣本中克隆語音
其他:曲線擬合,醫療,推理方面
理論
通過考慮一種特定的元學習方法,在中考察了將一項任務中訓練的模型轉移到另一項任務中的風險。然而,到目前為止,只有少數方法得到了研究。還有很多理論問題需要探討。
元學習者學習深層網絡的較低層,而學習者學習最后一層,全部使用梯度下降。對元學習方法的收斂性進行更全面的分析將非常有用
論文總結
這篇文章總結了近年來小樣本領域的各項工作,取得的成就,研究的多種方法,并介紹了未來的發展和研究難點,讓我對小樣本學習產生了濃厚的興趣,以上內容純屬自己記錄,如有不對請讀者指出,如有同志歡迎一起積極探討。
總結
以上是生活随笔為你收集整理的本科毕设研究记录(一)————小样本综述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java学习笔记11-1——Spring
- 下一篇: Sqoop拒绝连接错误