楊植麟,卡內(nèi)基梅隆大學(xué)博士三年級,師從蘋果人工智能主任 Ruslan S.,主要研究無監(jiān)督深度學(xué)習(xí)及其在自然語言理解的應(yīng)用;過去兩年在 ICLR/NIPS/ICML 等人工智能頂會(huì)發(fā)表 11 篇文章 (9 篇一作);曾在 Facebook 人工智能實(shí)驗(yàn)室從事研究工作,本科以年級第一畢業(yè)于清華計(jì)算機(jī)系。
分享主題:讓人工智能像人類一樣學(xué)習(xí)自然語言:無監(jiān)督學(xué)習(xí)和情景化學(xué)習(xí)的最新進(jìn)展
分享提綱
無監(jiān)督學(xué)習(xí):高秩自然語言模型 (ICLR 2018)
基于生成式模型的半監(jiān)督學(xué)習(xí):利用無標(biāo)注文本提升問答 (ACL 2017, NIPS 2017)
情景化學(xué)習(xí):土耳其機(jī)械勇士下降法 (ICLR 2018)
分享內(nèi)容:
近幾年,深度神經(jīng)網(wǎng)絡(luò)在自然語言學(xué)習(xí)任務(wù)上取得眾多突破,但是仍然依賴于大規(guī)模靜態(tài)標(biāo)注數(shù)據(jù)。與此相反,人類學(xué)習(xí)語言的時(shí)候并不需要大規(guī)模監(jiān)督信號,并且可通過與環(huán)境的交互理解語言。
先來回顧一下近些年 NLP 發(fā)展的狀況。NLP 發(fā)展的黃金時(shí)期出現(xiàn)在 2013 年末和 2014 年這段時(shí)間。這段時(shí)間出現(xiàn)三個(gè)非常重要的技術(shù):Word embeddings;Seq2seq;Attention,這三項(xiàng)技術(shù)基本奠定了 2014 年之后的 NLP 發(fā)展基礎(chǔ)。
從2015年到現(xiàn)在,大家做的主要事情就是把三個(gè)技術(shù)都用上,做各種各樣的變種,用在不同的任務(wù)上來檢驗(yàn)?zāi)P托Ч?。單從效果上來看,還是有到很多突破的。但有兩點(diǎn)需要注意,依賴監(jiān)督學(xué)習(xí)可能已經(jīng)做到了極限;監(jiān)督學(xué)習(xí)有兩個(gè)問題,一是依賴大規(guī)模標(biāo)注數(shù)據(jù)集,二是依賴靜態(tài)數(shù)據(jù)集。
反觀人類是如何學(xué)習(xí)語言的?人類只需要非常少的監(jiān)督信號,通過動(dòng)態(tài)與環(huán)境交互,在環(huán)境中執(zhí)行一些行為,得到一些反饋,進(jìn)行學(xué)習(xí)語言。
如果讓機(jī)器像人類一樣學(xué)習(xí),就需要突破監(jiān)督學(xué)習(xí)的瓶頸。接下來講的就是在這一方面的探索,怎樣讓機(jī)器像人類一樣學(xué)習(xí)自然語言。
先看一下這個(gè),Mastering the Dungeon : Grounded Language Learning by Mechanical Turker Descent。其中的
Mastering the Dungeon 是我們創(chuàng)造的一個(gè)游戲環(huán)境,Mechanical Turker Descent 是我們發(fā)明的算法名字。
圖中的兩個(gè)人(Turker1 和 Turker2)相當(dāng)于平臺上的兩個(gè)用戶。他們每個(gè)人負(fù)責(zé)訓(xùn)練一個(gè) dragon,如果 dragon 贏了,對應(yīng)的人會(huì)獲得獎(jiǎng)勵(lì)。這樣 Turker 就會(huì)受到激勵(lì),會(huì)給 dragon 更好的樣本學(xué)習(xí),讓它在比賽中擊敗其他 dragon。
下圖反應(yīng)了 dragon 在游戲環(huán)境中具體是如何交互學(xué)習(xí)的,以及具體的游戲環(huán)境是怎么樣的。
這個(gè)交互學(xué)習(xí)算法的名字叫 Mechanical Turker Descent。第一步,每一個(gè) Turker 會(huì)給 dragon 一些訓(xùn)練數(shù)據(jù),第二步,用數(shù)據(jù)集訓(xùn)練出一個(gè)模型。第三步,這些模型會(huì)放在其他數(shù)據(jù)集上交互驗(yàn)證,每個(gè)模型會(huì)得到分?jǐn)?shù),獲得高分的 Turker 會(huì)獲得獎(jiǎng)勵(lì)。第四步,所有的數(shù)據(jù)將合并起來,進(jìn)入下一輪,直到訓(xùn)練出比較好的 agent。
這個(gè)算法其實(shí)既有比賽,又有合作。Turker 為了贏得獎(jiǎng)勵(lì),所以他們之間相互比賽,促使他們提供更好的數(shù)據(jù)給 dragon。同時(shí)他們又是合作的,在每一輪結(jié)束后都會(huì)把數(shù)據(jù)合并起來進(jìn)入下一輪,這些數(shù)據(jù)在下一輪都會(huì)共享。
這樣的算法有四個(gè)優(yōu)點(diǎn):
第一,避免數(shù)據(jù)樣本太簡單,因?yàn)槊總€(gè) Turker 都是在對方的數(shù)據(jù)集上做驗(yàn)證,如果太簡單,就會(huì)導(dǎo)致對方的分?jǐn)?shù)比自己高。
第二,避免數(shù)據(jù)樣本太難,如果樣本太難,就不可能訓(xùn)練出模型,同樣不能贏得比賽。
第三,難易度適中的數(shù)據(jù)可以動(dòng)態(tài)適應(yīng)模型學(xué)習(xí)的能力。
第四,很難通過作弊獲得好成績。
游戲環(huán)境和任務(wù)設(shè)置
實(shí)驗(yàn)結(jié)果
通過實(shí)驗(yàn)得出幾點(diǎn)結(jié)論,實(shí)驗(yàn)中的交互學(xué)習(xí)算法確實(shí)比傳統(tǒng)通過標(biāo)記數(shù)據(jù)的靜態(tài)學(xué)習(xí)效果要好。
limit 是指限制 Turker 每一輪給的訓(xùn)練數(shù)據(jù)數(shù)量。在給同樣獎(jiǎng)勵(lì)的情況下,發(fā)現(xiàn)如果不限制 Turker,他會(huì)多給 dragon 30% 的數(shù)據(jù),最終的模型表現(xiàn)效果也較好。
在模型有反饋和沒有反饋的兩種不同情況下,其性能表現(xiàn)也有很大的差別。如果把模型反饋去掉,所有的指標(biāo)都會(huì)下降,說明動(dòng)態(tài)調(diào)整訓(xùn)練數(shù)據(jù)的動(dòng)態(tài)分布是非常重要的。
接下來為大家介紹一篇 ICLR Oral 論文。論文題目為:Breaking the Softmax Bottleneck A High-Rank RNN Language Model。
我們首先證明了softmax存在表達(dá)能力上的根本缺陷,繼而提出了混合softmax (mixture of softmaxes)的方法,先算K softmaxes,然后用weighted sum得到最后的概率。這個(gè)方法在大家常用的語言模型數(shù)據(jù)集中,取得了當(dāng)前最好的結(jié)果。
由于篇幅限制,這里就不做文字解讀了,大家如果感興趣可以直接去看這篇論文或者觀看視頻回放:http://www.mooc.ai/open/course/472
小結(jié)
未來最重要的兩個(gè)研究方向,一個(gè)是無監(jiān)督學(xué)習(xí),另一個(gè)是 language grounding。
無監(jiān)督學(xué)習(xí)可以學(xué)習(xí)有價(jià)值的和可傳遞的特征表示,可以改善低資源和高資源任務(wù); 可以用于監(jiān)督或無監(jiān)督任務(wù)的元學(xué)習(xí)。language grounding 可以提供足夠復(fù)雜的環(huán)境,是一種非常有效的學(xué)習(xí)算法。
以上就是本期嘉賓的全部分享內(nèi)容。更多公開課視頻請到雷鋒網(wǎng) AI 慕課學(xué)院觀看。