訂閱
糾錯
加入自媒體

Oral: 自監(jiān)督學(xué)習(xí)-通過輔助推理任務(wù)實(shí)現(xiàn)高效的視覺語義導(dǎo)航

自監(jiān)督學(xué)習(xí)——通過輔助推理任務(wù)實(shí)現(xiàn)高效的視覺語義導(dǎo)航。關(guān)于作者朱峰達(dá)本科畢業(yè)于北航軟件工程系,是蒙納士大學(xué)信息技術(shù)學(xué)院數(shù)據(jù)科學(xué)與人工智能系的博士生,師從蒙納士大學(xué)的常曉軍老師和中山大學(xué)的梁小丹老師。他的研究興趣在于機(jī)器學(xué)習(xí)中的視覺語言導(dǎo)航和推理任務(wù)。

寫在前面:

視覺語言導(dǎo)航(Vision Language Navigation)是一個機(jī)器學(xué)習(xí)的新興任務(wù)。它的目的是讓一個智能體能夠在真實(shí)的3D環(huán)境中根據(jù)自然語言指令導(dǎo)航至正確的地點(diǎn)。這個任務(wù)有很多難點(diǎn):1. 提取并融合視覺和語言的特征 2. 學(xué)習(xí)導(dǎo)航軌跡和房間結(jié)構(gòu)的語義信息 3. 如何在未知的房間中利用已學(xué)習(xí)的知識進(jìn)行探索。

傳統(tǒng)的方法主要著重于視覺和語義特征的提取和融合,并將融合過后的混合特征通過一個策略網(wǎng)絡(luò)生成動作。用這種方式學(xué)到的模型只對特征之間的相似度敏感,而對訓(xùn)練環(huán)境中的隱含信息,比如軌跡的語義和房間的結(jié)構(gòu)沒有直觀認(rèn)識。 而在這篇文章中,我們用自監(jiān)督的方法,從環(huán)境中挖掘了豐富的隱含信息(比如室內(nèi)結(jié)構(gòu)圖或者子軌跡的部分語義信息)。它們?yōu)槲覀兊哪P吞峁┝烁S富的訓(xùn)練信號。

我們提出了四種不同的輔助推理任務(wù):1. 解釋之前的動作 2. 估計導(dǎo)航的進(jìn)度 3. 預(yù)測語言和軌跡的吻合程度 4. 預(yù)測下一步的方向。

我們的實(shí)驗證明這四個輔助推理任務(wù)可以幫助我們模型導(dǎo)航得更精確、更有效率,并且它們可以使模型在沒有標(biāo)注的房間里進(jìn)行自適應(yīng)學(xué)習(xí)。同時,輔助推理任務(wù)可以讓模型具有可解釋性。在測試環(huán)境中,我們通過模型在輔助任務(wù)上的輸出可以更加了解模型的“思考”方式。

一個簡單的例子:

如圖所示為一個用自監(jiān)督輔助任務(wù)來訓(xùn)練導(dǎo)航模型的簡單例子。模型從綠點(diǎn)開始,根據(jù)一個自然語言指令走到目標(biāo)紅點(diǎn)。藍(lán)色的點(diǎn)表示模型下一步可以導(dǎo)航到的位置,也就是隱式的室內(nèi)結(jié)構(gòu)圖。途中每一時刻它都會被要求預(yù)測四個輔助任務(wù)的結(jié)果。輔助任務(wù)帶來的額外信息和語義約束可以幫助模型更好地學(xué)習(xí)這個任務(wù)。 方法細(xì)節(jié)描述

我們提出了一個基于強(qiáng)化學(xué)習(xí)、監(jiān)督學(xué)習(xí)和自監(jiān)督學(xué)習(xí)的混合學(xué)習(xí)框架 (AuxRN) 來完成室內(nèi)導(dǎo)航任務(wù)。 從視覺語言輸入到動作序列預(yù)測。

首先我們要分別編碼歷史視覺信息和全局語義信息。我們將當(dāng)前點(diǎn)的全景圖經(jīng)過一個注意力模塊 Attno 獲得當(dāng)前點(diǎn)的全景視覺編碼,再經(jīng)過一個LSTMv 模塊獲得一個歷史軌跡的視覺編碼。該特征編碼了模型從開始到當(dāng)前步的歷史軌跡。我們再將自然語言指令經(jīng)過一個雙向 LSTM 獲得一組語言的特征編碼。為了將視覺特征和自然語言特征對齊,我們將視覺信息和語言信息通過另一個注意力模塊 Attnw。這一步是為了根據(jù)最近幾步看到的視覺信息找到對應(yīng)的自然語言指令的位置,從而獲得確切的子指令。最后我們從導(dǎo)航模擬器中獲取下一步可導(dǎo)航位置,獲取從當(dāng)前點(diǎn)看向該位置方向的視覺特征,利用一個注意力模塊 Attnc 輸出分類結(jié)果作為下一步要采取的動作。 模型輸出的動作序列使用監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)聯(lián)合訓(xùn)練。監(jiān)督學(xué)習(xí)的數(shù)據(jù)來源于從起點(diǎn)到終點(diǎn)的最短路,而強(qiáng)化學(xué)習(xí)的獎勵函數(shù)來源于當(dāng)前步比上一步距離目標(biāo)點(diǎn)縮短的距離。 

四種輔助推理任務(wù):

在此基礎(chǔ)上,我們提出了四種自監(jiān)督輔助推理任務(wù)來挖掘環(huán)境中的隱含信息。

指令重述任務(wù)

首先我們希望我們的視覺編碼模塊能夠獲得和自然語言指令相同的語義特征。同時為了約束模型的訓(xùn)練過程,讓模型能夠在有限時間內(nèi)收斂,我們簡化了任務(wù)。我們保存每一步的歷史視覺編碼,獲得視覺特征。我們將自然語言句子通過一個LSTM模塊編碼成一組特征向量,將語言和視覺特征通過一個注意力模塊 Attns 融合,再從融合過后的編碼中分離出目標(biāo)詞向量。

進(jìn)度預(yù)測任務(wù)

模型可以通過學(xué)習(xí)導(dǎo)航的進(jìn)度來加深導(dǎo)航任務(wù)的理解。它能幫助模型更好地對齊視覺和語言特征。我們改進(jìn)了之前的工作,用噪音更小的步數(shù)代替距離作為導(dǎo)航進(jìn)度的標(biāo)簽,用交叉熵 (Binary Cross Entropy) 損失函數(shù)代替均方差 (Mean Square Error) 損失函數(shù)。

多模態(tài)匹配任務(wù)

在多模態(tài)匹配任務(wù)中,我們將自然語言特征組經(jīng)過一個均值池化層(在圖中用P表示)獲得一個自然語言特征向量。我們以0.5的概率用數(shù)據(jù)集中的另一條不相關(guān)的自然語言向量替換這個向量(在圖中用S表示)。最后,我們將這個向量和語言特征向量連接(在圖中用C表示)通過兩層全連接層和一層Sigmoid 激活層獲得它們匹配的概率

在實(shí)現(xiàn)的時候,考慮到訓(xùn)練的效率,替換這個操作局限于一個batch內(nèi),我們會把0.5概率選中的自然語言向量用同一batch的另一個自然語言向量代替。這個操作可以并行化。

角度預(yù)測任務(wù)

在一開始我們提到了我們的動作預(yù)測是通過一個注意力機(jī)制實(shí)現(xiàn)的。從導(dǎo)航模擬器中獲取下一步可導(dǎo)航位置的一個候選集。將語言和視覺的融合特征與候選集的視覺特征逐一匹配,選擇匹配度最大的那個作為下一步要走的方向。用這種方式學(xué)到的模型只對特征之間的相似度敏感,而對房間結(jié)構(gòu)沒有顯式的感知。我們可以讓模型預(yù)測下一步要走的方向來約束模型,使其能夠?qū)W到有關(guān)房間結(jié)構(gòu)的信息,而這些信息對導(dǎo)航是有幫助的。

最后,我們將這四個輔助任務(wù)的損失和主函數(shù)的損失加到一起進(jìn)行訓(xùn)練

在這里我們沒有做過多的調(diào)參工作,把各損失的權(quán)重都設(shè)置為1即可。 實(shí)驗結(jié)果

我們的模型在標(biāo)準(zhǔn)視覺語言導(dǎo)航數(shù)據(jù)集(R2R)上取得了第一名的成績。

我們的對比實(shí)驗說明了各個輔助任務(wù)都會對模型的性能有較大提升。并且它們的聯(lián)合訓(xùn)練會進(jìn)一步提升模型的性能。

我們可視化了兩個在測試集上的導(dǎo)航軌跡。在序列開始模型會收到自然語言指令的輸入,指示每一步要走的方向和目標(biāo)物體。每走一步模型都收到一張全景圖作為視覺輸入。紅色箭頭代表模型預(yù)測的下一步去往的方向。我們可以看到模型準(zhǔn)確地到達(dá)了目標(biāo)位置,并且模型能夠準(zhǔn)確預(yù)測導(dǎo)航的進(jìn)度以及軌跡和語言指令的匹配程度。

這里我們做了一個 demo 分享了更多可視化結(jié)果,供大家直觀地了解數(shù)據(jù)集分布和我們的模型所能達(dá)到的效果。

聲明: 本文由入駐維科號的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯
x
*文字標(biāo)題:
*糾錯內(nèi)容:
聯(lián)系郵箱:
*驗 證 碼:

粵公網(wǎng)安備 44030502002758號