為什麼深度學習沒有成為自然語言處理的銀彈?

2021-10-16 10:10:19 字數 1307 閱讀 9419

最近在看一些外文文章,遂記錄於此。

目前(2021.1.18),在學術界,深度學習技術重新整理了自然語言處理的各項任務記錄,集萬千寵愛於一身,特別是基於transformers模型的其它改進模型。這些模型首先在"超大"資料集上進行預訓練,然後用於下游任務。transformer模型在其它領域的應用效果也比較好,大有一統江湖的氣勢(哈哈哈,開玩笑),例如語音,影象領域等。

雖然深度學習在nlp上取得了巨大的成功,但當用在工業級的應用上時,並沒有成為nlp任務的銀彈。主要由以下幾個關鍵原因導致(從落地的角度):1、在小資料集上容易過擬合。2、小樣本學習和資料生成。3、領域適配。4、模型可解釋性。5、常識和世界知識。6、花費。7、裝置上部署(嵌入式)。剩下的內容將圍繞上面列出的7個點進行簡要的闡述。

深度學習模型與傳統的機器學習模型相比擁有更多的引數,這意味著深度學習模型具有更高的表示能力。這帶來了乙個不好的問題:奧卡姆剃刀提出,在所有其他條件都相同的情況下,始終首選更簡單的解決方案。通常,我們所擁有的資料集是不足以訓練出乙個複雜的神經網路的,有時傳統機器學習模型的表現還要比深度學習模型好。深度學習模型在小型資料集上過擬合,從而導致較差的泛化能力,進而導致生產效能不佳。

在計算機視覺領域中,深度學習在少樣本學習(即從很少的訓練示例中學習)和生成高質量影象中取得了長足的進步。這兩項進步使得在少量資料上訓練基於深度學習的視覺模型變得可行。因此,在計算機視覺領域中,深度學習在解決工業環境中的問題方面已經獲得了更廣泛的採用。 目前,尚未看到為nlp成功開發類似的深度學習技術。

如果我們利用對來自某些通用領域(例如新聞文章)的資料集來訓練大型的深度學習模型,並將訓練後的模型應用於不同於通用領域的較新領域(例如社交**帖子),則可能會表現不佳。我們需要設計專門的模型來對領域知識進行編碼,或者在領域資料集上跑一遍(這個有點不現實,因為領域資料通常很少)。

這個話題老生長談了,沒什麼好說的。

儘管我們使用機器學習和深度學習模型在許多nlp任務上取得了良好的效能,但語言仍然是科學家的一大難題。除了語法和語義外,語言還包含我們周圍世界的知識。我們在交流時,語言依賴於邏輯推理和關於周圍世界的常識,比如「在王者榮耀中,李白是打野的」,對於經常玩遊戲的人,理解「王者榮耀」和「李白」這似乎微不足道,但是對於機器而言,需要借助外部知識,多步推理才能識別並了解其意思。由於這種世界知識和常識是語言固有的,因此理解它們對於任何深度學習模型在各種語言任務中都能表現良好是至關重要的。

當前的深度學習模型在nlp的基準任務上可能表現良好,但仍無法理解常識和邏輯推理。

除了熟知的gpu貴和人工貴之外,開發乙個深度學習模型需要很長的時間,主要在資料的收集和處理上。如果資料達不到要求,那麼開發周期還會延長。

不管是學術界還是工業界都面臨很多挑戰,革命尚未成功,同志仍須努力。

機器學習 深度學習 自然語言處理

文字挖掘 文字分類 機器翻譯 客服系統 複雜對話系統 手工特徵耗時耗力,還不易拓展 自動特徵學習快,方便擴充套件 深度學習提供了一種通用的學習框架,可以用來表示世界,視覺和語言學資訊 深度學習可以無監督學習,也可以監督學習 我 今天 下午 打籃球 p s p w1,w2,w3,w4,w5,wn p ...

自然語言處理是什麼,我們為什麼需要處理自然語言?

什麼是自然語言處理?自然語言處理 nlp 是指機器理解並解釋人類寫作 說話方式的能力。nlp的目標是讓計算機 機器在理解語言上像人類一樣智慧型。最終目標是彌補人類交流 自然語言 和計算機理解 機器語言 之間的差距。自然語言處理 下面是三個不同等級的語言學分析 句法學 給定文字的哪部分是語法正確的。語...

運用深度學習來理解自然語言

深度學習是機器學習技術的乙個名字,其使用多層人工神經網路。機器學習和人工智慧的一部分作用是如何使用文字和現有的知識來讓計算機變得更智慧型。在深度學習出現之前,文字影象所包含的意思是通過人為設計的符號和結構傳達給計算機。深度學習則是用向量來表示語義,如何靈活的表示向量 如何用向量編碼的語義去完成分類 ...