0
雷鋒網(wǎng) AI 科技評(píng)論按:隨著智能語(yǔ)音等 AI 技術(shù)逐漸落地到現(xiàn)實(shí)場(chǎng)景中,智能語(yǔ)音助手、智能機(jī)器人等各類(lèi)形態(tài)的 AI 的身影隨處可見(jiàn),真正走進(jìn)了人們的日常生活中。然而,其目前在技術(shù)方面還是存在很多不成熟的地方,一個(gè)不留神便是一個(gè)大型「翻車(chē)現(xiàn)場(chǎng)」,另外,人機(jī)交互的不自然性也是其存在的一大挑戰(zhàn)。對(duì)此,微軟研究院提出用模仿學(xué)習(xí)來(lái)解決這一問(wèn)題,并開(kāi)發(fā)出了搭載語(yǔ)言助手的基于視覺(jué)的導(dǎo)航(VNLA),不僅能夠訓(xùn)練智能體回答開(kāi)放式的提問(wèn)(即不需要提前規(guī)劃好指令),還能夠訓(xùn)練其在需要的時(shí)候通過(guò)語(yǔ)言策略性地尋求幫助,這就大大增強(qiáng)了智能體的自主學(xué)習(xí)能力,也大大提高了任務(wù)的完成度和準(zhǔn)確性。微軟研究院在博客上發(fā)布了這一成果,雷鋒網(wǎng) AI 科技評(píng)論編譯如下。
今天,人們使用個(gè)人數(shù)字助理來(lái)幫助安排行程、播放音樂(lè)、打開(kāi)或調(diào)整其他設(shè)備以及回答一些諸如「游戲什么時(shí)候開(kāi)始?」或「最近的硬件商店在哪里?」的基本問(wèn)題,例如:但是如果這些助手可以在日常生活中完成更多協(xié)助性工作,又會(huì)怎么樣呢?
想象一下,假如現(xiàn)在是晚上 10 點(diǎn),你剛剛躺下來(lái)想要睡覺(jué),此時(shí)你突然想到了一件事而驚醒過(guò)來(lái):我關(guān)后門(mén)了嗎?別擔(dān)心:你的帶有輪子、能移動(dòng)的個(gè)人數(shù)字助理能夠解答你的問(wèn)題,而你也不必起床讓夜晚的睡眠受到干擾。在你讓數(shù)字助理為你檢查門(mén)是否關(guān)閉之氣,它會(huì)向你問(wèn)清楚「哪個(gè)門(mén)?」你回復(fù)它后,它就會(huì)走開(kāi)去探查門(mén)是否關(guān)閉。它會(huì)繞道的后面,識(shí)別到指定的門(mén),并確定門(mén)是否是打開(kāi)的狀態(tài),如果門(mén)是打開(kāi)的,它就會(huì)幫你關(guān)好門(mén),并返回來(lái)向你報(bào)告:「開(kāi)著的門(mén)已關(guān)好!」你就能放下心,安心入睡了。
對(duì)于那些從事人工智能工作的人來(lái)說(shuō),這是一個(gè)夢(mèng)想的場(chǎng)景。我們的目標(biāo)是讓現(xiàn)實(shí)世界中的機(jī)器人和數(shù)字、虛擬和混合世界中的智能體能夠通過(guò)語(yǔ)言自然地與人交流,從而幫助人類(lèi)完成各種任務(wù)。但我們距離這一目標(biāo)還有一段路要走,因?yàn)榧词故窍鄬?duì)簡(jiǎn)單的場(chǎng)景,例如讓家用輔助機(jī)器人幫助我們找到亂放的手機(jī)(哦,這將是多么有用?。┮膊⒉幌窨雌饋?lái)那么容易。
為了讓這個(gè)夢(mèng)想成為現(xiàn)實(shí),我們開(kāi)發(fā)出了搭載語(yǔ)言助手的基于視覺(jué)的導(dǎo)航(VNLA)。VNLA 是一種新的基礎(chǔ)視覺(jué)語(yǔ)言任務(wù),不僅能夠訓(xùn)練智能體回答開(kāi)放式的提問(wèn)——即不需要提前規(guī)劃好指令,還能夠訓(xùn)練其在需要的時(shí)候通過(guò)語(yǔ)言策略性地尋求幫助。這種能力依賴(lài)于我們稱(chēng)之為「間接干預(yù)的模仿學(xué)習(xí)」(I3L)的新框架。我們將在年度計(jì)算機(jī)視覺(jué)與模式識(shí)別會(huì)議 CVPR?上展示關(guān)于這項(xiàng)工作的論文(論文查看地址:https://www.microsoft.com/en-us/research/publication/vision-based-navigation-with-language-based-assistance-via-imitation-learning-with-indirect-intervention/),演示該方法的視頻大家可前往 https://www.youtube.com/watch?v=Vp6C29qTKQ0&feature=youtu.be 觀看,同時(shí)也可以前往 GitHub(https://github.com/debadeepta/vnla)下載這項(xiàng)成果的的代碼和數(shù)據(jù)腳本。
諸如「檢查后門(mén)」和「幫我找到手機(jī)」等請(qǐng)求對(duì)當(dāng)今的 AI 系統(tǒng)來(lái)說(shuō),極具挑戰(zhàn)性。其中:
1.將自然語(yǔ)言轉(zhuǎn)為視覺(jué):智能體必須理解它被要求干什么。在尋找丟失的手機(jī)的案例中,這意味著它必須要知道主人所說(shuō)的「我的」究竟是指哪個(gè)手機(jī),「手機(jī)」這個(gè)詞在視覺(jué)上是指什么物體以及需要找到的手機(jī)何時(shí)出現(xiàn)在它的視線(xiàn)中。
2. 在沒(méi)有 GPS 的環(huán)境中導(dǎo)航和避免碰撞:智能體還必須了解手機(jī)有可能被遺落在房屋中的哪些常見(jiàn)位置以及如何在沒(méi)有明確定位信息的情況下,通過(guò)即時(shí)定位、地圖構(gòu)建(SLAM)或 GPS 有效導(dǎo)航到這些位置。此外,就像人類(lèi)一樣,智能體必須能夠在沒(méi)有獲取房屋清楚的尺度地圖的情況下,來(lái)執(zhí)行此操作。此外,它還必須導(dǎo)航到這些位置,而不會(huì)碰撞到房屋內(nèi)的人和物。
3. 更自然地與人互動(dòng):當(dāng)人們尋求另一個(gè)人的幫助時(shí),他們之間的溝通不僅限于一個(gè)單一的指令,而是還有一些有來(lái)有回、傳達(dá)和接收信息的互動(dòng)。通常在提供幫助時(shí),人們緊接著會(huì)進(jìn)一步問(wèn)一些細(xì)節(jié)的問(wèn)題,進(jìn)而從尋求幫助的人口中獲得有價(jià)值的反饋。比如說(shuō)在上面的手機(jī)中,也許他們會(huì)詢(xún)問(wèn)「主人」手機(jī)外殼的顏色或其記憶中最后使用手機(jī)的位置,并且他們可以在這一尋找過(guò)程中的任何時(shí)候提出這類(lèi)問(wèn)題。我們認(rèn)為機(jī)器人和智能體必須具備這種相似的能力以此來(lái)協(xié)作完成任務(wù)。對(duì)于機(jī)器人和智能體而言,第一步就是要了解如何恰當(dāng)?shù)靥幚怼敢阎奈粗骨闆r。換句話(huà)說(shuō),它們需要了解它們什么時(shí)候是不確定的并應(yīng)該尋求幫助。
這些挑戰(zhàn)中的每一個(gè)都代表著對(duì)人工智能發(fā)展至關(guān)重要的有效研究領(lǐng)域。在交互式機(jī)器人的應(yīng)用中,這些挑戰(zhàn)往往同時(shí)發(fā)生,這也加劇了收集連續(xù)交互數(shù)據(jù)來(lái)訓(xùn)練此類(lèi)智能體的難度,因此研究這些領(lǐng)域?qū)τ诮换ナ綑C(jī)器人而言顯得尤為重要。這些設(shè)置與生俱來(lái)就是是非獨(dú)立同分布(i.i.d)的,這就確定了樸素監(jiān)督學(xué)習(xí)在部署時(shí)會(huì)失敗。
圖 1:在不可見(jiàn)的環(huán)境中運(yùn)行 VNLA 任務(wù)示例。(a)使用智能體的規(guī)劃路徑注解的環(huán)境鳥(niǎo)瞰圖。智能體僅通過(guò)第一人稱(chēng)視圖觀察環(huán)境。(b)請(qǐng)求者(戴帽子的那個(gè))要求智能體在廚房里找一條毛巾。智能體面前有兩條毛巾,但是該房間的標(biāo)簽是「浴室」。在沒(méi)有給定房間標(biāo)簽的情況下,智能體會(huì)忽略它們。(c)智能體離開(kāi)浴室。如果感到疑惑了,智能體就向顧問(wèn)(留著小胡子的)發(fā)出求助信號(hào)。顧問(wèn)回答了「更簡(jiǎn)單易懂」更低一層的子目標(biāo):「向右轉(zhuǎn) 60 度,向前轉(zhuǎn),向左轉(zhuǎn)?!梗╠)執(zhí)行子目標(biāo)后,智能體離廚房更近,但仍然感到困惑,于是它再次請(qǐng)求幫助。(e)智能體執(zhí)行第二個(gè)子目標(biāo)時(shí)得到幫助,最終找到指定的毛巾。
在我們的任務(wù)中,智能體通過(guò)能將其所看到的場(chǎng)景捕捉為圖像的單眼攝像頭「看到」周?chē)h(huán)境的智能體,我們讓它找到在特定位置的目標(biāo)。例如,我們可以讓它在廚房中尋找毛巾,如圖 1 所示。我們通過(guò)對(duì)任務(wù)提出解決路徑,采用多種方式來(lái)應(yīng)對(duì)這些挑戰(zhàn)。
首先,我們利用豐富的模擬環(huán)境來(lái)幫助將語(yǔ)言轉(zhuǎn)為視覺(jué)。機(jī)器人和視覺(jué)領(lǐng)域的研究越來(lái)越依賴(lài)于豐富的高保真模擬環(huán)境,例如用于端到端訓(xùn)練智能體的 AirSim。我們使用能通過(guò)房間到房間的模擬器對(duì)真實(shí)房屋進(jìn)行高保真 3D 重 建的 Matterport3D 數(shù)據(jù)集,在模擬真實(shí)環(huán)境訓(xùn)練我們的智能體。
其次,我們選擇將模仿學(xué)習(xí)而不是強(qiáng)化學(xué)習(xí)作為訓(xùn)練范式。模仿學(xué)習(xí)指的是智能體直接從專(zhuān)家演示學(xué)習(xí)而不是從傳統(tǒng)強(qiáng)化學(xué)習(xí)中使用的獎(jiǎng)勵(lì)函數(shù)學(xué)習(xí),它在環(huán)境試驗(yàn)中,學(xué)習(xí)速度取得了指數(shù)級(jí)增長(zhǎng)。但是一個(gè)不足之處就是模仿學(xué)習(xí)往往依賴(lài)人類(lèi)專(zhuān)家們演示完成任務(wù)所需的最佳行動(dòng)步驟,這可能導(dǎo)致成本很高。但在這里并非如此,這也是我們選擇使用 IL 的另一個(gè)原因。仿真訓(xùn)練在訓(xùn)練期時(shí)能提供一個(gè)自然的程序化專(zhuān)家,而不產(chǎn)生額外的成本,而這個(gè)程序化專(zhuān)家則是一種可以獲取全環(huán)境狀態(tài)的規(guī)劃算法。具體來(lái)說(shuō),我們有一個(gè)最短路徑算法(A *),它知道完整的地圖以及該場(chǎng)景中所有物體所處的位置。這種模仿比智能體擁有更多得多的知識(shí)和信息的專(zhuān)家的方式,已經(jīng)有效地應(yīng)用于機(jī)器人的復(fù)雜規(guī)劃問(wèn)題中。
最后并且最重要的事情是,我們要訓(xùn)練智能體懂得尋求幫助。在我們的任務(wù)中,還有另外兩個(gè)關(guān)鍵角色:請(qǐng)求者——在現(xiàn)實(shí)場(chǎng)景中發(fā)布任務(wù)的人 ;顧問(wèn)——在現(xiàn)實(shí)場(chǎng)景中發(fā)布任務(wù)的人通常也是顧問(wèn),但在理論上,顧問(wèn)可以是能夠引導(dǎo)智能體的任何實(shí)體。在執(zhí)行任務(wù)期間,智能體可以在感到疑惑時(shí)向顧問(wèn)尋求幫助,并且可以按照預(yù)定的次數(shù)多次尋求幫助。預(yù)定需求幫助的次數(shù)很重要; 否則智能體可能會(huì)為了提高成果率而記錄下「尋求幫助」的程序,而學(xué)會(huì)在每一步都尋求幫助,這在很大程度上就違背了原意。畢竟誰(shuí)真的想要一個(gè)需要問(wèn)過(guò)一百萬(wàn)個(gè)問(wèn)題才能完成任務(wù)的助理呢?智能體通過(guò)語(yǔ)言獲得幫助,旨在重新規(guī)劃軌跡去完成任務(wù)。例如顧問(wèn)可能會(huì)說(shuō),「從你所在的位置,向右轉(zhuǎn),然后走三步?!?/p>
這種通過(guò)語(yǔ)言提供幫助的方式試圖模仿人們用以互相幫助的自然交流方式。智能體擁有了在關(guān)鍵節(jié)點(diǎn)尋求幫助的能力,就能夠以更大概率地成功完成任務(wù)。在其從未見(jiàn)過(guò)的環(huán)境中,它要比無(wú)法尋求幫助的基線(xiàn)智能體的性能高五倍以上。在訓(xùn)練期間,我們還會(huì)教智能體應(yīng)該在什么時(shí)候?qū)で髱椭?。在智能體從未見(jiàn)過(guò)的測(cè)試場(chǎng)景中,學(xué)習(xí)如何有策略地尋求幫助的這種形式給智能體帶來(lái)的性能上的提高,要比隨意尋求幫助的方式高出約 38%,并且比一開(kāi)始就尋求幫助的方式高出約 72%。
對(duì)于 AI 智能體而言,了解自己什么時(shí)候處于不確定狀態(tài)并學(xué)會(huì)從尋求幫助中獲益尤為重要,這不僅是因?yàn)檫@種方式有助于創(chuàng)造更自然的互動(dòng),而且還因?yàn)?AI 智能體是不完美的,而干預(yù)則有助于幫助智能體穩(wěn)當(dāng)?shù)赝瓿蓮?fù)雜的請(qǐng)求。
圖 2:導(dǎo)航模塊的兩個(gè)解碼過(guò)程。(a)第一解碼過(guò)程計(jì)算臨時(shí)的導(dǎo)航分布,其用作計(jì)算幫助請(qǐng)求分布的特征。(b)第二遍計(jì)算最終的導(dǎo)航分布。
如圖 2 所示,在整個(gè)智能體策略架構(gòu)中,智能體運(yùn)行兩個(gè)前向傳遞。第一次傳遞,計(jì)算了暫定的導(dǎo)航分布,并將其用作尋求幫助的決策的一個(gè)特性。如果導(dǎo)航分布存在很多不確定性,那么只要預(yù)定次數(shù)允許,智能體就可以決定是否應(yīng)該停下來(lái)尋求幫助。第二次傳遞,它考慮了額外提供的幫助(如果有請(qǐng)求幫助的話(huà)),計(jì)算出最終的導(dǎo)航分布。
我們的框架旨在幫助我們的個(gè)人數(shù)字助理實(shí)現(xiàn)人們互相幫助時(shí)常見(jiàn)的那種有來(lái)有回的交流。我們將 VNLA 視為實(shí)現(xiàn)更豐富的人類(lèi)—AI 協(xié)作的基礎(chǔ),在這種協(xié)作中包含更自然的語(yǔ)言溝通,而機(jī)器人和智能體在這種協(xié)作中也可以換位思考。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。