更新時(shí)間:2025-03-17 09:50:27作者:佚名
前言
本文基于作者多年來(lái)所采取的彎路和陷阱。本文簡(jiǎn)要介紹了。我希望這對(duì)剛進(jìn)入NLP領(lǐng)域的學(xué)生會(huì)有所幫助。
文章作者
Li Jiwei:Shannon Technology的創(chuàng)始人和斯坦福大學(xué)的計(jì)算機(jī)科學(xué)博士學(xué)位最短。在劍橋?qū)W者M(jìn)arek Rei從2012年到2016年的自然語(yǔ)言處理的頂級(jí)會(huì)議作者的統(tǒng)計(jì)數(shù)據(jù)中,Li Jiwei在14個(gè)頂級(jí)會(huì)議論文的第一作者的數(shù)據(jù)中排名第一。
輸入NLP字段的一些技巧
ACL 2019的貢獻(xiàn)剛剛結(jié)束,有2800多個(gè)提交的意見(jiàn),可以說(shuō)是歷史上最大的ACL。在深度學(xué)習(xí)的驅(qū)動(dòng)下,自然語(yǔ)言處理的子場(chǎng)逐漸被推到了人工智能階段的最前沿。
最近,在與同學(xué)的電子郵件中,許多學(xué)生,尤其是那些剛進(jìn)入Jin學(xué)校的學(xué)生,在深度學(xué)習(xí)的背景下提到了很多關(guān)于做NLP科學(xué)研究的困惑。基本上可以將其匯總到以下幾點(diǎn)中:如今,可以通過(guò)數(shù)十行Tensorflow或Pytorch來(lái)解決模型。每個(gè)人都忙于刷數(shù)據(jù)集的基準(zhǔn),但是由于實(shí)現(xiàn)模型的閾值現(xiàn)在較低,因此Sota很難再次刷新。即使最終被刷掉了,因?yàn)樵撃P投家训玫叫迯?fù),并且由于新穎性是有限的,并且文章不值得天空投資。即使在文章中,似乎沒(méi)有新的含義,并且已經(jīng)在水中混淆了。
深度算法的普及將使研究人員對(duì)這些算法本身過(guò)度關(guān)注,并且模型結(jié)構(gòu)的無(wú)限調(diào)整和改進(jìn)將使我們眼花azz亂。當(dāng)談?wù)撋疃葘W(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)成為非常酷的事情時(shí),虛榮心將使每個(gè)人同時(shí)忽略幾個(gè)要點(diǎn)。基于我多年來(lái)所采取的彎路以及我已經(jīng)啟用的坑,本文簡(jiǎn)要介紹了。我希望這對(duì)剛進(jìn)入NLP領(lǐng)域的學(xué)生會(huì)有所幫助。
1。了解NLP的最基本知識(shí)
Jurafsky和Martin的語(yǔ)音和語(yǔ)言處理是該領(lǐng)域的經(jīng)典教科書(shū),其中包含NLP,語(yǔ)言掃盲知識(shí),基本任務(wù)和解決方案的基本知識(shí)。閱讀本書(shū)將為您帶來(lái)許多NLP的最基本任務(wù)和知識(shí),例如標(biāo)記,各種解析,核心,語(yǔ)義角色標(biāo)簽等。這對(duì)于全球?qū)LP字段的理解至關(guān)重要。
書(shū)中的知識(shí)不需要細(xì)致,但是如果您刷一次或兩次,您將對(duì)NLP任務(wù)有基本的了解。下次遇到它時(shí),知道在哪里可以找到它是非常有意義的。此外,克里斯·曼寧(Chris Manning)的“信息檢索簡(jiǎn)介”也是一本可以盲目掃描的書(shū)。當(dāng)然,我認(rèn)為所有細(xì)節(jié)都不需要記住,但是需要理解大綱。 IR與NLP重疊的許多基本算法。
告訴我有關(guān)我采取的彎路。斯坦福大學(xué)NLP的資格考試的一部分是在Jurafsky和Manning Book中選擇一些章節(jié)進(jìn)行閱讀,然后老師將提出相關(guān)問(wèn)題。起初,我太懶了,無(wú)法觀看它,所以我一次又一次地參加了資格考試。但是,當(dāng)醫(yī)生無(wú)法延遲去年時(shí),他意識(shí)到,如果他知道這些事情,醫(yī)生早年就可以避免許多繞道。
為什么了解NLP的基本知識(shí)的重要性?我會(huì)給你一些例子。
最近,我一直在與同學(xué)進(jìn)行與語(yǔ)言建模有關(guān)的語(yǔ)言模型。許多學(xué)生可以使用語(yǔ)言模型使用LSTM或Transformers進(jìn)行語(yǔ)言模型。但是,由于OOV的平滑問(wèn)題,我大部分時(shí)間都被卡住了(熟悉的學(xué)生可能知道需要拉普拉斯平滑或需要更復(fù)雜的旋轉(zhuǎn)式平滑)。
為什么Bigram或Trigram LM很重要?要解決語(yǔ)言模型問(wèn)題,在實(shí)施深層模型之前interpolation是什么意思,第一步是編寫(xiě)B(tài)igram或Trigram LM。為什么?因?yàn)檫@些N-Gram模型易于實(shí)現(xiàn)和強(qiáng)大。通過(guò)如此簡(jiǎn)單的實(shí)現(xiàn),您可以告訴您該數(shù)據(jù)集的LM模型的下限。這樣,我們將知道神經(jīng)網(wǎng)絡(luò)模型不應(yīng)比該模型更糟糕。由于其超參數(shù),梯度爆炸和其他問(wèn)題,有時(shí)我們很難確定該模型是否真的不好,參數(shù)不能很好地調(diào)整或代碼是錯(cuò)誤的。然后,通過(guò)N-gram LM給出的下限,我們可以直觀地知道神經(jīng)網(wǎng)絡(luò)是否具有錯(cuò)誤或參數(shù)尚未正確調(diào)整。
第二個(gè)示例是關(guān)于發(fā)布文章。我想知道我的任何一位同學(xué)是否曾經(jīng)想過(guò)為什么在伯特訓(xùn)練的LM隨機(jī)更換會(huì)使結(jié)果變得更好,到底是隨機(jī)替代的,以及它將如何變得好。實(shí)際上,在Bert之前,Ziang Xie的數(shù)據(jù)no噪聲是斯坦福大學(xué)NG小組的神經(jīng)網(wǎng)絡(luò)語(yǔ)言模型(ICLR 2017)中的平滑級(jí)別,這是第一次提出了這種方法,并提供了理論上的解釋。這種隨機(jī)替換本質(zhì)上是一種基于語(yǔ)言建模中插值的平滑方法,而基于插值的LM平滑性位于Jurafsky的書(shū)的第3.4.3節(jié)中。
2。了解早期經(jīng)典的NLP模型和論文
與簡(jiǎn)單和粗糙的神經(jīng)網(wǎng)絡(luò)模型相比,早期的NLP算法確實(shí)更加繁瑣和復(fù)雜,但是在困難的硬件條件下,早期學(xué)者的智慧結(jié)晶確實(shí)存在許多智慧。如果您熟悉這些模型,則可以將它們集成到當(dāng)前的神經(jīng)網(wǎng)絡(luò)中。去年,我曾在人民人大學(xué)擔(dān)任研討會(huì),大約30-40名學(xué)生參加了會(huì)議。我問(wèn)了一個(gè)問(wèn)題,有人知道機(jī)器翻譯中的IBM模型是什么嗎?大約五分之一的學(xué)生舉起了手。我再次問(wèn),誰(shuí)可以寫(xiě)(或可能是筆跡)IBM Model1,沒(méi)有人。對(duì)于基于IBM模型的基于層次的MT,許多引用較高的文章近年來(lái)一直基于該模型的想法。有無(wú)數(shù)的例子:
1)將結(jié)構(gòu)對(duì)齊偏置納入Chris Dyer組的注意力神經(jīng)翻譯模型(NAACL16),提出了使用雙向注意作為神經(jīng)機(jī)器翻譯的約束術(shù)語(yǔ),這意味著,如果英語(yǔ)翻譯產(chǎn)生的目標(biāo)中的法語(yǔ)單詞在源中是英語(yǔ)單詞,那么在源中就會(huì)在英語(yǔ)中進(jìn)行英語(yǔ)單詞,而同一語(yǔ)言則是在英語(yǔ)中的英語(yǔ)單詞。
實(shí)際上,這個(gè)想法完全類似于珀西·梁的著名作品之一。早在NAACL達(dá)成協(xié)議時(shí),每個(gè)人都可以通過(guò)標(biāo)題的含義來(lái)猜測(cè)文章的內(nèi)容,而向前翻譯和反向翻譯的一致性應(yīng)保持一致。有多少正在從事神經(jīng)機(jī)器翻譯的學(xué)生讀過(guò)珀西的杰作(您知道珀西可能是球隊(duì))。
2)要處理對(duì)話系統(tǒng)中無(wú)聊的答復(fù),現(xiàn)在使用P(目標(biāo)|源)重新掌握的是標(biāo)準(zhǔn)配置。例如,Rico Sennrich的著名作品之一將單語(yǔ)數(shù)據(jù)與SEQ2SEQ模型相結(jié)合。實(shí)際上,這一想法已被廣泛用于短語(yǔ)基準(zhǔn)MT。 MT在神經(jīng)之前需要使用MERT來(lái)重新列出大型N最好的列表。反向概率p(目標(biāo)|源)和語(yǔ)言模型概率p(目標(biāo))是重新管理中功能的標(biāo)準(zhǔn)配置。
3)由哈佛NLP集團(tuán),Sam Wiseman和Alex出版的亞軍,序列到序列學(xué)習(xí)作為梁搜索優(yōu)化(EMNLP 2016最佳論文),基本上繼承了Daume′iii和Daniel Marcu的2005 Laso模型,將其思想調(diào)整到神經(jīng)上。
由神經(jīng)機(jī)器翻譯誕生的注意力不是IBM模型的神經(jīng)網(wǎng)絡(luò)版本。
3。了解機(jī)器學(xué)習(xí)的基本模型
神經(jīng)網(wǎng)絡(luò)的簡(jiǎn)單暴力是有效的。但是從科學(xué)研究的角度來(lái)看,熟悉基本的機(jī)器學(xué)習(xí)算法是一個(gè)強(qiáng)制性的課程。例如,NG的機(jī)器學(xué)習(xí)是必要的選擇。我記得不久前,我采訪了一個(gè)年輕人,發(fā)現(xiàn)他是一個(gè)非常聰明的同學(xué)。在短時(shí)間內(nèi),有一篇NAACL文章。我問(wèn)年輕人什么是EM算法。這位年輕人說(shuō)他從未聽(tīng)說(shuō)過(guò)Em,也無(wú)法使用EM進(jìn)行科學(xué)研究。我認(rèn)為這實(shí)際上是一個(gè)很大的誤解。當(dāng)我想到自己時(shí),我遭受了許多類似的損失。由于早期數(shù)學(xué)的基礎(chǔ)很薄弱,而且我沒(méi)有決心彌補(bǔ)它,所以我看到了與早期的變異推斷有關(guān)的算法,并且非常巨大。這種偏見(jiàn)持續(xù)了很長(zhǎng)時(shí)間,限制了科學(xué)研究的廣度。與粗糙的神經(jīng)網(wǎng)絡(luò)相比,諸如CRF之類的模型的推斷確實(shí)相對(duì)復(fù)雜(我已經(jīng)看了很多次,然后才能徹底弄清楚它)。
但是了解這些是NLP研究人員的基本質(zhì)量。書(shū)籍模式識(shí)別和機(jī)器學(xué)習(xí),尤其是某些小節(jié)確實(shí)很困難(并揭示了數(shù)學(xué)基礎(chǔ)很差的事實(shí))。即使只是要經(jīng)過(guò)它,它也需要強(qiáng)大的耐力才能閱讀它interpolation是什么意思,更不用說(shuō)完全理解它了。我已經(jīng)放棄了很多次,但是現(xiàn)在我仍然不了解很多章節(jié)。但是我認(rèn)為許多基本章節(jié)值得閱讀。實(shí)際上,您可以組成一個(gè)由兩個(gè)或三個(gè)人組成的研究小組。您不需要有雄偉的目標(biāo)。您可以花一兩年的時(shí)間來(lái)瀏覽幾章。
NLP是相對(duì)應(yīng)用的科學(xué),而不是特殊的數(shù)學(xué)。但是,我認(rèn)為我們每天使用的算法的基本數(shù)學(xué)邏輯仍然需要完成,例如輟學(xué),例如優(yōu)化(SGD,動(dòng)量,Adaboost,Adagrad),例如各種批次和層歸一化。這實(shí)際上節(jié)省了很多浪費(fèi)的時(shí)間網(wǎng)校頭條,銳化刀不會(huì)延遲切碎的木頭。
多年來(lái),在幫助學(xué)生調(diào)整錯(cuò)誤的過(guò)程中,我至少遇到了3-5名在訓(xùn)練時(shí)開(kāi)始輟學(xué)的學(xué)生,并且在測(cè)試時(shí)不要使用(1-Dropout)來(lái)縮放每個(gè)單元格(不要笑,這是真的)。然后繪制輟學(xué)曲線,輟學(xué)值越大,結(jié)果越糟。在討論中,同學(xué)看上去很困惑,不知道考試期間需要的規(guī)模是否。實(shí)際上,本質(zhì)是我不了解輟學(xué)背后的數(shù)學(xué)原理。
4。在NLP的其他子字段中閱讀更多論文
NLP有許多子字段,包括機(jī)器翻譯,信息提取,解析,標(biāo)記,情感分析,MRC等。有必要更熟悉其他子領(lǐng)域的進(jìn)度。實(shí)際上,在不同的子場(chǎng)中使用的模型不會(huì)有太大的差異,但是一開(kāi)始就很難看到在陌生領(lǐng)域的問(wèn)題,因?yàn)樗鼈儗?duì)問(wèn)題的形式化沒(méi)有很好的了解。這可能需要更多時(shí)間詢問(wèn)了解的學(xué)生。實(shí)際上,了解不同問(wèn)題的形式化也是領(lǐng)域知識(shí)的最佳擴(kuò)展。
5。了解簡(jiǎn)歷和數(shù)據(jù)挖掘領(lǐng)域的基本主要進(jìn)步
在熟悉上述要點(diǎn)(當(dāng)然可能需要至少一年)之后,熟悉CV領(lǐng)域中的基本任務(wù)和基本算法對(duì)于開(kāi)放科學(xué)研究視野也很重要。但是,不可否認(rèn)的是,由于不同的領(lǐng)域,寫(xiě)作風(fēng)格和術(shù)語(yǔ)差異很大,并且由于缺乏背景知識(shí)(文章中將省略某些基本知識(shí),并且每個(gè)人默認(rèn)情況下都會(huì)理解它,但是整個(gè)領(lǐng)域的人們可能不了解它)。實(shí)際上,第一次了解跨域文章并不容易。
我碰巧的是,我直接在討論課上直接說(shuō)出rcnn,以為我理解了,然后說(shuō)錯(cuò)了(Yu Xian仍然每天都在嘲笑我)。但是,重要的是,NLP領(lǐng)域中的一些重要文章實(shí)際上或多或少地將CV中的想法借給了NLP的CV借款。 NLP神經(jīng)網(wǎng)絡(luò)可視化和可解釋性的研究仍然落后于CV在CV中的可視化時(shí)間。如此眾多的工作在簡(jiǎn)歷中借了許多類似的工作。 NLP實(shí)際上也使用GAN從簡(jiǎn)歷中借用。
實(shí)際上,這兩個(gè)領(lǐng)域中的許多非常相似。例如,如果您不考慮問(wèn)題查詢,即視覺(jué)檢測(cè)中的區(qū)域提案(在大圖背景下找到特定區(qū)域),您想知道它是否與MRC中的跨度提取相似(在許多文本中找到跨度)。更不用說(shuō)圖像字幕的生成和序列到序列模型幾乎沒(méi)有很大的差異。
增強(qiáng)學(xué)習(xí)是在一代領(lǐng)域產(chǎn)生的。發(fā)布MT(Ranzato等,ICLR2016)之后,發(fā)送了圖像標(biāo)題的生成,然后返回摘要。參與者批評(píng)的模型相似,并且仍然有許多具有產(chǎn)生多樣性的文章。
因?yàn)楹茈y在各個(gè)領(lǐng)域中理解,所以建議第一次閱讀教程。如果有一個(gè)帶有sudo代碼的教程,那會(huì)更好。此外,您還可以查看掃盲班的視頻,例如斯坦福CS231N。此外,在NLP組中有一個(gè)很好的簡(jiǎn)歷(謝謝Yuxian),反之亦然,這也非常重要。
在過(guò)去兩年中,數(shù)據(jù)挖掘場(chǎng)中的圖嵌入增加了。目視估計(jì),NLP中的許多任務(wù)將被廣泛使用。考慮到幾年前,Deep Walk借Word2Vec并開(kāi)始在數(shù)據(jù)挖掘領(lǐng)域發(fā)揮作用,然后似乎再次回到NLP。
2025-03-17 16:05
2025-03-16 17:07
2025-03-16 10:11
2025-03-16 08:27