近日,OpenAI 在其官方博客發(fā)文介紹了他們最新的自然語(yǔ)言處理(NLP)系統(tǒng)。這個(gè)系統(tǒng)是可擴(kuò)展的、與任務(wù)無(wú)關(guān)的,并且在一系列不同的 NLP 任務(wù)中都取得了亮眼的成績(jī)。但該方法在計(jì)算需求等方面仍存在改進(jìn)的空間。下面我們來(lái)看他們的博文:
我們即將發(fā)布一個(gè)可擴(kuò)展的,與任務(wù)無(wú)關(guān)的自然語(yǔ)言處理系統(tǒng),該系統(tǒng)在一系列不同的語(yǔ)言任務(wù)上都取得了目前最先進(jìn)的成績(jī)。我們的方法結(jié)合了兩種現(xiàn)有的 NLP 網(wǎng)絡(luò)架構(gòu):Transformer 和無(wú)監(jiān)督預(yù)訓(xùn)練。大量任務(wù)數(shù)據(jù)集上的測(cè)試結(jié)果表明,這種方法將監(jiān)督學(xué)習(xí)方法與無(wú)監(jiān)督預(yù)訓(xùn)練結(jié)合得非常好;當(dāng)然,這也是之前許多人在探索的想法。我們希望我們的工作能夠激發(fā)該方向進(jìn)一步的研究,并鼓勵(lì)大家將這一想法應(yīng)用到更大更多的不同數(shù)據(jù)集上。
先看結(jié)果:
我們的系統(tǒng)的工作流程分為兩個(gè)階段:首先,以無(wú)監(jiān)督的方式在大量數(shù)據(jù)上訓(xùn)練一個(gè) Transformer 模型——使用語(yǔ)言建模作為訓(xùn)練信號(hào)——然后,在小得多的監(jiān)督數(shù)據(jù)集上對(duì)這個(gè)模型進(jìn)行 fine-tuning,以幫助它解決特定的任務(wù)。這項(xiàng)研究是建立在我們之前一項(xiàng)關(guān)于情緒神經(jīng)元(Sentiment Neuron)的工作基礎(chǔ)之上的,在那項(xiàng)工作中我們注意到,當(dāng)訓(xùn)練數(shù)據(jù)足夠多時(shí),無(wú)監(jiān)督學(xué)習(xí)技術(shù)可以產(chǎn)生驚人的判別性特征。
在本項(xiàng)研究工作中,我們這個(gè)想法進(jìn)行了進(jìn)一步的探索:我們可以開(kāi)發(fā)一個(gè)模型,以無(wú)監(jiān)督的方式對(duì)大量數(shù)據(jù)進(jìn)行訓(xùn)練,然后對(duì)模型進(jìn)行 fine-tuning,以在許多不同任務(wù)上獲得良好的性能。我們的研究結(jié)果表明,這種方法的效果非常好。針對(duì)不同的任務(wù),只需要對(duì)同一個(gè)的核心模型進(jìn)行最少的調(diào)整就可以進(jìn)行應(yīng)用。
這項(xiàng)工作建立在半監(jiān)督序列學(xué)習(xí)(Semi-supervised Sequence Learning)的基礎(chǔ)之上,其中半監(jiān)督序列學(xué)習(xí)方法展示了如何通過(guò)使用 LSTM 的無(wú)監(jiān)督預(yù)訓(xùn)練,然后進(jìn)行有監(jiān)督的 fine-tuning 來(lái)提高文檔分類(lèi)性能。
我們的工作還對(duì)ULMFiT進(jìn)行了拓展,說(shuō)明了為了在各個(gè)文檔分類(lèi)數(shù)據(jù)集上獲得最先進(jìn)的性能,應(yīng)該如何對(duì)單個(gè)與數(shù)據(jù)集無(wú)關(guān)的 LSTM 語(yǔ)言模型進(jìn)行 fine-tuning;我們的工作展示了如何使用基于 Transformer 的模型來(lái)實(shí)現(xiàn)文檔分類(lèi)之外的更廣泛的任務(wù),如常識(shí)推理,語(yǔ)義相似性和閱讀理解。
它和 ELMo 也有一些類(lèi)似,但比 ELMo 更加通用。(編輯注:ELMo 是目前最先進(jìn)的上下文詞嵌入技術(shù),同樣使用了預(yù)訓(xùn)練技術(shù),但為了在各種任務(wù)中獲得最先進(jìn)的結(jié)果針對(duì)不同任務(wù)使用了定制架構(gòu)。)
我們的實(shí)驗(yàn)結(jié)果只需要進(jìn)行非常少的調(diào)整就可以實(shí)現(xiàn)。其中所有數(shù)據(jù)集都使用單一的正向語(yǔ)言模型,沒(méi)有任何集成,并且大多數(shù)報(bào)告結(jié)果都使用了完全相同的超參數(shù)設(shè)置。
值得一提的是該方法在三種關(guān)于測(cè)試常識(shí)推理和閱讀理解的數(shù)據(jù)集(COPA,RACE和ROCStories)上的表現(xiàn)。我們的模型以遠(yuǎn)超第二名的成績(jī)?cè)谶@些數(shù)據(jù)集上獲得了最先進(jìn)的結(jié)果。這些數(shù)據(jù)集普遍被認(rèn)為需要借助多語(yǔ)句推理和有意義的世界知識(shí)進(jìn)行解決,而我們的模型主要通過(guò)無(wú)監(jiān)督學(xué)習(xí)來(lái)提高這些技能。這也表明了通過(guò)無(wú)監(jiān)督技術(shù)來(lái)開(kāi)發(fā)復(fù)雜的語(yǔ)言理解功能的可能。這讓我們特別興奮。
▌為什么是無(wú)監(jiān)督學(xué)習(xí)?
監(jiān)督學(xué)習(xí)是機(jī)器學(xué)習(xí)最近成功的關(guān)鍵。但是,它可能需要大量的、經(jīng)過(guò)仔細(xì)清理的、昂貴的數(shù)據(jù)集才能發(fā)揮非常好的作用。而無(wú)監(jiān)督學(xué)習(xí)則有可能解決這些不足,這是非常有吸引力的。由于無(wú)監(jiān)督學(xué)習(xí)沒(méi)有了顯式人工標(biāo)簽的限制,在當(dāng)前計(jì)算量和原始數(shù)據(jù)不斷增加的趨勢(shì)下,這項(xiàng)技術(shù)表現(xiàn)出了非常好的擴(kuò)展性。 不過(guò)雖然無(wú)監(jiān)督學(xué)習(xí)是一個(gè)非?;钴S的研究領(lǐng)域,但其實(shí)際用途仍然有限。
最近有人試圖通過(guò)無(wú)監(jiān)督學(xué)習(xí)用大量無(wú)標(biāo)記數(shù)據(jù)進(jìn)行增強(qiáng)以進(jìn)一步提高系統(tǒng)的自然語(yǔ)言處理能力。通過(guò)無(wú)監(jiān)督技術(shù)訓(xùn)練的詞向量表示可以使用由 TB 級(jí)信息組成的大型數(shù)據(jù)集,并且當(dāng)它與監(jiān)督學(xué)習(xí)相結(jié)合時(shí),可以提高各種 NLP 任務(wù)的性能。之前,這些 NLP 的無(wú)監(jiān)督技術(shù)(例如GLoVe和word2vec)使用的都還是簡(jiǎn)單模型(詞向量)和訓(xùn)練信號(hào)(詞局部共現(xiàn),the local co-occurence of words)。
Skip-Thought Vectors是早期的一個(gè)值得注意的方法,展示了通過(guò)更復(fù)雜的方法實(shí)現(xiàn)的改進(jìn)的可能性。而現(xiàn)在正在使用的新技術(shù)則進(jìn)一步提高了性能,這包括使用預(yù)訓(xùn)練的語(yǔ)句表示模型,上下文詞向量(主要是ELMo和CoVE),以及使用定制架構(gòu)來(lái)融合無(wú)監(jiān)督預(yù)訓(xùn)練和監(jiān)督 fine-tuning 的方法(也就是我們的方法)。
在大量文本上對(duì)我們的模型進(jìn)行預(yù)訓(xùn)練,可顯著提高其在諸如 Winograd Schema Resolution 等具有挑戰(zhàn)性的自然語(yǔ)言處理任務(wù)上的表現(xiàn)。
我們還注意到,該方法可以直接使用底層語(yǔ)言模型開(kāi)始執(zhí)行任務(wù),而無(wú)需對(duì)其進(jìn)行任何訓(xùn)練。例如,隨著基礎(chǔ)語(yǔ)言模型的改進(jìn),像在選擇題中選擇正確答案這種任務(wù)的性能會(huì)穩(wěn)步增加。
雖然這些方法的絕對(duì)性能相對(duì)于最新的監(jiān)督技術(shù)而言仍然很低(對(duì)于問(wèn)答式任務(wù),它僅比簡(jiǎn)單的滑動(dòng)窗口基線(xiàn)結(jié)果好),但令人鼓舞的是,這種行為在大量任務(wù)中表現(xiàn)的非常魯棒。這種不使用任務(wù)和世界信息的隨機(jī)初始化網(wǎng)絡(luò)表現(xiàn)的和使用這些信息的隨機(jī)網(wǎng)絡(luò)一樣好。這為我們了解為什么生成式預(yù)訓(xùn)練可以提高下游任務(wù)的性能提供了一些有意義的參考。
我們還使用模型中現(xiàn)有的語(yǔ)言功能進(jìn)行了情感分析。對(duì)于斯坦福 Sentiment Treebank 數(shù)據(jù)集(該數(shù)據(jù)集包含了電影評(píng)論中的正面和負(fù)面語(yǔ)句),我們可以使用語(yǔ)言模型來(lái)猜測(cè)評(píng)論是正面還是負(fù)面(在語(yǔ)句后面輸入單詞“very”即可進(jìn)行預(yù)測(cè)),并且觀察模型是傾向于將詞性預(yù)測(cè)為“積極”還是傾向于將詞性預(yù)測(cè)為“消極”。 這種方法根本不需要根據(jù)任務(wù)對(duì)模型進(jìn)行調(diào)整,并且其性能與經(jīng)典基線(xiàn)準(zhǔn)確率相當(dāng),可達(dá) 80% 。
我們的工作也驗(yàn)證了 Transformer 架構(gòu)的魯棒性和實(shí)用性,表明它具有足夠的靈活性,可在廣泛的任務(wù)中實(shí)現(xiàn)最先進(jìn)的結(jié)果,而無(wú)需復(fù)雜的任務(wù)定制或超參數(shù)調(diào)整。
▌不足之處
這個(gè)項(xiàng)目也有一些突出問(wèn)題非常值得注意:
計(jì)算需求:以前的許多自然語(yǔ)言處理方法都是從頭開(kāi)始在單個(gè) GPU 上訓(xùn)練相對(duì)較小的模型。但我們的方法預(yù)訓(xùn)練步驟計(jì)算需求則相當(dāng)昂貴——在 8 個(gè) GPU 上訓(xùn)練 1 個(gè)月。幸運(yùn)的是,這只需要做一次,我們正在將我們的模型發(fā)布出來(lái),以方便其他人不用重復(fù)這一步驟。
它也是一個(gè)大型模型(與之前的工作相比),因此使用了更多的計(jì)算和內(nèi)存——我們使用了37層(12塊)Transformer 架構(gòu),并且在最多可達(dá) 512 個(gè) tokens 的序列上訓(xùn)練。并且大多數(shù)實(shí)驗(yàn)都是在 4 個(gè)和 8 個(gè) GPU 的系統(tǒng)上進(jìn)行的。該模型針對(duì)新任務(wù)進(jìn)行 fine-tuning 的速度非??欤兄跍p輕額外的資源需求。
通過(guò)文本學(xué)習(xí)世界的局限性和偏見(jiàn):互聯(lián)網(wǎng)上隨時(shí)可用的書(shū)籍和文本所包含的關(guān)于世界的信息并不完整,甚至并不準(zhǔn)確。最近的研究(https://arxiv.org/abs/1705.11168)表明,某些類(lèi)型的信息很難通過(guò)文本進(jìn)行學(xué)習(xí)。而另外一些研究(https://arxiv.org/abs/1803.02324)則表明了數(shù)據(jù)分布中存在的模型學(xué)習(xí)和開(kāi)發(fā)偏見(jiàn)。
依舊脆弱的泛化性能:盡管我們的方法提升了自然語(yǔ)言處理系統(tǒng)在大量任務(wù)上的性能,但目前的深度學(xué)習(xí) NLP 模型仍然表現(xiàn)出了令人驚訝的反直覺(jué)的行為——尤其是在以系統(tǒng)性、對(duì)抗性或分布性的方式進(jìn)行評(píng)估時(shí)。盡管我們已經(jīng)觀察到一些研究進(jìn)展,但我們的方法對(duì)這些問(wèn)題并不是免疫的。
這種方法表現(xiàn)出比先前的面向文字蘊(yùn)含(Textual entailment)的神經(jīng)網(wǎng)絡(luò)方法更好的詞法魯棒性。在 Glockner 等人介紹的數(shù)據(jù)集(https://arxiv.org/abs/1805.02266)上,我們模型的準(zhǔn)確率達(dá)到了 83.75%,其性能類(lèi)似于通過(guò) WordNet 整合外部知識(shí)的KIM。
▌工作展望
方法規(guī)模化拓展:我們已經(jīng)觀察到,語(yǔ)言模型的性能改進(jìn)與下游任務(wù)的改進(jìn)密切相關(guān)。目前我們正在使用商用硬件(一臺(tái) 8 GPU 計(jì)算機(jī))以及僅包含幾千本書(shū)(約 5 GB 文本)的訓(xùn)練數(shù)據(jù)集。這表明經(jīng)過(guò)充分驗(yàn)證該方法在處理越來(lái)越大的計(jì)算量和數(shù)據(jù)時(shí)還有很大提升空間。
改進(jìn)的 fine-tuning:我們?cè)?fine-tuning 上的策略目前非常簡(jiǎn)單。通過(guò)使用更復(fù)雜的自適應(yīng)和轉(zhuǎn)換技術(shù)(例如ULMFiT中的技術(shù))可能為我們的系統(tǒng)帶來(lái)實(shí)質(zhì)性的改進(jìn)。
更好地理解生成式預(yù)訓(xùn)練帶來(lái)提升的原因:盡管我們已經(jīng)討論了一些關(guān)于這個(gè)問(wèn)題的想法,但更有針對(duì)性的實(shí)驗(yàn)和研究將有助于我們對(duì)那些相互矛盾的解釋進(jìn)行判斷。例如,我們觀察到的提升有多少是由于對(duì)處理更廣泛上下文能力的改進(jìn),以及多少是由于對(duì)世界知識(shí)的改進(jìn)?
▌附錄:數(shù)據(jù)集示例
-
自然語(yǔ)言處理
+關(guān)注
關(guān)注
1文章
620瀏覽量
13657
原文標(biāo)題:OpenAI NLP最新進(jìn)展:通過(guò)無(wú)監(jiān)督學(xué)習(xí)提升語(yǔ)言理解
文章出處:【微信號(hào):rgznai100,微信公眾號(hào):rgznai100】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論