清華大學唐傑教授表示:“智源論壇基本的思路即邀請某一個領域頂尖學者,從而和大家一起探討前沿技術、分享經驗,並幫助大家成為更好的研究者和工程師。”在這一次論壇中,演講主題都圍繞著知識與知識圖譜展開,希望為深度學習系統嵌入“知識”的小夥伴們,這一場論壇就是你們所需的。
演講主題簡介
第一位演講者是清華大學長聘教授李涓子,她表示:“讓計算機擁有大規模高質量的知識是實現機器智慧的一項重要任務,大資料時代需要突破大資料向通用/領域知識轉化的知識引擎關鍵技術。”因此,李娟子老師主要介紹了當前知識工程的挑戰和相關工作。具體而言主要從以下三方面介紹知識工程:
- 知識工程在機器智慧中的主要作用
- 文字和知識相結合:如何對文字中的詞和知識庫實體的知識進行聯合表示學習
- 前沿研究工作:構建專家的知識庫或學者畫像
第二位演講者是清華大學長聘副教授劉洋,他的演講主題是:“Towards Knowledge-Guided, Interpretable and Robust Neural Machine Translation”。劉洋老師表示,從統計機器翻譯到神經機器翻譯,機器翻譯已經有了很大的提升,但如何用知識指導機器翻譯、如何提高可解釋性和魯棒性仍是非常前沿的研究領域。這一次的演講,劉洋老師就從這三方面探討機器翻譯的解決方案。
第三位演講者是清華大學副教授劉知遠,他表示作為典型的資料驅動方法,深度學習面臨可解釋性不強等難題,如何將人類積累的大量語言知識和世界知識引入深度學習模型,是改進NLP深度學習模型效能的重要方向。
劉知遠老師認為深度學習比較成功的地方在於,它為字、詞、短語、句子、文件等語言單位建立了統一的語義空間。在這個空間內可以建立語言單位之間的複雜聯絡,從而解決各種NLP任務。但是這個過程並不完整,深度學習還需要更多的語言知識、常識知識、世界知識、領域知識,因此它才能理解語言“詞層面”之下的意義。
最後,清華大學長聘副教授劉奕群重點介紹了資訊檢索課題組近來在該方向上進行的相關研究工作。劉奕群老師重點介紹了異質環境下的使用者互動行為模型構建、異質多模態資源的聚合排序、異質環境下的搜尋效能評價、異質環境下的可解釋推薦等研究工作。
通向知識引導的可解釋神經機器翻譯
自2016年以來,神經機器翻譯就已經成為最主流的方法。從最開始的Encoder-Decoder框架到嵌入注意力機制,再到近來Transformer全注意力結構,神經機器翻譯已經有了很多提升。但神經機器翻譯還是存在很多問題,我們該怎樣嵌入專業領域的字典?我們該怎樣解釋譯文與原文之間的關係,怎樣解釋NMT系統的內部執行機制?我們又該怎樣建立穩健的翻譯系統,從而不會因為原文的微小擾動而影響譯文?
為了介紹這些問題,以及對應的解決方案,本文將介紹劉洋老師在智源論壇上的簡要演講精要。
為NMT嵌入知識
為NMT嵌入知識非常難,難點在於表示上的壁壘。人類知識採用一種符號表示方法,例如簡單的詞典將“抗議活動”翻譯成protests。而神經機器翻譯系統採用的是數值表示,裡面全都是數值運算。所以因為表示性差異,我們很難把人類知識嵌入到神經網路裡。
清華希望能提供一種通用的框架,所有的知識都能加入到其中。因此我們把人類的知識表示成符號空間,把深度學習表示成數值空間。然後我們嘗試把兩個空間關聯起來,並將基於符號表示的知識都壓縮到數值空間,從而令其指導深度學習過程。
統一的框架其實可以加多種知識,初步探索是加了一些對機器翻譯非常重要的知識,例如雙語辭典。我們需要將雙語詞典表示成特徵的形式,嵌入到上面的系統而成為一種約束。以下展示了不同的特徵以編碼不同的知識。
NMT可解釋性
深度學習很大問題在於黑盒子問題,內部全部是數值運算,且它們沒有物理意義、語言學意義,與人類語法也沒有任何對應關係。所以我們並沒有辦法分析裡面過程,只知道給定輸入就會有輸出,當出現錯誤時也不知道它的產生原因是什麼。如果能開啟這個黑盒子,知道內部資訊是怎麼傳遞的,那麼其對NMT非常有意義。
對於可解釋性,有一種名為 Layer-wise Relevance Propagation(LRP)的新技術。它嘗試為人工智慧預測做出解釋,例如我們不僅想知道某張圖片可以分類為“貓”,同時還需要知道為什麼神經網路會認為它是貓。這種方法的核心思想即從所做的決策倒退到輸入端,從而知道哪一些特徵對決策的影響最大。
LRP進行推廣後可用到機器翻譯中,因為我們關心當生成某個詞時,它的上下文詞對其有什麼樣的影響。我們提出了一些技術來處理這個問題,例如假設想了解下圖三個藍色節點對紅色節點的影響,那麼我們可以通過後向傳播技術,對它們的共性進行分解。
通過這樣的技術,我們能夠對於機器翻譯中所有模型都進行視覺化的分析,包括Transformer。利用這種方法,我們也可以分析機器翻譯的錯誤,例如分析漏詞、重複翻譯、無關詞、否定的反轉等等。
NMT 的魯棒性
最後是魯棒性,這也是深度模型比較欠缺的。例如我們修改原文的某個字,那麼很可能譯文就完全變了,也就是說在輸入端稍微加一點干擾就會發生巨大的變化。因為深度學習是一種全域性關聯的模型,所以只要有一點點變化,就會牽一髮而動全身,這對於機器翻譯有很大的問題。
為了解決這個問題,目前比較多的方法是對抗訓練,即在訓練中加入噪聲而讓模型學會抵禦隨機擾動。而我們採用了一種新的訓練價值,核心思想就是要令模型抗噪,當輸入有噪聲的時候模型應該能消除它,從而能重構出原始輸入。
如下圖所示,X是正確的輸入,會加一些噪聲以形成 X'。當我們用神經網路進行學習的時候,會生成兩種內部表示H_x和H_x'。我們希望這兩種內部表示對於判別器Discriminator是不可區分的,如果不可區分,就說明噪聲不會對預測做出更大的影響。
所以模型大概分成三部分,即真實資料的似然度、噪聲資料的似然度,以及判斷是否帶噪聲的判別器損失。通過這種防範,我們能很好地減少使用者輸入噪聲的負面影響。
如下所示,產生噪聲有兩種途徑,第一種是從網際網路獲取真實噪聲資料,考察真實場景會出現哪些錯誤;第二種是自動生成隨機噪聲,它通過隨機擾動也能提升翻譯系統的效能。
在使用這種方法後,效能有明顯提升。不僅在有噪聲情況下翻譯效果會更好,在沒有噪聲的時候效果也會更好、更魯棒。
小結
上面的一些研究成果都集中開源工具裡,它可以直接下載使用。
最後總結一下,機器翻譯是人工智慧自然語言處理非常重要的一個任務,目前一個主流方法就是用深度學習加上大資料,但這種方式會遇到很多問題。
我們認為目前的神經機器翻譯存在三挑戰:
- 第一缺知識
- 第二不可解釋
- 第三不可魯棒
我們針對這三個問題提出了新增先驗知識、做視覺化,和提高魯棒性。我們認為未來還有更多的工作值得探索,包括如何真正實現知識指導的、可解釋的、魯棒的機器翻譯。