第三章 自然語言理解的技術分類及比較

第一節 自然語言理解的意義

自然語言處理在六十多年的發展過程中形成了自己特有的理論和方法,成為了一門有自己特定內容的獨立學科,這些知識需要經過艱苦的學習之後才可以逐步掌握。一提起「理解」總會讓人想到英國數學家圖靈在1950年提出的評測標準:如果一個計算機系統的表現(act)、反應(react)和相互作用(interact)都和有意識的個體一樣,那麼這個計算機系統就應該被認為是有意識的,他還認為檢驗計算機智能高低的最好辦法就是讓它來講英語和理解英語。

自然語言的理解是自然語言到機器語言的映射,是讓電腦讀懂人類語言的一門技術。人們常用圖靈實驗來判斷系統是否「理解」了某種自然語言,該領域研究的動力和目的在於其理論和應用系統可以幫助人類在使用圖靈機時從模擬計算機思維來建立大量形式系統的繁瑣中解脫出來,因此掌握自然語言理解的形式模型、研究內容及相關應用,跟蹤其技術發展方向並對其應用前景進行展望是十分有意義的。為了對什麼是「理解」及電腦如何能理解人類語言給出回答,提出自然語言理解的形式化定義,以及改進相關的公理系統,從而統一「意思理解」和「道理理解」等兩種理解類型是有重要意義的。

如果機器既掌握一些基本的事實和知識,又有了融會貫通的能力,它就會把舊的材料重新用知覺元素貫穿起來,根據需要重新生成新的信念,從而會不斷從舊的材料中獲得新的經驗。這個過程就像造紙一樣,把纖維用水搗爛攪拌最後融化成細小的紙漿,再根據需要生產出符合需要的紙產品。NLP中的文本理解需要被理解後的知識與知識的匹配來證明理解過程。但現成的、適當的知識常常比較缺乏,這些知識往往只能來自於推理基礎上的觸類旁通,它將從本質上提高知識的利用率及好用性,從而對軟體生產自動化等方面產生重大影響。

第二節 自然語言理解技術的分類

自然語言處理技術發展之初,基於規則的方法是被優先考慮的。後來發現這樣開發出來的系統不是特別好用,基於統計的方法就開始逐漸佔據了該領域的主導地位。它有點像通信中的編碼與解碼,原始語句就是一個已經編碼的信息,然後根據統計的概率來解碼處理原始信息。這個方法使機器處理的效果有了很大的提升,主要原因是高速發展的互聯網使得人們可以得到豐富的語料,而完善的語料庫是統計自然語言處理成功的一個先決條件;另外硬體性能的快速提高也給該方向提供了強大的支撐。

自然語言處理主要研製表示語言能力和應用的模型,建立計算框架來實現這樣的語言模型,提出相應的方法來不斷地完善這樣的語言模型,根據這樣的語言模型設計各種實用系統並編寫程序,探討這些實用系統的評測技術。自然語言中既有深層次的現象,也有淺層次的現象;既有遠距離的依存關係,也有近距離的依存關係;既要使用演繹法,也要使用歸納法。因此,我們主張把理性主義和經驗主義結合起來,把基於規則的方法和基於統計的方法結合起來。綜合這兩種方法來處理語言中形形色色的約束條件問題,使系統的效果不斷地得到改善。

哲學來自經驗,但它又是超越經驗的結果。哲學是理性思維、範疇和概念的運動,但又只有經驗才能推動它。感性與理性的這種矛盾實質上也就是經驗主義和理性主義的矛盾,它始終是人類哲學思想發展的內在動力之一。同樣在自然語言處理髮展的過程中,始終充滿了基於規則的理性主義方法和基於統計的經驗主義方法之間的矛盾,這種矛盾時起時伏,此起彼伏。自然語言處理也就在這樣的矛盾中逐漸成熟起來,強調一種方法,反對另一種方法,都是片面的,都無助於自然語言處理的發展。

第三節 自然語言處理的層次

自然語言處理是一個很不成熟的領域,充斥著各種各樣的理論、模型、方法、技術。這種不成熟是充滿活力的表現,意味著巨大的發展創新空間,但同時也給從業者帶來了很多的干擾和困惑。單單那些層出不窮的名詞、概念就攪得人們一頭霧水,找不到北。所以我們試圖抓住技術主幹,忽略細節,幫助讀者建立一個基本的技術全景圖,相信這對很多人尤其是初學者會有幫助。

學術界對該領域所涉及的語言學的知識平面劃分有各種不同的看法,但總體來看至少應包括辭彙學知識、句法學知識、語義學知識和語用學知識等平面。值得注意的是每一個平面傳達信息的方式是不同的。辭彙學平面可能涉及具體的單詞構成成分(比如音義結合的語言最小單位語素)以及它們的曲折變化形式的知識;句法學平面可能涉及在具體的語言中單詞和片語怎樣結合成句子的知識;語義學平面可能涉及怎樣給具體的單詞或句子指派意義的知識;語用學平面可能涉及對話中話語焦點的轉移以及在給定的上下文中怎樣解釋句子的含義知識。

另外根據語言處理模型的研究對象、複雜度、處理深度、處理目標的不同,自然語言處理技術 又可以分為詞模型、向量模型、模式模型等三個層次。宗成慶老師在《統計自然語言處理》中把語音層次排除在外,將自然語言處理劃分為形態學(morphology)、語法學(syntax)、語義學(semantics)、語用學(pragmatics)四個層次。朱巧明老師在《中文信息處理技術教程》中把自然語言處理的理解層面從低級到高級劃分為語音層次、詞形層次、辭彙層次、句法層次、語義層次、語用層次、語境層次等七個層次。還有一種劃分體系是將語言的分析和理解過程看作一個由語音分析、詞法分析、句法分析和語義分析的層次化過程。總體來看朱巧明老師的層次劃分體系比較全面細緻,值得認真學習。

第四節 理性主義與經驗主義的比較

本節我們介紹自然語言理解領域中兩大思想方法指導下發展起來的系統在各自技術實施路徑上的優缺點,並對它們在實踐中的表現做一個具體的比較。

基於規則的理性主義方法的優點是它所用的語言學規則的形式描述能力和生成能力都很強,其方法通常都是描述明確易懂的,可以有效地處理句法分析中的長距離依存關係等困難問題。很多語言事實都可以使用語言模型的結構和組成成分直接地表示出來,適用於分析與生成的雙向使用,還可以適用於語言知識的各個平面和不同維度的應用,與計算機科學中提出的一些高效演算法也是兼容的。這種方法的缺點是語言模型魯棒性較差,一些與語言模型稍有偏離的非本質性錯誤,往往會使得整個的語言模型無法正常地工作。近來已經研製出一些魯棒的靈活剖析技術,能夠使剖析系統在剖析失敗後得到恢復。這種方法很難模擬語言中局部的約束關係,需要各種專家共同進行知識密集的研究而不能通過機器學習的方法自動地獲得模型並進行泛化。它的針對性較強,系統的稍微改動將會引起整個連續的「水波效應」,因此很難進行下一步的升級。另外它很難模擬單詞的優先關係,這種局面使人感到困惑與不解。

基於統計的經驗主義方法能夠從訓練的語言數據中自動地獲取語言的統計知識,可以有效地建立語言的統計模型,通過不斷擴大語料庫規模的辦法來持續提高自然語言處理系統的性能。這種方法很適合用來模擬如「很少、很多、若干」等不精確的、模糊的概念,而這些概念在傳統語言學中需要使用模糊邏輯才能處理。這種方法的主要缺點是系統運行時間與所用統計模式中包含的符號類別的多少成比例線性地增長。隨著符號類別數量的增加,系統的運行效率會明顯地降低。另外目前要為某個特殊的應用領域獲取訓練數據,還是一件費時費力的工作。它的效果與語料庫的規模、代表性、正確性以及加工深度都有密切的關係,很容易出現數據稀疏的問題,需要使用各種平滑技術來解決。

第五節 索緒爾與哥本哈根學派

現代語言學發展標杆式人物索緒爾認為語言是一種表達觀念的符號系統,應把語言形式與超語言因素分開。所謂符號就是可感知的物質形式,是意義的承載,作為指代某物的約定標記。由於語言永遠處在運動變化之中,而這種運動又觸及語音、辭彙和語法各方面,所以共時研究不能絕對地排除演化的概念;歷時研究也不能完全拋開系統和功能等概念。正如他所言:「我已經成功地為語言學在眾多科學中找到了一席之地,這是因為我把它和符號學聯繫起來了。」這種研究方法奠定了現代語言研究的基石。

哥本哈根學派又稱為語符學派,其偏重純理論研究的特點順應了許多人文科學和精密科學發展的總趨勢,是語言學結構主義三大流派之一。學派的代表人物葉爾姆斯列夫把索緒爾關於語言是一個符號系統,語言和言語的區分,語言是價值體系,是形式不是實體等觀點發展到極端,得出了一個在邏輯上前後一貫的、自圓其說的結構語言學(格式塔語言學)理論體系。由於其在具體語言分析方面的著述極少,因此人們普遍認為它的理論很美,但對於語言科學沒有多大的實際用處。

索緒爾把語言分為能指和所指,而葉爾姆斯列夫提出兩個平面四個方面的細化分析結構,就使其理論具體化了。其次,這一學派特別注重語言的可計算和可度量的方面,把語言學和數理邏輯聯繫起來,而這以後形成了歐美語言學的主要傾向。最後,這一學派強調以語言單位的相互關係為研究對象,強調研究模式的精確化。正是有了結構主義的方法以後,語言學才脫離了直覺的與個人的經驗論斷,使語言學成為相對獨立的精確的學科。

第六節 理性主義結構學派的主張

自然語言處理中的理性主義形式結構學派以語法為研究目的,而不是僅僅描寫語言行為。它運用轉換-生成語法的理論對人的語言能力做出解釋,將語言直接作為在某一符號有限集合V中的符號串的集合,而V就被叫做辭彙。它要研究的是人腦中的認知系統和普遍語法。這種方法繼承了哲學中理性主義的傳統,多使用演繹法而很少使用歸納法。

1956年美國的喬姆斯基把有限狀態自動機作為一種工具來刻畫英語語法,並且把有限狀態語言定義為由有限狀態語法生成的語言,建立了自然語言的有限狀態模型,但斷言該模型不適合用來描述自然語言。他採用代數和集合論把形式語言定義為符號的序列,分別建立了0型短語片語語法、有限狀態正則語法、上下文無關語法和上下文有關語法的數學模型。他主張嚴格地按照規則來描述自然語言的特徵,試圖使用有限的規則描述無限的語言現象,發現人類普遍的語言機制,建立所謂的「普遍語法」。上述語法的判定問題複雜度依次為半可判定、NP完全、多項式和線性。他建立的形式語言理論為自然語言和形式語言找到了統一的數學描述語言,後者成為了計算機科學最重要的理論基石。

該學派最早在句法結構方面主要研究無約束短語結構規則、轉換規則以及語素音位規則,主張語法自主,而把語義排除在語法之外,這與此前流行的結構語言學的理論是一致的。隨後的"標準理論"時期主要研究基礎、轉換、語義和語音等四部分語法規則,其中最重要的修正是把語義納入到語法中來,提出語法結構有深層和表層之別,深層結構決定語義,可以通過轉換規則而轉化為表層結構。其後又發現表層結構對語義解釋也起一定的作用,語義解釋被全部放到了表層。最新的理論是在原來的規則系統之外增加了原則系統,另外提出了"虛範疇"的概念。目前,支配和約束理論仍然處於不斷的修正和發展中。

第七節 功能主義與情境意義

功能主義是當代語言學界與形式主義相對的一種學術思潮,它旨在通過語言在社會交際中應實現的功能來描寫和解釋各種語言中音系的、語法的和語義的語言學特徵。所謂功能是就語言在現實社會裡的實際作用、目的和任務。倫敦學派的馬林諾夫斯基認為真正的語言事實是實際語言環境中的完整話語。弗斯進一步把語言看成是人類生活的一種方式,而非僅僅是一套約定俗成的符號和信號。語言的意義不僅與一個特定景象和聲音的環境相連,而且深深地根植於人們賴以生存的社會活動過程中。在此基礎上韓禮德提出著名的語言環境(語域)理論,創建了語言學中的社會符號學。

功能和系統結構是布拉格學派的兩句箴言,他們認為語言是一個由多種表達手段構成的、為特定目的服務的功能系統,應對其結構進行共時的研究。他們認為語言的基本功能是作為交際工具,提倡應從語言功能入手去研究語言形式,從講話人的角度去考察語言,「說話人先想到要表達什麼,然後才去尋找適宜的形式」。布拉格學派認為句子既能從語法角度分析也能從功能角度分析。主位指已知信息或在給定語境是明確的話語起點前信息,述位指說話者陳述的有關或涉及話語起點內容,該學派在句法的功能分析上取得了巨大成就。

馬泰休斯是從心理角度來看待句子的,認為有必要把實義切分(功能交際)和形式切分(傳統語法)區別開來。句子的形式切分的基本要素是語法主語和謂語,實際切分的基本要素分別是表達的出發點和表達的核心,即主位和述位。雅柯布森把比勒的三功能理論擴展為六功能框架理論,即語境(指稱功能referential),內容(詩歌功能poetic),說話人(表情功能emotive),聽話人(呼籲功能conative),接觸(寒暄功能phatic),代碼(元語功能metalingua)。

第八節 統計學派的主張

牛頓認為只能從經驗事實出發去解釋世界,因而經驗歸納法是最好的論證方法,可以作為科學研究的一般方法論。他說:「實驗科學只能從現象出發,並且只能用歸納來從這些現象中推演出一般的命題」。經驗主義熱衷於描寫實際出現的語言,法國啟蒙運動的代表人物伏爾泰也有明顯的經驗主義傾向,他用英國的經驗主義推動了法國的啟蒙運動,現代語言學的發展明顯地受到這些經驗主義哲學的影響。無論是規範語言學、歷史語言學或是描寫語言學,都注重語言事實,提倡經驗主義。

統計經驗主義者的信念是孩子的大腦只能做一些普通的操作,包括連接、模式識別、一般化。但孩子從豐富的信號輸入中學習到了語言的結構。基於此統計學家認為可以用「觀其外,知其內」的方法來設定一個語言模型,推導出參數值。每一種語言現象都可以給出統計量化指標。我們生活在一個充滿不確定和不完整的信息世界裡,人類的認知是一個隨機現象,所以語言也是一個隨機現象。統計學派對語言現象進行估計並建立概率模型。

美國描寫語言學主張從具體的語言材料出發,通過語言學家對於語言材料的細心觀察和描寫,來發現自然語言現象的規律性。他們以替換和分布為手段,以辨別語素分析層次為目的,建立一套完整的語言描寫方法並取得了很大的成功。近年來,基於統計的自然語言處理的理論逐漸完善,應用碩果累累,取得了令人矚目的成績。其在文字識別、語音合成等領域的技術已經達到了實用化的水平,已經應用到網路內容管理與信息監控、不良信息的過濾和預警等方面,並且與網路技術、圖象識別和理解技術、情感計算技術結合起來,由此而產生了一些新的研究方向。

第九節 統計學派的語料庫語言學

語料庫和語料庫語言學在當今語言研究由高度抽象轉向實際應用的過程中起著十分重要的作。它提供真實語料和統計數據,幫助驗證現行的理論並構建新的理論,這些都是其重要的實用價值。基於大規模語料庫編纂的英語語法書和英語詞典已經問世,由此建立的統計模型也成為語言信息處理和加工的主流模式。

語料庫語言學以大量精心採集而來的真實文本為研究素材,主要通過概率統計的方法得出結論,因此從本質上講是實證性的。語料庫在發展的初期,只進行詞的一般分析,如詞頻統計等,後來增加了詞的詞性等語法屬性標註,現在人們越來越重視對語料庫作語音、構詞、句法、語義以及語用等不同層次的標註,並運用這種語料庫進行語言定量分析、詞典編纂、作品風格分析、自然語言理解和機器翻譯等功能的開發。

語料庫按語料選取的時間劃可分為歷時語料庫和共時語料庫;按結構可分為平衡結構語料庫和自然隨機結構的語料庫;按應用取向可分為通用語料庫和專用語料庫。專用語料庫可以進一步根據使用的目的又可以進一步分為語言學習者語料庫和語言教學語料庫等;按表達形式可分為口語語料庫和文本語料庫;按語種可分為單語種語料庫和多語種語料庫。多語種語料庫又可以再分為比較語料庫和平行語料庫。比較語料庫的目的側重於特定語言現象的對比,而平行語料庫的目的側重於獲取對應的翻譯實例;按動態更新程度可分為參考語料庫和監控語料庫;參考語料庫原則上不作動態更新,而監控語料庫則需要不斷地進行動態更新。

提供真實語料是建立各種語料庫的生命線,另外語料庫對於其應用領域來說還要具有足夠的代表性,只有這樣才能保證基於語料庫得出的知識具有較強的普遍性和較高的完備性。每個語料庫是有目的地收集的語料的集合,不是任意語言材料的堆積,要求語料庫具有合理的結構。最後我們還應當考慮語料庫語料的平衡性和規模。

第十節 機器翻譯的自然語言理解案例

機器翻譯行業可以比作太平洋,足夠廣闊。垂直領域的大量細分非常廣闊且大有可為。搜狗機器翻譯團隊成立於2016年,並在2017年5月的WMT國際機器翻譯評測中獲得中英翻譯的冠軍。他們有什麼新方法、新結構,新思路呢?

搜狗參賽的模型主體採用了基於循環神經網路的多層編碼器-解碼器結構模型,並帶有注意力模塊。編碼器和解碼器都有三層,其中編碼器的第一層為雙向層,因此在效率上能夠獲得不小的提高。根據論文所言只有最底層解碼器接受語義向量的語境信息,它通過全局性的選擇關注源語言句子的不同部分,動態地構建上下文向量來對傳統RNN編碼器-解碼器進行優化,極大改善了語言調序,尤其是中長距離調序問題。

系統用命名實體標註模型(NER)和神經網路實體翻譯器對人名的罕見詞進行翻譯;多模型集成來給出最優翻譯結果;重打分/重排序機制選出最優翻譯。他們採用Geoffrey Hinton團隊提出的網路層正則化技術來提高模型訓練效率,同時改善了模型的翻譯質量。搜狗的機器翻譯團隊在自然語言處理和深度學習方面都有非常深厚的積累。因為系統中用到的許多技巧,追本溯源,都有相應的自然語言處理領域的經典方法,同時也緊跟機器翻譯領域的前沿趨勢。

WMT是新聞數據集,最重要的罕見詞類別是人名。系統用了兩個串聯的模塊來處理。首先是標註模型,又稱命名實體識別,是自然語言處理的經典任務。他們用條件隨機場模型對源句和目標句中的詞同時進行標註,挑出其中在兩側都被標為人物的詞,用詞典的辦法解決數據中出現過的罕見詞。對於標註模型不能解決的集外詞,搜狗採用了將詞進一步拆分,然後建立神經人名翻譯網路,把源句中的人名變為位元組對編碼的子詞串,再復原為目標句中的人名的做法。這兩種方法都使用了傳統機器學習中的集思廣益思想。

集成方法最早見於文本信息的分類問題,是傳統機器學習中一個有深度的模型。模型通常由第一層的基礎分類器和第二層的集成分類器組成,基礎分類器分別給出分類預測,而後集成分類器對基礎分類器的預測結果進行集成整合,給出最後結果。在神經機器翻譯的語境下,系統取四個初始化參數不同的最優模型,綜合其信息給出n個最佳翻譯的候選列表,供下一步重排序使用。

重排序方法源於搜索排序,先模糊匹配再精確排序的辦法在實踐中獲得了很好效果。重排序也可以視為集成方法中的集成層,它用不同的方法從各種角度考量不同的翻譯選項。重打分階段涉及的模型包括:目標句右向左模型、目標句到源句模型以及N-gram語言模型。目標句右向左模型採用了從後往前生成目標句的方法;目標句到源句模型通過減小源到目標和目標到源兩個對齊矩陣的差異來減少注意力雜訊。由於該模型同時進行中文到英文和英文到中文的任務,因此二者的主模型互為目標句到源句模型。實驗證明,重排序採用的翻譯候選範圍對於模型效果也很重要,將翻譯候選從10個提高到100個可以讓中文到英文翻譯系統提高0.7BLEU分,而增加層數可以帶來0.8 BLEU的性能提升。

注意力模塊就是針對性處理因為不同語言語法結構不同產生的語序不同、來源詞與目標詞對齊難的問題。谷歌的學者甚至還提出了完全基於注意力的GNMT雙向八層結構翻譯架構,注意力機制不再是連接編碼器和解碼器的模塊,而是模型的主體,取得了性能上的突破。

推薦閱讀:

NNLM最新論文調研-1-《Character-Aware Neural Language Models》
嶺回歸-嶺回歸
學習筆記CB004:提問、檢索、回答、NLPIR
Joint Extraction of Entities and RelationsBased on a Novel Tagging Scheme
DeepPath 閱讀筆記

TAG:自然語言處理 |