0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

樣本量極少可以訓(xùn)練機(jī)器學(xué)習(xí)模型嗎?

深度學(xué)習(xí)自然語言處理 ? 來源:極市平臺(tái) ? 作者:鼓動(dòng)衣衫的晚風(fēng) ? 2021-06-23 15:02 ? 次閱讀

本文首先介紹了用小樣本訓(xùn)練模型會(huì)導(dǎo)致的問題,再介紹了Few-Shot Learning的基本原理即三大思路下的方法:增多訓(xùn)練數(shù)據(jù),縮小模型需要搜索的空間,優(yōu)化搜索最優(yōu)模型的過程。

1. 樣本量極少可以訓(xùn)練機(jī)器學(xué)習(xí)模型嗎?

在訓(xùn)練樣本極少的情況下(幾百個(gè)、幾十個(gè)甚至幾個(gè)樣本),現(xiàn)有的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型普遍無法取得良好的樣本外表現(xiàn),用小樣本訓(xùn)練的模型很容易陷入對(duì)小樣本的過擬合以及對(duì)目標(biāo)任務(wù)的欠擬合。但基于小樣本的模型訓(xùn)練又在工業(yè)界有著廣泛的需求(單用戶人臉和聲紋識(shí)別、藥物研發(fā)、推薦冷啟動(dòng)、欺詐識(shí)別等樣本規(guī)模小或數(shù)據(jù)收集成本高的場(chǎng)景),F(xiàn)ew-Shot Learning(小樣本學(xué)習(xí))通過將有限的監(jiān)督信息(小樣本)與先驗(yàn)知識(shí)(無標(biāo)記或弱標(biāo)記樣本、其他數(shù)據(jù)集和標(biāo)簽、其他模型等)結(jié)合,使得模型可以有效的學(xué)習(xí)小樣本中的信息。

在介紹Few-Shot Learning的基本原理之前,首先需要知道用小樣本訓(xùn)練模型究竟會(huì)導(dǎo)致什么問題。機(jī)器學(xué)習(xí)的目標(biāo)就是盡可能降低模型結(jié)果與真實(shí)結(jié)果的誤差,而這個(gè)誤差可以進(jìn)一步分解成兩部分:

approximation error:基于現(xiàn)有的特征和算法能訓(xùn)練的最優(yōu)模型h*能達(dá)到的表現(xiàn),跟理論上最優(yōu)模型h^的表現(xiàn)的差距

estimation error:實(shí)際訓(xùn)練的模型h_I的表現(xiàn)與基于現(xiàn)有的特征和算法能訓(xùn)練的最優(yōu)模型h*能達(dá)到的表現(xiàn)的差距;

在小樣本任務(wù)中,用小樣本訓(xùn)練的模型很容易陷入對(duì)小樣本的過擬合以及對(duì)目標(biāo)任務(wù)的欠擬合,導(dǎo)致實(shí)際訓(xùn)練的模型h_I的表現(xiàn)與基于現(xiàn)有的特征和算法能訓(xùn)練的最優(yōu)模型h*能達(dá)到的表現(xiàn)的差距無法通過訓(xùn)練和超參數(shù)調(diào)整有效的縮小,使模型的整體表現(xiàn)較差。

根據(jù)機(jī)器學(xué)習(xí)模型在小樣本上難以學(xué)習(xí)的原因,F(xiàn)ew-Shot Learning從三個(gè)角度解決問題,(1)通過增多訓(xùn)練數(shù)據(jù)提升h_I(Data)、(2)縮小模型需要搜索的空間(Model)、以及(3)優(yōu)化搜索最優(yōu)模型的過程(Algorithm)。

2. Few-Shot Learning概述

下面將逐個(gè)介紹第一部分提到的Few-Shot Learning的三大思路下的方法。

2.1 增多訓(xùn)練數(shù)據(jù)

通過prior knowledge增多訓(xùn)練數(shù)據(jù) (Experience),方法主要分為3類:

(1)數(shù)據(jù)增強(qiáng)(Data Augmentation)類方法。較初級(jí)的數(shù)據(jù)增強(qiáng)方法是人工制定規(guī)則,包括對(duì)圖片樣本進(jìn)行旋轉(zhuǎn)、翻轉(zhuǎn)、裁剪、增加噪音等操作,但此類方法不足以有效提升模型的泛化能力,規(guī)則的制定也依賴領(lǐng)域知識(shí),通常難以做到在多個(gè)數(shù)據(jù)集之間通用;高階的數(shù)據(jù)增強(qiáng)方法利用其他數(shù)據(jù)集的信息生成更多目標(biāo)class的樣本,通過模型(多為encoder-decoder結(jié)構(gòu))學(xué)習(xí)樣本內(nèi)和樣本外的變化分布并生成新樣本,基于樣本外信息(有監(jiān)督)的模型可以將圖片映射為的不同的天氣、景深、角度等,基于樣本內(nèi)變化(無監(jiān)督)的模型則學(xué)習(xí)其他class的樣本內(nèi)部變化(如圖片的不同視角)并應(yīng)用于目標(biāo)的小樣本class上。數(shù)據(jù)增強(qiáng)類方法可與其他Few-Shot Learning方法同時(shí)使用,普遍用于計(jì)算機(jī)視覺場(chǎng)景,但部分高階方法有應(yīng)用于其他場(chǎng)景的潛力。關(guān)于數(shù)據(jù)增強(qiáng)類方法的更多介紹和reference見2020年清華和滴滴的paper"Learning from Very Few Samples: A Survey"。

(2)基于弱標(biāo)記樣本或無標(biāo)記樣本得到更多目標(biāo)class樣本,主要包括半監(jiān)督學(xué)習(xí)和主動(dòng)學(xué)習(xí)兩類。半監(jiān)督學(xué)習(xí)的典型例子是Positive-Unlabeled Learning,很多Two-step算法通過正樣本和無標(biāo)記樣本訓(xùn)練分類器,直接擴(kuò)大正樣本規(guī)模、或利用分類器權(quán)重讓無標(biāo)記樣本參與到正樣本的學(xué)習(xí)中;而主動(dòng)學(xué)習(xí)選擇對(duì)模型訓(xùn)練最“有用”的樣本進(jìn)行標(biāo)注。半監(jiān)督學(xué)習(xí)和主動(dòng)學(xué)習(xí)適合有大量無標(biāo)記數(shù)據(jù)、但樣本標(biāo)注成本較高的場(chǎng)景。

(3)基于目標(biāo)Class的小樣本數(shù)據(jù)訓(xùn)練GAN,直接生成目標(biāo)class的更多樣本。適用于僅有小樣本、無標(biāo)記樣本很難收集的場(chǎng)景。

2.2 縮小模型需要搜索的空間

通過prior knowledge縮小模型需要搜索的空間(hypothesis space),多為meta-learning類方法。

(1)Multi-task learning:

神經(jīng)網(wǎng)絡(luò)同時(shí)學(xué)習(xí)多個(gè)任務(wù),使一部分隱藏層關(guān)注跨任務(wù)的通用信息、一部分隱藏層關(guān)注特定任務(wù)的信息。在學(xué)習(xí)過程中,一個(gè)任務(wù)的模型參數(shù)被其他任務(wù)約束,即任務(wù)之間會(huì)有類似正則化的效果。分為直接在不同任務(wù)間共享部分隱藏層的參數(shù)的parameter sharing類方法,和懲罰不同任務(wù)的參數(shù)差異的parameter typing類方法。此類方法的缺點(diǎn)也很明顯,用于訓(xùn)練的多個(gè)任務(wù)(包括目標(biāo)的小樣本在內(nèi))若不夠相似(理想狀況下各個(gè)任務(wù)都屬于一個(gè)多分類任務(wù))則會(huì)影響最終學(xué)習(xí)效果,且同時(shí)訓(xùn)練多個(gè)任務(wù)的計(jì)算成本很高、速度很慢。詳細(xì)介紹和reference見2020年香港科技大學(xué)和第四范式的paper“Generalizing from a Few Examples: A Survey on Few-Shot Learning”。

(2)Embedding learning:

將樣本投影到更易區(qū)分不同class的低維空間,維度更低、特征表示更容易區(qū)分不同class意味著模型需要搜索的空間更小。用于投影的embedding function通常從prior knowledge中學(xué)習(xí),也可以利用目標(biāo)class的小樣本的信息。Metric Learning和Meta-Learning中的Learn-to-Measure類算法均屬于這一類別,通過學(xué)習(xí)embedding function (訓(xùn)練數(shù)據(jù)的f(x)和測(cè)試數(shù)據(jù)的g(x)),采用訓(xùn)練樣本和測(cè)試樣本的embedding的相似度作為測(cè)試樣本屬于相應(yīng)訓(xùn)練樣本的class的概率,相似度可以采用相似度指標(biāo)(Euclidean、Cosine等)或可學(xué)習(xí)的相似度模型(神經(jīng)網(wǎng)絡(luò))。此類算法的詳細(xì)介紹見2020年香港科技大學(xué)和第四范式的paper“Generalizing from a Few Examples: A Survey on Few-Shot Learning”的4.2和4.3.1。

(3)Learning with external memory

記憶網(wǎng)絡(luò),常用于NLP場(chǎng)景和問答系統(tǒng),從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)key-value pair作為一個(gè)個(gè)記憶,與embedding learning相似需要學(xué)習(xí)一個(gè)embedding function f,但需要計(jì)算相似度的是樣本的embedding f(x)和記憶庫里的key,最相似的value作為該樣本的embedding(或取多個(gè)最相似的value的加權(quán)平均),隨后輸入一個(gè)簡(jiǎn)單的分類器(e.g. softmax)。將query樣本的embedding限制為記憶庫里的value極大的縮小了模型需要搜索的空間(hypothesis space),但為了學(xué)習(xí)和存儲(chǔ)記憶,此類方法通常需要較大的空間占用和計(jì)算成本。

(4)Generative Modeling

借助prior knowledge估計(jì)樣本概率分布p(x|y)和p(y),以latent variable的形式參與到小樣本任務(wù)的訓(xùn)練中,縮小模型需要搜索的空間(hypothesis space)。latent variable可以有三種表現(xiàn)形式,decomposable components(例如人臉識(shí)別場(chǎng)景中的鼻子、眼睛、嘴)、group-wise shared prior(小樣本任務(wù)可能與其他任務(wù)相似,那么其他任務(wù)的概率分布就可以作為小樣本任務(wù)的先驗(yàn)概率)、parameters of inference networks(基于大規(guī)模數(shù)據(jù)集訓(xùn)練推斷網(wǎng)絡(luò)并直接用于小樣本任務(wù),基于VAE和GAN的居多),詳細(xì)reference見2020年香港科技大學(xué)和第四范式的paper“Generalizing from a Few Examples: A Survey on Few-Shot Learning”的4.4.3。

2.3 優(yōu)化搜索最優(yōu)模型的過程

通過prior knowledge優(yōu)化在hypothesis space中搜索最優(yōu)模型的過程(即模型訓(xùn)練過程)。包括refine existing parameters(遷移學(xué)習(xí))、refine meta-learned parameters(Meta-Learning中的Learn to fine-tune和learn to parameterize均屬于這個(gè)類別,借助meta-learner幫助base learner更快的收斂)、learn the optimizer(訓(xùn)練meta-learner指導(dǎo)梯度下降的方向和步長(zhǎng))。此類方法可以極大加快搜索最優(yōu)模型的過程,但存在為了速度犧牲精度的成分、且受元學(xué)習(xí)領(lǐng)域常見的難題的影響較大(例如如何在不同粒度的任務(wù)間元學(xué)習(xí) e.g. 動(dòng)物物種和狗的種類,以及如何避免元學(xué)習(xí)時(shí)不同任務(wù)對(duì)參數(shù)的影響的相互中和)。

責(zé)任編輯:lq6

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴

原文標(biāo)題:樣本量極少如何機(jī)器學(xué)習(xí)?最新Few-Shot Learning綜述

文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    AI大模型與傳統(tǒng)機(jī)器學(xué)習(xí)的區(qū)別

    AI大模型與傳統(tǒng)機(jī)器學(xué)習(xí)在多個(gè)方面存在顯著的區(qū)別。以下是對(duì)這些區(qū)別的介紹: 一、模型規(guī)模與復(fù)雜度 AI大模型 :通常包含數(shù)十億甚至數(shù)萬億的參
    的頭像 發(fā)表于 10-23 15:01 ?292次閱讀

    直播預(yù)約 |數(shù)據(jù)智能系列講座第4期:預(yù)訓(xùn)練的基礎(chǔ)模型下的持續(xù)學(xué)習(xí)

    神經(jīng)網(wǎng)絡(luò),特別是預(yù)訓(xùn)練的基礎(chǔ)模型研究得到了廣泛的應(yīng)用,但其仍然主要依賴于在大量樣本上的批量式訓(xùn)練。本報(bào)告將探討實(shí)現(xiàn)模型的增量式
    的頭像 發(fā)表于 10-18 08:09 ?134次閱讀
    直播預(yù)約 |數(shù)據(jù)智能系列講座第4期:預(yù)<b class='flag-5'>訓(xùn)練</b>的基礎(chǔ)<b class='flag-5'>模型</b>下的持續(xù)<b class='flag-5'>學(xué)習(xí)</b>

    pycharm如何訓(xùn)練機(jī)器學(xué)習(xí)模型

    PyCharm是一個(gè)流行的Python集成開發(fā)環(huán)境(IDE),它提供了豐富的功能,包括代碼編輯、調(diào)試、測(cè)試等。在本文中,我們將介紹如何在PyCharm中訓(xùn)練機(jī)器學(xué)習(xí)模型。 一、安裝Py
    的頭像 發(fā)表于 07-11 10:14 ?617次閱讀

    預(yù)訓(xùn)練和遷移學(xué)習(xí)的區(qū)別和聯(lián)系

    預(yù)訓(xùn)練和遷移學(xué)習(xí)是深度學(xué)習(xí)機(jī)器學(xué)習(xí)領(lǐng)域中的兩個(gè)重要概念,它們?cè)谔岣?b class='flag-5'>模型性能、減少
    的頭像 發(fā)表于 07-11 10:12 ?717次閱讀

    如何理解機(jī)器學(xué)習(xí)中的訓(xùn)練集、驗(yàn)證集和測(cè)試集

    理解機(jī)器學(xué)習(xí)中的訓(xùn)練集、驗(yàn)證集和測(cè)試集,是掌握機(jī)器學(xué)習(xí)核心概念和流程的重要一步。這三者不僅構(gòu)成了模型
    的頭像 發(fā)表于 07-10 15:45 ?2921次閱讀

    tensorflow簡(jiǎn)單的模型訓(xùn)練

    在本文中,我們將詳細(xì)介紹如何使用TensorFlow進(jìn)行簡(jiǎn)單的模型訓(xùn)練。TensorFlow是一個(gè)開源的機(jī)器學(xué)習(xí)庫,廣泛用于各種機(jī)器
    的頭像 發(fā)表于 07-05 09:38 ?472次閱讀

    Al大模型機(jī)器

    豐富的知識(shí)儲(chǔ)備。它們可以涵蓋各種領(lǐng)域的知識(shí),并能夠回答相關(guān)問題。靈活性與通用性: AI大模型機(jī)器人具有很強(qiáng)的靈活性和通用性,能夠處理各種類型的任務(wù)和問題。持續(xù)學(xué)習(xí)和改進(jìn): 這些
    發(fā)表于 07-05 08:52

    人臉識(shí)別模型訓(xùn)練失敗原因有哪些

    : 1.1 數(shù)據(jù)不足 人臉識(shí)別模型需要大量的數(shù)據(jù)進(jìn)行訓(xùn)練,以提高模型的泛化能力。如果數(shù)據(jù)不足,模型
    的頭像 發(fā)表于 07-04 09:17 ?508次閱讀

    人臉識(shí)別模型訓(xùn)練是什么意思

    人臉識(shí)別模型訓(xùn)練是指通過大量的人臉數(shù)據(jù),使用機(jī)器學(xué)習(xí)或深度學(xué)習(xí)算法,訓(xùn)練出一個(gè)能夠識(shí)別和分類人臉
    的頭像 發(fā)表于 07-04 09:16 ?435次閱讀

    預(yù)訓(xùn)練模型的基本原理和應(yīng)用

    預(yù)訓(xùn)練模型(Pre-trained Model)是深度學(xué)習(xí)機(jī)器學(xué)習(xí)領(lǐng)域中的一個(gè)重要概念,尤其是在自然語言處理(NLP)和計(jì)算機(jī)視覺(CV)
    的頭像 發(fā)表于 07-03 18:20 ?2120次閱讀

    解讀PyTorch模型訓(xùn)練過程

    PyTorch作為一個(gè)開源的機(jī)器學(xué)習(xí)庫,以其動(dòng)態(tài)計(jì)算圖、易于使用的API和強(qiáng)大的靈活性,在深度學(xué)習(xí)領(lǐng)域得到了廣泛的應(yīng)用。本文將深入解讀PyTorch模型
    的頭像 發(fā)表于 07-03 16:07 ?846次閱讀

    深度學(xué)習(xí)模型訓(xùn)練過程詳解

    深度學(xué)習(xí)模型訓(xùn)練是一個(gè)復(fù)雜且關(guān)鍵的過程,它涉及大量的數(shù)據(jù)、計(jì)算資源和精心設(shè)計(jì)的算法。訓(xùn)練一個(gè)深度學(xué)習(xí)模型
    的頭像 發(fā)表于 07-01 16:13 ?1019次閱讀

    【大語言模型:原理與工程實(shí)踐】大語言模型的應(yīng)用

    設(shè)計(jì)提示詞時(shí),需要明確輸出需求,以便得到滿意的結(jié)果。 推理引導(dǎo)如前文所述,提示工程對(duì)于訓(xùn)練大語言模型的逐步推理能力至關(guān)重要。零樣本提示大語言模型展現(xiàn)了卓越的零
    發(fā)表于 05-07 17:21

    【大語言模型:原理與工程實(shí)踐】大語言模型的預(yù)訓(xùn)練

    大語言模型的核心特點(diǎn)在于其龐大的參數(shù)量,這賦予了模型強(qiáng)大的學(xué)習(xí)容量,使其無需依賴微調(diào)即可適應(yīng)各種下游任務(wù),而更傾向于培養(yǎng)通用的處理能力。然而,隨著學(xué)習(xí)容量的增加,對(duì)預(yù)
    發(fā)表于 05-07 17:10

    深度學(xué)習(xí)如何訓(xùn)練出好的模型

    算法工程、數(shù)據(jù)派THU深度學(xué)習(xí)在近年來得到了廣泛的應(yīng)用,從圖像識(shí)別、語音識(shí)別到自然語言處理等領(lǐng)域都有了卓越的表現(xiàn)。但是,要訓(xùn)練出一個(gè)高效準(zhǔn)確的深度學(xué)習(xí)模型并不容易。不僅需要有高質(zhì)量的數(shù)
    的頭像 發(fā)表于 12-07 12:38 ?1035次閱讀
    深度<b class='flag-5'>學(xué)習(xí)</b>如何<b class='flag-5'>訓(xùn)練</b>出好的<b class='flag-5'>模型</b>