2018 年 Anderson 等人提出了視覺語言導(dǎo)航(Vision-and-Language Navigation,VLN)任務(wù)和對應(yīng)的基準數(shù)據(jù)集(Room-to-Room Dataset)。該任務(wù)旨在探究智能體是否能在仿真模擬環(huán)境中遵循自然語言指令,因此可以形式化的評估智能體是否具有跨模態(tài)的理解能力。先前的工作取得了長足的進步,然而少有工作專注于探究智能體是否充分學(xué)習(xí)了數(shù)據(jù)中的信息,或者說,智能體是一個好學(xué)生嗎?在計算機視覺領(lǐng)域,Hlynsson 等人試圖通過衡量數(shù)據(jù)效率來回答這個問題。具體而言,該工作將模型性能作為數(shù)據(jù)集大小的函數(shù),并衡量在不同規(guī)模數(shù)據(jù)集上模型的性能。在視覺語言導(dǎo)航領(lǐng)域,Huang 等人開發(fā)了基于神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)鑒別器(discriminator),可以過濾低質(zhì)量的指令路徑對以提升智能體的學(xué)習(xí)效率。而在本文中,我們試圖回答:能否在不更改模型結(jié)構(gòu)和不修改數(shù)據(jù)的情況下進一步提升智能體?
我們監(jiān)控了智能體在導(dǎo)航過程中所犯的第一個錯誤,并在下圖中展示了不同錯誤的比率。我們發(fā)現(xiàn)當(dāng)智能體導(dǎo)航失敗時,大約 50% 的錯誤是由代理錯誤地預(yù)測下一個室內(nèi)方向引起的。此類錯誤的比例隨著導(dǎo)航任務(wù)跨越更多房間而降低,但仍保持在一個較高水平。這些現(xiàn)象表明導(dǎo)航智能體受限于它在一個房間內(nèi)和兩個房間之間導(dǎo)航的能力。因此,我們認為傳統(tǒng)學(xué)習(xí)過程使得智能體不能充分地學(xué)習(xí)數(shù)據(jù)中的信息,采用類似范式進行訓(xùn)練的導(dǎo)航智能體很可能被低估了。
02 Methods
智能體在這些簡單案例上的糟糕表現(xiàn)激勵我們借鑒課程學(xué)習(xí)的想法。課程學(xué)習(xí)是一類關(guān)注數(shù)據(jù)集中樣本難度的分布的訓(xùn)練范式,由 Bengio 于 2009 年提出,主要思想是模仿人類學(xué)習(xí)的特點,讓模型先從容易的樣本開始學(xué)習(xí),并逐漸進階到復(fù)雜的樣本和知識。本文借鑒了課程學(xué)習(xí)的理念,首創(chuàng)性地提出了基于課程的 VLN 訓(xùn)練范式。
首先,我們?yōu)閷?dǎo)航任務(wù)設(shè)計了合適的課程。從抽象角度看,課程被視為一系列訓(xùn)練準則。每個訓(xùn)練準則都與訓(xùn)練樣本上的一組不同的權(quán)重相關(guān)聯(lián),或更普遍地,與訓(xùn)練樣本分布的重新加權(quán)有關(guān)。要定義課程,首先需要定義樣本的難度。對于人類來說,很容易在很小的范圍內(nèi)找到特定物體或地點。在經(jīng)過簡單的探索后,人類就可以利用有關(guān)環(huán)境的知識來完成更艱巨的任務(wù)。因此,我們假設(shè)路徑 可以覆蓋的房間數(shù)量 主導(dǎo)了導(dǎo)航任務(wù)的難度級別。我們建議根據(jù) 對基準數(shù)據(jù)集R2R數(shù)據(jù)集進行重新劃分,劃分后的數(shù)據(jù)集如下表所示:
我們認為從簡單到困難的數(shù)據(jù)集劃分方式使得對智能體在這些子集上的學(xué)習(xí)與玩街機游戲非常相似,因此我們根據(jù)子集中樣本的難度將訓(xùn)練集的各個子集命名為第一回合(Round 1)至第五回合(Round 5)。從平均路徑長度、平均指令長度和全景圖覆蓋率可以看出,我們劃分的數(shù)據(jù)子集呈現(xiàn)出明顯的階梯特征。這說明我們對數(shù)據(jù)集難度的劃分是合理的。新數(shù)據(jù)集被稱為為課程學(xué)習(xí)設(shè)計的R2R數(shù)據(jù)集(R2R for curriculum learning dataset,CLR2R dataset)。
有許多方法可以應(yīng)用在 CLR2R 數(shù)據(jù)集上。如果我們將每個子集都視為一個課程,則 CLR2R 適用于自動課程學(xué)習(xí)。如果我們將整個數(shù)據(jù)集視為一個大課程,則每個回合中的樣本應(yīng)被賦予相同的優(yōu)先級,因此可以使用自定進度的課程學(xué)習(xí)。在本文中,我們將重點放在后一種模式上。
由 Jiang 等人提出的自定進度課程學(xué)習(xí)(Self-Paced Curriculum Learning,SPCL)是一種“師生協(xié)作”學(xué)習(xí)方法,它在統(tǒng)一框架中考慮了訓(xùn)練之前人類對于數(shù)據(jù)的先驗知識和訓(xùn)練過程中智能體對數(shù)據(jù)的學(xué)習(xí)進度。具體而言,SPCL 的目標(biāo)損失函數(shù)定義為
其中 表示參數(shù)化的導(dǎo)航智能體, 是反映樣本重要性的權(quán)重變量。 稱為控制學(xué)習(xí)方案的自定進度函數(shù), 是限制學(xué)習(xí)速度的超參數(shù)。 是編碼預(yù)定課程表(predetermined curriculum)信息的可行區(qū)域。本文將 CLR2R 數(shù)據(jù)集看作一個完整的課程。因此每個回合中的樣本應(yīng)被賦予相同的課程等級。因此,在 CLR2R 數(shù)據(jù)集上只需 5 個標(biāo)量就足以定義課程區(qū)域的參數(shù)向量。Jiang 等人討論了一些自定進度函數(shù)的具體形式,在本文中, 我們主要關(guān)注兩種較為簡單的自定進度函數(shù):二進制方案(binary scheme)和線性方案(linear scheme)。
容易發(fā)現(xiàn),公式(1)中的兩個參數(shù)是可以交替優(yōu)化的。具體而言,對于參數(shù) 的優(yōu)化是一個凸優(yōu)化問題,
在 和簡單自定進度函數(shù)的條件下具有封閉解。本質(zhì)上公式(2)是一個線性約束凸優(yōu)化問題。對于一般的課程區(qū)域 我們可以應(yīng)用投影梯度下降法(Projected Gradient Descent,PGD)來獲得最優(yōu)權(quán)重 。
通常, 公式(1)中的優(yōu)化問題可以采用交替凸搜索算法(Alternative Convex Search,ACS)求解。原始算法的主要問題是在第 4 步,其中使用固定的最新權(quán)重向量 來學(xué)習(xí)最佳模型參數(shù) 。在基于神經(jīng)網(wǎng)絡(luò)的導(dǎo)航智能體的訓(xùn)練中,由于梯度下降方法優(yōu)化的神經(jīng)網(wǎng)絡(luò)缺乏全局最優(yōu)保證以及計算復(fù)雜度問題,我們不可能計算的確切最優(yōu)值。因此本文建議無需計算確切的最小值,將原算法中的第 4 步替換為機器學(xué)習(xí)訓(xùn)練范式中的多個梯度下降更新步驟。這樣做能使算法的速度加快,并且此時權(quán)重向量 實際上是通過考慮 “當(dāng)前”學(xué)習(xí)進度而不是 “最終” 學(xué)習(xí)進度來更新的。
03 Experiments
3.1 Setup
在實驗中,我們采用了三種訓(xùn)練范式
機器學(xué)習(xí): 對訓(xùn)練數(shù)據(jù)集進行一致采樣(Uniform Sampling),采樣得到的數(shù)據(jù)作為批數(shù)據(jù)(mini-batch)呈遞給模型進行學(xué)習(xí)。
樸素課程學(xué)習(xí)(Na?ve Curriculum Learning):對訓(xùn)練集中的樣本從易到難進行排序,按照從易到難的順序?qū)颖境蔬f給模型進行學(xué)習(xí)。具體而言, 智能體首先在 CLR2R 數(shù)據(jù)集的 Round 1 子集上進行學(xué)習(xí), 然后在 Round 1~2 子集上進行學(xué)習(xí), 最終在集合 Round 1~5 (也就是 R2R 的訓(xùn)練集) 上進行學(xué)習(xí)。
自定進度課程學(xué)習(xí)(Self-Paced Curriculum Learning):如前所述,為了應(yīng)用 SPCL 算法,我們需要首先確定課程區(qū)域和自定進度函數(shù)。對于課程區(qū)域,我們假設(shè) CLR2R 數(shù)據(jù)集中每個 Round 子集中的樣本都具有相同的難度,因此我們設(shè)置 Round 。對于自定進度的函數(shù),由于在導(dǎo)航任務(wù)中每個樣本對于的損失 是不受限的,因此我們選擇二進制方案和線性方案。
3.2 Results
主要結(jié)果:下表提供三個 SOTA 智能體在不同的訓(xùn)練設(shè)置下在驗證集的上的實驗結(jié)果。實驗表明,采用自定進度課程學(xué)習(xí)訓(xùn)練的智能體在已見和未見的驗證劃分上都可以達到最佳性能。
學(xué)習(xí)速率:整體而言,相比于傳統(tǒng)機器學(xué)習(xí),采用自定進度課程學(xué)習(xí)訓(xùn)練的智能體在迭代相同的次數(shù)之后可以獲得更優(yōu)的性能表現(xiàn)。相同精度的結(jié)果,采用自定進度課程學(xué)習(xí)所需要的循環(huán)次數(shù)大大減少。這說明自定進度課程學(xué)習(xí)不僅可以提升模型的性能,還可以優(yōu)化模型的訓(xùn)練效率。
SPCL 超參數(shù)魯棒性:為了理解權(quán)重 初始化和步長 的選擇對自定進度課程學(xué)習(xí)的影響,我們對這兩個超參數(shù)進行網(wǎng)格搜索,結(jié)果如圖所示。下圖表明,自定進度課程學(xué)習(xí)對權(quán)重初始化和步長選擇并不敏感,在大多數(shù)情況下采用自定進度課程學(xué)習(xí)訓(xùn)練的導(dǎo)航智能體在驗證集上的結(jié)果都要優(yōu)于機器學(xué)習(xí)基準。
損失地形:為了探究自定進度課程學(xué)習(xí)為何能夠提升導(dǎo)航智能體的性能,我們遵循計算機視覺分析批歸一化采用的方法,通過計算最大和最小損失之間的距離來研究智能體訓(xùn)練期間的損失地形。結(jié)果如圖所示。一般而言,我們的實驗結(jié)果與理論結(jié)果一致,即課程學(xué)習(xí)可以有效地平滑優(yōu)化環(huán)境、改善損失地形。
遷移學(xué)習(xí):使用課程學(xué)習(xí)訓(xùn)練 的智能體既可以保持在 R2R 數(shù)據(jù)集上的導(dǎo)航性能,也能夠遷移到 RxR-en 數(shù)據(jù)集上完成更難的導(dǎo)航任務(wù)。
與預(yù)訓(xùn)練方法結(jié)合:為了探究采用課程學(xué)習(xí)范式訓(xùn)練的導(dǎo)航智能體是否也可以從預(yù)訓(xùn)練方法中受益,我們將智能體與基于視覺語言 Transformer 的模型 VLN-BERT(Majumdar 等,2020)相結(jié)合。我們將束搜索大小限制為 5,并純粹使用 VLN-BERT 模型來評分和選擇路徑-指令對。在未見驗證劃分上的結(jié)果如圖所示。Beam search 和 VLN-BERT 都可以提高智能體的導(dǎo)航性能。通過基于課程的方法訓(xùn)練的導(dǎo)航智能體獲得更多改進。
04 Conclusion
我們首先建議將有關(guān)訓(xùn)練樣本的人類先驗知識整合到導(dǎo)航智能體的訓(xùn)練過程中,首先提出采用課程學(xué)習(xí)對導(dǎo)航智能體進行訓(xùn)練。
我們?yōu)橐曈X語言導(dǎo)航任務(wù)設(shè)計了第一個課程,并基于 Room-to-Room ( ) 數(shù)據(jù)集構(gòu)建了可用于課程學(xué)習(xí)的第一個 VLN 數(shù)據(jù)集。
我們采用自定進度課程學(xué)習(xí)提出了一種導(dǎo)航智能體的訓(xùn)練范式。這種訓(xùn)練范式能在不增加模型復(fù)雜度的前提下提高智能體的訓(xùn)練效率和性能。
我們驗證了課程學(xué)習(xí)的作用是平滑損失函數(shù) (smooth loss landscape),從而加速學(xué)習(xí)進度、使智能體收斂到更好的局部最優(yōu)點。
我們進一步的實驗表明,課程學(xué)習(xí)適用于遷移學(xué)習(xí),并能與預(yù)訓(xùn)練方法相結(jié)合。
責(zé)任編輯:haq
-
機器視覺
+關(guān)注
關(guān)注
163文章
4597瀏覽量
122928 -
導(dǎo)航
+關(guān)注
關(guān)注
7文章
555瀏覽量
43173
原文標(biāo)題:NeurlPS2021 | 視覺語言導(dǎo)航的課程學(xué)習(xí)
文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
請問CYW20835在sleep mode的情況下,不進入SDS或HIDOF的情況下,底電流最低是多少?
在IAR Arm開發(fā)工具鏈中--function_sections編譯選項的使用

在外部實質(zhì)信號不突變的情況下,經(jīng)過AD9278采集到的數(shù)據(jù)突然變小,為什么?
FX2LP如何在不更改硬件的情況下對其進行重新編程?
LT3580在5V出入的情況下,如何修改匝數(shù)比和反饋電阻,輸出200V電壓?
基于液壓系統(tǒng)模型的電機控制
在VDD1沒有供電的情況下,VDD2正常供電的情況下,AMC1200的輸出應(yīng)該是什么狀態(tài)?
PCM4222如何通過PCMEN在不RST情況下控制PCM輸出控制?
在不犧牲尺寸的情況下提高脈搏血氧儀溶液的性能

在不影響性能或占用空間的情況下隔離您的CAN系統(tǒng)

為什么電容在低電壓情況下會發(fā)熱

評論