Facebook推开源软件平台ParlAI,能否解决机器人灵魂缺失问题?
雷鋒網AI科技評論按:5月16號,Facebook官網公布,推出全新開源軟件平臺ParlAI, 致力于打造一站式對話研究商店,加快提高聊天機器人的智能聊天水平。雷鋒網編輯認為這必將會給整個機器人制造業帶來新的機遇和革命式的發展。
人工智能的一個長期目標就是希望能制造出可以和人類自然交流的聊天機器人。現在生產出來的機器人雖然有時候可以完成具體的單個任務,但是在理解多個句子或者把多個子任務聯合起來形成一個主任務上有很大的困難。像比較復雜的對話,例如,預訂酒店或和它聊體育新聞。這就需要它能理解多句意,并且能夠推理來進行下一輪談話。因為人類對話很復雜,在很多有關聯的任務中使用的是相同的輸入輸出格式卻需要的是不同的知識技能,機器人一定會被這些任務打敗。為了實現這個目標,開發一個軟件用來整合這些任務,以及可供代理學習是很有必要的。
找到了這個需求后,Facebook的AI研究團隊開發了一個新的開源平臺用來一次性跨越多任務,訓練和測試對話模型。ParlAI是一站式對話研究商店,研究員可以在這里提交新任務,對單個對象訓練算法,共享存儲空間。它和Mechanical Turk結合來數據收集,訓練,和評估,也可以讓ParlAI中的機器人和人對話。這個項目的目標是將現有對話數據集和學習系統整合,包括人機之間的真實對話。
ParlAI補充了現有的Facebook AI研究團隊的文本研究。像FastText, 它是快速和有效的文本分類工具。還有CommAI,它是用來通過日益復雜的任務來開發通用人工智能的框架。
ParlAI中的任務
超過20個公共數據集包含在此版本中,如下圖左邊所示
任務分為五類
? ? ? 問和答:這是最簡單的對話框形式之一,每個說話者只有一輪。問和答這種方式是特別有用的,因為評估比其他形式的對話框簡單:如果問題的答案是已知的(即,數據集被標記),那么我們可以快速檢查答案是否正確。
? ? ? 句子完成(完形填空):在這個測試中,代理器必須在對話框中的下一個語句中填入一個缺失的單詞。雖然這是另一個專門的對話框任務,數據集采集很便宜,評估很簡單。
? ? ? 目標導向的對話:一個更為現實的對話類別涉及到達到一個目標,例如,一個客戶和旅行社討論航班,一個人向另一人推薦電影,兩個人約定何時何地一起吃飯,等等。
? ? ? 聊天對話框:有些任務不一定有一個明確的目標,更多的是討論;例如,兩個人談論體育,電影,或一個共同的興趣。
? ? ? 視覺對話:這些任務包含圖像和文本。在真實世界中,對話框通常以物理對象為基礎。在未來,我們計劃添加其他感官信息,如音頻。
在ParlAI選擇一個任務和在命令行中指定它一樣簡單。如果數據集尚未使用,ParlAI會自動下載它。因為所有的數據集都在ParlAI都會以相同的方式處理,對話代理可以在它們的訓練和測試之間切換。你也可以通過提供一個以逗號分隔的列表進行一次性多任務指定;例如命令行 -t ?babi, squad 用了兩個數據集,所有的QA數據立刻集合-t #qa; 或者ParlAI中每個任務立刻集合-t #all,目的是為了讓構建和評估一個豐富的對話模型變得簡單。
多重世界;代理;老師
在ParlAI主要的概念(類)是多重世界,代理,和老師。世界是說話者所生活的環境,可以從簡單的雙向對話變化到更復雜的場景,如反應性游戲環境。代理是可以在世界上表演和說話的東西。代理可以是一個學習者,如機器學習的系統,或一個硬編碼的機器人,用來與學習者互動,如游戲中的非玩家角色。最后,老師是一種和學習者交流的代理,例如,實現了以前列出的任務。
所有代理使用一個單一的格式-觀察/操作對象(一個Python)-交換文本,標簽,并與其他代理互相獎勵。
代理發送此消息來說話,并通過接收到相同形式的消息來發現在環境中的其他說話者。這使我們能夠解決各種對話問題,從強化學習到完全監督學習,同時保證所有的數據集符合相同的標準。當研究人員建立新的模型,他們可以很容易地應用在許多任務上。
在定義了一個世界和它的代理之后,主回路調用其中的函數 world.parley ( ).運行用來訓練,測試,或顯示,世界。在左邊的面板顯示的一個例子,主回路的框架,右邊是parley ( )實際代碼。
第一版發布的工具欄里包含工具代理,像簡單的IR基帶,同時還有兩個完整神經網絡案例:一個端到端的存儲網絡,在Lua Torch 中執行,還有一個是長短時記憶模型DrQA, 是在Py Torch 中執行,在SQuAD數據集和其他數據集之間有一個強大的效果。我們期待在未來的版本中添加一些新的任務和代理。
Mechanical Turk
制造聊天機器人,人機對話是訓練過程中很重要的一部分。這就是為什么ParlAI支持和Mechanical Turk 整合來數據收集,訓練和評估。這也使得研究小組的Turk實驗可以對比,這在以前是困難的。在ParlAI中,Human Turkers也可視為代理。他們可以輕松地與機器人交談,以幫助訓練和評估他們。隨后,人-人 ,人-機 或多人和機器人聊天都可以在標準框架內進行交互。在切換所需的角色過程中,代理不用更改代碼。這是因為Turkers可以通過同一接口的印刷版接收和發送。
-
QA收集器:通過和Turkers對話來收集問題和答案,給定上下文建立一個QA數據集的代理。
-
模型評估器:基于機器人在給定任務中的性能表現,從Turkers中收集評級的代理。
在一個地方可以收集所有重要的對話任務,這還是第一次。ParlAI為研究人員提供的這個場所不僅使這些任務單獨地更容易迭代,也使得可以輕松地使用所有的數據來訓練機器人,并通過那些技能來對機器人評估。研究員通過檢查存放處的代碼,共享他們的AI學習代理,直接復制對方的實驗結果,來進行彼此工作之上的研究,共同推進這個領域前進。最后,Mechanical Turk的整合意味著人類可以很容易地投入到與機器人交談的循環之中,以幫助訓練和評估他們。人類之間的對話對制造可以和人類交談的機器人也很有必要。
對于AI來說,解決對話問題仍然是一個長期的挑戰,對于這一目標的任何進展都有可能對我們今天所制造的產品帶來短期利益,任何技術的進步都可能對其他行業領域帶來好處。ParlAI是一個平臺,希望將做AI代理執行對話框的研究人員聚到一起共同推動對話研究達到世界最先進水平。
via Facebook; ?雷鋒網(公眾號:雷鋒網)編譯
本文作者:楊文
本文轉自雷鋒網禁止二次轉載,原文鏈接
總結
以上是生活随笔為你收集整理的Facebook推开源软件平台ParlAI,能否解决机器人灵魂缺失问题?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《MongoDB管理与开发精要》——3.
- 下一篇: 《云计算揭秘企业实施云计算的核心问题》—