薛 平
(波音公司 技術研究院,美國 西雅圖 98124)
自然語言是人類表達和交流最自然的方式。但其復雜性和模糊性也常常給有效的表達和交流帶來困難和問題。現代社會,尤其在當前信息時代,有不少領域對相關專業信息的清晰性和精準性有很高的要求,以確保工程技術人員能夠準確有效地理解并交流信息。其中有兩大類領域。第一類為由于系統和相關程序的復雜性而涉及大量的專業技術信息。這些技術信息必須清晰、精準并且易于專業人員閱讀,以確保他們正確地理解其原理和要求,執行相關的程序,維持系統的正常運行。在這些領域中,語言的規范化和標準化至關重要,民用飛機的設計、生產、營運和維修就是個典型的例子。例如,歐洲航空航天和國防工業協會(AeroSpace and Defence Industries Association of Europe)的技術信息標準S1000D,包括ASD-STE100[1]。第二類涉及人機互動,要求相關的語言既便于人的使用又適合計算機自動分析處理。典型的例子包括人工智能領域中的多種應用,例如,自然語言界面。這些類型的規定和要求推動了受控自然語言的產生和發展。嚴格定義的受控語言有助于人與人的有效交流以及人與機器之間的交互。受控自然語言企圖在自然和精準之間找到平衡,在人的需求和機器的需求之間達到某種程度的妥協。受控自然語言使用受限制的自然語言語法規則和詞匯, 它通常是常規語言的子集是與常規語言重疊的。這給語言解析和處理帶來特有的挑戰。
本文討論受控自然語言及其性質、分類和應用,以及計算處理方法。本文的組織結構如下: 第一節討論受控自然語言的類型和屬性,同時介紹幾個著名的受控英語的實例以及各自的特性。第二節以航空工業民用飛機所涉及的英語文本數據為例來表述受控自然語言在工業中的應用及重要性,并介紹工業界的語言需求和規范。第三節討論實現簡化技術英語計算機軟件檢測系統的一種方法,以及受控自然語言廣泛的意義和價值。第四節將涉及其他領域,包括當前熱門的人工智能等相關的課題。第五節總結本文提出的要點, 同時簡要討論受控自然語言在語言解析和處理上存在的挑戰。
受控自然語言由于它的多樣性而沒有一個準確且被大家共同接受的嚴謹的定義。綜合起來,受控自然語言可以被定義為[2]:
受控自然語言是基于某種自然語言人為定義的一種語言。在保留了自然語言大部分自然屬性的同時,在詞匯、句法以及語義上都加上限制條件以控制自然語言的多樣性、復雜性和由此可能產生的歧義。
受控自然語言根據目標和用途可分為兩大類:
(1) 第一類是受控自然語言的目標在于提高語言表達的清晰性和精準性。
① 提高文本的可讀性;
② 改善人與人之間的信息交流與溝通。
(2) 第二類是受控自然語言的目標在于提供自然而直觀的形式語言表達式。
① 對該語言進行可靠的機器分析和計算處理;
② 便于人機交流和互動。
世界上有不少類似的語言都屬于受控自然語言范疇。其中,僅受控英語就約有100多種[2]。有記載的受控英語已有80多年的歷史[3]。由于起源、發展背景以及應用環境和應用目的不同,各種受控自然語言被賦予了不同的名字,例如,“可控英語”(controlled English)、“可處理英語”(processable English)、“簡化英語”(simplified English)、“基本英語”(basic English)等。這些語言雖都屬受控語言的范疇,但它們各自有不同的特點和性質,在詞匯、語法和語義上受限制的方式和程度也各不相同。有些受控語言有較強的表達力,與此同時對歧義的容忍度也相對較寬。有些受控語言被定義得相當嚴密、準確,猶如形式邏輯和計算機編程語言。以下簡要介紹四種著名的受控英語實例。
(1) 卡特彼勒基本英語
卡特彼勒基本英語(Caterpillar Fundamental English,CFE[4])被認為是有史以來第一個基于行業的受控英語,屬于上文提到的第一類受控自然語言,其目標是提高語言表達的清晰性和精準性,以改善人與人之間的交流溝通。卡特彼勒是世界著名的工程機械公司,美國財富100家公司之一,主要開發、生產和銷售大型工程機械。隨著公司產品日益復雜,與顧客進行順暢的技術交流變得非常關鍵和重要,但對于不少顧客,英語并非其母語,卡特彼勒大約有兩萬多種技術文件。卡特彼勒的初衷是希望用CFE來書寫技術文件,并通過CFE的語言培訓使專業技術人員不用翻譯就理解技術文件。最初的CFE的詞匯被限制在800~1 000個單詞,且規定了每個單詞有獨一無二的含義。CFE在語法上采用了一系列的限制,包括以下規則[5]:
① 采用陳述句;
② 避免冗長而復雜的句子;
③ 避免一個句子中的題目過多;
④ 避免過多的形容詞和名詞連用;
⑤ 使用統一的句子結構;
⑥ 避免用復雜的過去和將來時態。
而這些所謂的限制不過是一般的指南而已,很難說是真正的語法規則。因此,CFE的一大弱點是其不可強制執行性。這些規則都比較模糊,仁者見仁,智者見智,用戶可根據自己的理解而執行,因此也難以保證技術文件書寫的標準化和一致性。卡特彼勒隨后開發了卡特彼勒技術英語(Caterpillar Technical English,CTE[6]),在詞匯的用法和語義上采用了較為嚴格且具體的限制,在語法上也增加了清晰的限制規定。更為重要的是,卡特彼勒開發了配套的計算機軟件系統自動分析句法和詞匯,通過人機互動來進一步加強和有效地執行語法和詞匯的規則。雖然最初的CFE僅僅是感性的規則,但其基本理念產生的影響甚為深遠。
(2) 簡化技術英語
簡化技術英語(The Simplified Technical English Specification,ASD-STE)[注]ASD-STE是European Aeronautics, Space, Defence and Security Industries—The Simplified Technical English Specification的縮寫。參看:http://www.trasportilogistica.ittvt.gov.it/PDF/ASD-STE100-ISSUE7.pdf.也屬于前文提到的第一類受控自然語言,由歐洲航空公司協會(The Association of European Airlines,AEA)發起,聯合歐洲航空和國防工業協會(European Aeronautics, Space, Defence and Security Industries,ASD)與美洲航天工業協會(The Aerospace Industries Association of America,AIA)共同研討開發,于1986年推出了第一個版本。英語是航空航天和國防工業技術文件的世界通用語言。ASD-STE在常規英語的語法和詞匯上都加上了限制,其目標是想要通過限制英語語法規則和詞匯用法規則來控制技術文檔中語言應用的復雜性,減少可能出現的歧義,提高文檔表達的清晰度和精準度,以便技術文檔的閱讀者特別是非英語母語的閱讀者能正確理解文件的內容。由于航空系統本身的復雜性,航空技術文件及其內容非常復雜,但航空系統的正確運行和維護關系重大,因此航空技術文件精準的表達和相關人員對技術文件正確的理解至關重要。美國聯邦航空管理局(Federal Aviation Administration of the United States,FAA)對航空技術信息特別是航空維修手冊以及技術服務公告(service bulletins)等文件的規范管理和審核十分嚴格。ASD-STE采用60多條語法規則限制,并發布了字典,明確羅列可以使用的英語詞匯以及這些詞匯相關的語義和用法。這些限制使ASD-STE的文本更清晰、精準且易于閱讀。ASD-STE已成為國際航空和國防工業技術文件的書寫標準。近年來隨著國際化的推進,ASD-STE也被其他領域,例如,語言服務、專業英語翻譯以及學術界所采用。我們將在第二節“受控自然語言在工業場景中的應用及重要性”中更為詳細地介紹ASD-STE的規則及特性。
(3) Attempto受控英語
Attempto受控英語(ACE[7])屬于第二類受控自然語言,在語法規則和語義解釋上都受到嚴格的限制,以致它的每個表達式都可無歧義地被自動轉換為一階邏輯的表達式,因此它事實上是一種形式語言。ACE限制有明顯歧義的英語結構,并且通過使用一組無歧義的解釋規則對某些可能有歧義的句子進行唯一而無歧義的解釋。當仍有多種可能的解釋時,ACE引擎讓用戶選擇其中之一。ACE有較為豐富的表達力,它不僅允許使用及物動詞和不及物動詞,還能用雙賓語動詞。不僅可用簡單句,也可用簡單句以遞歸的方式構建復合句。ACE保留了許多英語的自然屬性,又具有形式語言的特性,可作為統一建模語言(UML)的替換語言,描述軟件規范;也可替換網絡本體語言(OWL),描述各種信息以及信息之間的關系。因此,近年來ACE及其相關工具已用于書寫軟件規范、定理證明、知識和語義網表示、查詢語言和自然語言用戶界面等。更詳細的討論,參閱文獻[8]。
(4) 計算機可處理英語
計算機可處理英語(簡稱CPL[9])也屬于第二類受控自然語言,由波音公司研究院研發。其目標是用來支持知識獲取收集,以及建立知識庫,特別是建立可推理的知識庫。CPL定義的基本句型是:
? 主語+動詞+補語(+修飾語)
CPL規定一個完整的句子必須有主語、動詞和補語,而修飾語則是可有可無。可用名詞、形容詞、介詞短語等做修飾語。其語法限制還包括:不允許用代詞;名詞的指向必須是特指的;簡單句子可用連接詞“and”連接構成并列句。
CPL允許的句子可分為三類:基本事實陳述句、問句和推理規則句。問句包括兩種基本句型:
? What is NP?
? Is it true that Sentence?
推理規則句的基本句型為:
? IF Sentence 1 THENtypicallySentence 2.
在以上的句型中,Sentence 1和Sentence 2都必須是滿足以上CPL限制規則的句子,可以是帶連接詞“and”的復合句。CPL引擎使用啟發式規則和輔助的詞匯資源(如WordNet)來排除歧義、限定語義關系。我們將在第四節更為詳細地討論CPL的語法解析、語義解釋及其主要的應用。
綜上所述,任何受控自然語言都是自然語言的受限版本,在語法、詞匯和語義上通過明確定義受到限制,使其減少了復雜性和可能產生的歧義,有助于人們的閱讀和理解,或便于計算機對其進行處理。第一類和第二類受控自然語言的區別在于目標不同,因此在詞匯、語法和語義上受限制的方式和程度不同。需要指出的是,雖然受控自然語言通常在很大程度上保留了原語言的自然性,但其語法規則和詞匯用法的限制是人為的,因此受控自然語言并不是自然衍生的語言,而是一種人造語言,一種構建的語言,使用起來也不是完全自然的。
現代社會有不少場景要求清晰、精準而又較為自然的表達和交流。民用航空領域是個典型的例子。大型民用飛機可能是當今最為復雜的工程系統之一。從飛機的設計、生產,到飛行營運,到日常的維護,涉及海量的技術信息。以民用飛機日常的運行維修所涉及的技術信息為例,其技術信息有三大特征。
(1) 技術信息量非常巨大
大型民用飛機,如一架波音B747或者空客A380客機有大約300萬—600萬個零件。單架飛機維修手冊通常平均超過4萬頁。波音公司每年為大約13 000架正在服役的飛機共出版約3億頁的技術維修資料(包括增補、更新)。如果這些技術資料是紙質的,把它們一頁一頁疊起來,相當于十萬多英尺高[注]印刷用紙的厚度通常大約在0.003到 0.007英寸之間。,也就是相當于三到四倍于珠穆朗瑪峰的高度,如圖1所示。

圖1 海量的維修信息
(2) 客戶特定的內容和配置極為廣泛
即使相同類型的商用飛機也在很多方面會有差異。這常常是源于產品的不斷改進以及客戶對定制飛機的需求。即使同一公司定制的相同類型的飛機也會如此。飛機這些差異可大可小,可以是用不同的發動機,也可以僅僅是某個斷路器位于飛機上不同的位置。這些差異意味著不同的飛機維護程序。因此每架飛機的維修技術資料都可以說是特定的, 不能與其他飛機的維修技術資料相混淆。
(3) 十分頻繁的技術資料修改和更新
技術信息需要持續和及時地修改更新才能有效。修改和更新的主要原因包括:
① 新的系統配置;
② 工程上的改動;
③ 工程技術程序的改進;
④ 客戶的要求和反饋。
因此,波音公司和空客公司都支持頻繁的技術文件更新,平均每90~120天就會有一次更新。如此龐大的信息數據,加上廣泛的配置差異,導致修改和更新相關的部分并妥善管理,確保文件的準確性和一致性成為一項極為繁瑣而重大的任務。考慮到這些因素,90天到120天實在不是一個太長的時間。
民用飛機技術資料的復雜性直接反映了飛機系統的復雜性。某種意義上說,飛機的技術資料以及各個部分之間在形式上(包括語言形式)和內容上的關系與飛機系統同樣復雜。為了規范編寫、出版和管理民用飛機技術信息,美國航空運輸協會(ATA)[注]ATA的全稱是Air Transport Association of America。與歐洲航空和國防工業協會分別頒布了信息標準、國際技術出版規范,如Spec100,iSpec 2200,S1000D,包括數據規范和數據模型。換句話說,飛機技術文件,例如,維修手冊雖然是文檔的形式,但已經被看成是一種工程規范,要求信息的精準和清晰,有助于準確理解、正確維修,確保系統正常運行和飛行安全[注]近年來,ASD規范S1000D以及ASD-STE也逐步被用于美國軍方陸地、海上和空中合同。但民用航空其他技術文件和工程文件,比如飛行機組操作手冊,根據目前的規定不必滿足ASD-STE規范。。作為技術信息標準S1000D的一個組成部分,ASD-STE 簡化技術英語成為技術文件的語言國際標準。雖然各國相關的法規并沒有硬性要求民用航空的技術文件必須用ASD-STE編寫,但在實踐中,航空公司幾乎都在購買飛機的合同中明確要求相關的技術文件,特別是飛機的維修技術手冊,包括服務公告(service bulletins)必須使用ASD-STE編寫。與此同時,政府航空管理部門,如美國聯邦航空管理局,對關鍵的航空技術文件的清晰性、可讀性有相當嚴格的規定和審核程序。事實上,提高技術文件的清晰性、可讀性和編寫質量也符合飛機生產廠家的切身利益。技術文件若不明確清晰,不僅會造成難以想象的事故,而且客戶會不斷地提出問題,咨詢服務并解決這些問題也是不可低估的人力和資金的耗費[注]據報道,波音和空客的技術文檔有關部門每年約耗費20%的經費用于回應、解決客戶提出的問題。。
第一節提到卡特彼勒公司希望通過CFE的語言培訓使專業技術人員掌握CFE,不僅用于編寫技術文件,而且能準確理解這些文件的內容[注]我們把卡特彼勒受控英語通稱為CFE,實際包括CFE和CTE。。卡特彼勒公司認識到僅僅依靠語言培訓還不夠,還要有配套的計算機軟件協助相關人員使用CFE。實踐證明,計算機軟件直接關系到使用受控自然語言的有效性和成敗。事實上,絕大多數的受控自然語言都有相應的語言處理系統。受控自然語言雖然基于自然語言,保留了自然語言的很多自然特性,但它畢竟是人為定義的語言,在使用時與自然語言是有沖突的。人們在使用語言時若沒有計算機軟件檢測和輔助,便會不自覺地使用自然語言。而且人工審校受控自然語言文件的合格程度十分有限,效率低,因為使用自然語言是人的本能。
為了更好地遵守、執行國際技術語言規范,ASD-STE計算機軟件檢測系統應運而生。例如,波音公司研究院在20世紀80年代就著手研發了人機交互式語法檢查軟件系統,被稱為波音簡化英語檢測器(Boeing Simplified English Checker)[注]參看:https://www.boeing.com/company/key-orgs/licensing/simplified-english-checker.page.。并且多年來一直在為完善計算機軟件工具而不斷努力。這一軟件系統自動處理必須符合ASD-STE規范的技術文件資料,檢查發現不符合ASD-STE規則的用法并根據簡化技術英語標準提供相關的反饋,以協助文件作者提高文件的清晰度、精準度,以及書寫質量。第一節中提到,ASD-STE包含規則和詞典兩個組成部分。以下是ASD-STE規則的幾個例子:
? 規則1.2: 使用ASD-STE詞典中的ASD-STE認可的單詞及相關的詞性;
Example: “test”只能用作名詞test(n),不能用作動詞test(v)。
? 規則2.1: 復合名詞不可包括三個以上的名詞。
Example: (NON-STE)universitystudentadmissionmeeting
? 規則3.1: 不用動詞“-ing”的形式,除非動詞“-ing”的形式是專用名詞或專用名詞的組成部分。
Example: (NON-STE)Theindicatoriswarningthepilot.
(STE)Theindicatorwarnsthepilot.
(STE)TheWarningIndicatorison.
? 規則3.7: 在書寫程序或者步驟時,用主動語態而不用被動語態。在描述性語言中盡量不用被動語態。
Example: (NON-STE)Oilandgreasearetoberemovedwithadegreasingagent.
(STE)Removeoilandgreasewithadegreasingagent.
? 規則3.8: 當詞典中有STE認可的表述相關動作的動詞時,用這一動詞來描述相關的動作,而不能用這一詞的其他詞性。
Example: (NON-STE)Thisisanindicationofsystemfailure.
(STE)Thisindicatessystemfailure.
計算機自動檢測ASD-STE規則軟件系統必須嚴格遵守ASD-STE規則,準確識別任何違反ASD-STE規則的詞匯、短語和句子。ASD-STE的規則在常規英語規則的基礎上加上了額外的限制。凡是符合常規英語規則且不違背ASD-STE規則的語言都是ASD-STE。因此,ASD-STE檢測軟件系統要有實際的用處,不僅能對文本中不符合ASD-STE規范的錯誤做出識別和反饋,還要識別不符合常規的英語語法用法等錯誤。換言之,ASD-STE檢測系統既需要實現常規英語語法規范,還得實現ASD-STE的規范。我們在下文中介紹一種實現這一軟件系統的方法。這一方法基于常規英語語法規則和ASD-STE規則,詳細地表達詞匯、語法規則以及語法關系的信息,對輸入的語句進行詞匯和句法解析。絕大多數語法解析系統的處理方法都是只受理符合語法的短語和句子,只能給符合語法的短語和句子作完整的解析。要識別不符合語法的短語和句子并指出相關的錯誤,必須延伸擴展語法解析系統,使其能受理不符合語法的短語和句子,并能夠對不符合語法的短語和句子中的錯誤進行解析。
第一節中提到受控英語是建立在常規英語的基礎上,使用受限制的語法規則、詞匯和語義, 它通常是常規英語的子集,與常規英語重疊。違反英語語法、ASD-STE規范的常見錯誤包括的錯誤句型、錯誤詞匯可以看成一個語言的模式集合,以“違規規則”(包括“違規詞條”)的形式分別概括每一類錯誤,匯集起來以定義這個違規集合[注]關于“違規規則”的應用,參看文獻[10-11]。。常規英語、ASD-STE、常見的語法及用法錯誤各自體現的集合分別由三組規則來定義。三者之間的關系示意圖如圖2所示[注]ASD-STE在某些方面可能超越常規英語的允許范圍,比如在專業名詞的使用上。。如此延伸擴展的語法解析系統體現了這三組規則的集合。

圖2 常規英語、ASD-STE和常見錯誤的集合關系常規英語規則?常規英語常規英語規則和ASD-STE規則?ASD-STE簡化技術英語違規規則?常見錯誤
常規英語語法詞法規則定義常規英語。ASD-STE語法詞法規則在常規英語的基礎上規定了額外的限制,定義簡化技術英語。因此凡是沒有違反ASD-STE規則、符合常規英語規則的語言現象都在ASD-STE范圍內。“違規規則”定義常見錯誤,即違反ASD-STE規則的語言現象。常見錯誤包括符合常規英語語法、詞法規則但違反ASD-STE 規則的語言現象,比如包含三個以上名詞的復合名詞、被動語態的句子等。圖2中違規規則雖然與常規英語規則部分重疊,但擴展了常規英語規則定義的語言范圍,使滿足違規規則的結構得以編譯并生成解析樹圖。因為所有的違規規則都帶有違規特征標志,語法檢測算法跟蹤記錄了使用違規規則在解析樹圖中的位置,這一信息正是診斷錯誤的關鍵。基于以上三組規則,軟件系統對輸入的語料進行深度解析,對任何違反ASD-STE 規則的輸入語料給出相應的反饋[注]波音簡化英語檢測器軟件系統采用了類似的違規規則方法。。
這一方法采用中心詞驅動短語結構語法理論框架[12]。語言模型采用特征結構,詳細地表達詞匯、語法規則以及語法關系的信息[13],并采用自下而上的圖表解析法對語料進行表達、解析和處理。圖3是簡單的主謂關系的表達式[注]有關這一理論框架以及表達式的詳細信息, 請參閱本文應用的參考資料文獻[13]。。

圖3 特征結構表達式
特征結構詳細地表達了有關詞匯、語法規則以及語法關系的信息,比如在以上結構中中心詞(即動詞)對主語的組合搭配的要求。這里以共享的索引標記簡略表示相互搭配的關系。因此任何主謂不搭配的句子都將在該句的特征結構中表達出來,而使系統能給出詳細而準確的反饋。豐富的信息表達加上詳細的結構解析使其能夠正確識別各種錯誤的詞匯、復合名詞及其組成部分、動詞特征和形態、詞語之間的關系等。
顯然,這一基于規則的方法并不是當今流行的自然語言處理的方法。近30年來,絕大多數自然語言處理的研究和應用注重統計模型及相關算法的研究和應用。機器學習,特別是深度學習(deep learning)的方法,被廣泛應用在自然語言處理這一傳統領域中并取得了不少突破。我們這里采用基于規則方法的主要原因是由文本規則檢測這一問題的性質和要求所決定。檢測發現不符合規則的用法并根據簡化技術英語標準提供相應的反饋是一個精準度要求極高的任務,需要對詞匯、句子結構以及語義做深度解析才能準確地指出錯誤。數據統計的方法能統計出詞匯、語串(包括短語),甚至語串之間的相關性,以及句子在日常語料中出現的頻率。問題是根據頻率特別是根據短語或句子出現的頻率難以準確地判別這些短語或者句子是否符合語法、是否符合ASD-STE 規則、是否符合規范的語言標準。語言是有層級結構的,句子中的某個組成部分,例如,詞或者短語使用得正確與否,常常與句子中的其他部分及其語法功能相互依賴,而且這些相互依賴的句子成分往往不是相互鄰接,他們相隔的距離可以是隨機任意的,比如上面提到的英語主語、謂語搭配的問題。主謂搭配涉及動詞的形態與主語中心詞的特征之間的搭配,做主語的名詞短語可以任意地復合,比如帶多個修飾語和復合從句致使主語的中心詞與相搭配的動詞相隔甚遠。例如,“The university student admission meetings that we attended after the school had started was planned strictly according to the school tradition。”這個句子有主謂搭配的語法錯誤。主語的中心詞“meetings”是復數形式而動詞卻錯用了單數形式。雖然主語、謂語不相鄰接,但它們仍需要在單復數的形式上相互一致。
事實上,英語中類似的語言現象非常多。比如,英語疑問句中相關成分移位也常常造成句子成分不鄰接。基于數據統計的方法基本上是建立在線性序列基礎上,將字或者詞等線性符號串作為基本運算單位,語言模型對基本語言單位的鄰接關系進行統計和概率度量,不對句子的層級結構及語法功能進行深度的解析,而且也不具有豐富的詞匯、語法和語義表達式,因而難以準確地識別句子成分之間的語法關系,特別是遠距離的相互依賴關系,難以精準地識別相關的錯誤以及錯誤在句子中的具體位置。需要指出的是,雖然我們主張采用這一基于語言規則的方法,但在整個處理過程中不少步驟采用統計的方法有明顯優勢,特別是在某些預處理和后處理的步驟中,比如詞性標記、解析排序、排除歧義及判斷習慣的用法傾向等。我們知道語言中有不少現象具有不確定性,取決于場景,例如,輸入的句子可能有多種合理的分析和解釋。這類具有不確定性的語言現象難以被固定的規則所概括。因此,基于規則的方法與統計方法相結合,在處理的過程中應用了大數據及其相關的分析方法,這不僅對嚴格的語法規則以及違反詞匯、語法、語義和風格規則的錯誤能夠進行準確、清晰的識別,而且對習慣的用法傾向和具有不確定性的語言現象也能做出相應的判斷和恰當的反饋。這些功能在文件檢測、修訂中有多方面的應用。
事實上,受控自然語言除工業技術文件的編寫出版的應用外,還有非常廣泛的應用。工業技術文件使用受控自然語言僅僅涉及第一類受控自然語言。其主要目標在于加強語言表達的清晰性和精準性,以提高文本的可讀性,改善人與人之間的交流溝通。下面我們簡要討論第二類受控自然語言的應用,其應用與一系列的人工智能的應用相關。第二類受控自然語言被定義得相當嚴密、準確,提供了一種自然而直觀的語言表達式,既能實現受控語言自動機器分析和處理,也便于人機交流和互動。這就為很多應用提供了可能性,也為很多人工智能的應用提供了自然的交互手段。物聯網各種器件的人機自然語言交互、機器人或無人飛行器的自然語言控制,以及其他系統的自然語言界面等,都是大家熟悉的例子。這些領域都有特定的場景,其常用的指令是有限的,而且大部分指令不要求復雜而多樣化的語言形式,因為特定的場景限定了可能的內容,語義也相對直接而簡單明了,但這些應用對語義的解釋都要求比較精準。例如,亞馬遜的智能音箱Echo,它通過語音交互除播放音樂、新聞外,還能控制智能家居設備(例如,智能燈、空調、電視等)、叫出租車、從亞馬遜網站上訂購商品等。Echo似乎能理解自然語言,事實上它只是執行十分有限的語言指令。這些基本指令語言都可以說是一組受控自然語言。采用受控自然語言是為了方便用戶,對用戶來說熟悉和使用這些指令十分輕松自如,因為這些語言指令本身就是他們熟悉的語言的一部分。由于它的有限性,使其處理起來也相對簡單,這里就不一一詳述了。
下面我們簡略討論受控自然語言在知識表達和機器推理中的應用。知識表達和機器推理是人工智能領域十分重要的課題。近年來隨著計算能力的迅速增加(參見摩爾定律),人工智能的技術和應用蓬勃發展,出現了一系列的技術進步,其應用深入到廣泛的工業自動化領域和日常生活的各個方面。但是,這些技術和應用以及被認為是人工智能的現有系統,絕大多數都不過屬于“弱人工智能”(weak artificial intelligence)的范疇,比如Siri和Netflix就是這類技術產品的典型例子。這些系統都是專注于一項特定的任務,不具有類似人的認知分析能力,及所謂“人工通用智能”(artificial general intelligence),不能根據情況進行推理而解決問題。推理是人類智慧的核心,人工智能進一步發展要求我們對人的智慧、知識以及認知能力做更深入的研究。任何智能都與知識有關,任何智能系統都離不開某種形式的知識集合的支持。知識獲取、表達以及建立知識庫,特別是建立可推理的知識庫,仍然是人工智能的進一步發展中的主要瓶頸。知識的匯集和表達是建立自動推理能力的基礎,自然語言當然是人類最具有表現力也最為自然的語言形式,但其復雜性使計算機的自動處理十分困難。大型的知識庫,特別是能支持智能系統的知識庫,比如語義網(Semantic Web)和知識圖(Ontology or knowledge graph)通常是用形式語言(如RDF, DAML+OIL)描述定義的。形式語言有明確定義的語法和無歧義的語義,但是構建特定領域知識庫的領域專家常常對這些形式語言并不熟悉,而且形式語言的表達能力很有限。特定領域中的知識概念用自然語言表達十分順當,但卻常常難以用形式語言表達,以致造成理解上的距離甚至差錯。正如相關文獻中已經提到[14-16],受控自然語言是彌合自然語言和形式語言之間差距的一種方式。理想的受控自然語言應該具有以下三個特征: ①具有明確、精準定義的語法和語義,能夠被直接轉換成某種邏輯表達式,易于計算機自動處理; ②基于某種自然語言,語言自然而直觀,易于人類理解和表達; ③具有足夠的表達能力,能夠描述表達相關應用領域中的摡念和關系。
以上提到的受控英語CPL[9]應用受控自然語言表達知識,建立知識庫。與其他語言以及相應的知識庫系統相似,CPL配有一個推理引擎作為系統的一部分。CPL計算處理包括三個主要步驟: ①解析輸入的CPL句子; ②將解析的結果轉換成一種邏輯表達式; ③將邏輯表達式轉換成知識推理引擎系統KM的語句[注]KM全稱the Knowledge Machine,由德克薩斯大學研發。參看文獻[17]以及http://www.cs.utexas.edu/~mfkb/km/.。KM是具有一階語義基于框架理論的語言,其推理引擎使用了輔助的詞匯資源和相關的工具來限定語義關系排除歧義,以取得對輸入的語句進行正確的解釋。KM系統并沒有采用CPL作為推理語言。事實上,受控自然語言可用于整個處理過程,包括推理的步驟。國際技術聯盟(International Technology Alliance, ITA)的受控英語ITA-CE就是個例子[注]國際技術聯盟(International Technology Alliance)是由英國國防部和美國陸軍研究院共同資助的科研聯盟。參看:https://en.wikipedia.org/wiki/NIS-ITA and http://nis-ita.org/.。ITA-CE定義了一組常用而簡單的句型來表示關于實體存在、屬性和關系的命題。同時還應用邏輯規則句和理由陳述句[16]。因此,ITA-CE不僅用受控英語作為表達知識的語言,同時用受控英語作為邏輯語言表達各種事物間的邏輯關系,并且用受控英語作為推理語言。ITA的運作環境是個動態的環境,不斷面對大量的結構化和非結構化信息數據。環境中的成員包括人員和機器,人員只是整個網絡的一部分,團隊之間和跨領域的合作需要不斷獲取知識、交流信息。ITA-CE的主要目標是支持跨領域的團隊之間的信息交換。團隊成員通過人機互動獲取知識,共享相互之間的信息。關于ITA-CE具體的應用,參考文獻[18]。
受控自然語言隨著社會的工業化和信息化的發展應運而生。工業化和信息化的高度發展帶來了一系列的場景,要求既精準而又相對自然的信息表達和交流。ASD-STE以及類似的受控自然語言旨在加強語言表達的清晰性和精準性,以促進人與人之間有效的交流。CPL以及同類的受控自然語言的目的在于實現直觀而精準的形式表達式,以便支持人機互動和計算機自動語言分析處理。人與人之間有效的交流和人機互動都要求語言同時具有精準性和自然性。自然語言和形式邏輯語言都不能同時滿足這兩點要求。受控自然語言是這兩者之間的一種折衷。同時要求精準性和自然性是受控自然語言的產生和發展的主要動因。
大型的復雜系統以及其復雜而大量的專業技術信息數據要求信息的標準化和規范化,要求技術信息表達得精準,便于閱讀和理解。2.1節中提到的民用航空的技術信息數據事實上與當前大家熱論的大數據問題有非常類似的特點。大數據不僅僅是量大,還有其他重要的特征,所謂大數據三要素:數據量大、變化快、多樣化[注]大數據有三個維度,及所謂三個V:Volume (amount of data)數據量, Velocity (rate of change)變化率,Variety (range of data types and sources)多樣性。。民用航空的技術信息數據也同樣如此:數據量大,動態和持續的修改更新,配置和信息多樣化。因此,毫不夸張地說,民用航空的技術信息數據問題是個實實在在的大數據問題。通常大數據的問題僅涉及數據分析,以及有用信息挖掘提取,對信息的精準度沒有硬性要求。但民用航空的技術信息不僅涉及信息分析、信息挖掘提取,而且涉及信息數據編寫、出版和管理,對內容的精準度有極高的要求,需要滿足相關的規范標準。
受控自然語言使用受限制的語法規則和詞匯, 它通常是常規語言的子集。雖然它是基于某種自然語言,但它也是人為定義的語言。因此,任何受控自然語言的使用與人們使用自然語言的本能在多方面都有沖突,需要額外的努力。正因為如此,受控自然語言的培訓必不可少。除此之外,研發和應用受控自然語言軟件檢測工具十分重要,直接關系到使用受控自然語言的有效性。
本文討論了基于語法解析來實現ASD-STE軟件檢測系統。這一解析系統包括了定義常見錯誤“違規規則”,延伸擴展了常規語法解析系統,使其不僅能解析符合語法規則的句子,也能受理并解析常見的違反規則的語言現象。有研究者指出:可能出現的錯誤范圍太廣難以預測,用“違規規則”來定義每個可能的錯誤組合不可行。他們提倡采用放松約束的方法進行解析[19-20]。其他作者卻認為雖然不可能用“違規規則”的方法概括所有可能出現的錯誤,但“違規規則”的方法能針對常見錯誤提供更為精確的反饋,而且能夠覆蓋常見的錯誤類型[11,21][注]顯然,ASD-STE語法規則檢測在原理上與英文教學語法檢測批改極為相似。本文討論的基本方法也適合英文教學語法檢測批改的應用。。事實上,兩種方法可以并用。需要分析不同的語言現象和錯誤的類型,根據各類語言現象的特征,可分別使用“違規規則”或者“放松約束”的方法。
常規語法規則再加上“違規規則”自然會增加語法體系的復雜性,增加分析的歧義和多種選擇。而且,一個輸入的語句可能同時滿足“違規規則”的分析和“常規規則”的分析。換句話說,“違規規則”和“常規規則”可能競爭解析選擇。出現這種情況時,就需要大量實際的語料統計數據來幫助解析排序。所以,雖然本文實現ASD-STE軟件檢測系統的基本方法是基于語法解析,大數據和統計方法始終極為重要。
知識和推理是人類智慧的核心。從現在的弱人工智能發展到通用人工智能迫切需要某種形式的知識庫的支持。這種知識庫采用的語言必須便于領域專家們構建、維護和擴展知識庫,又得適合計算機的自動分析處理。受控自然語言是連接人和機器理想的方式。
綜上所述,受控自然語言有極為廣闊的應用前景,可以總結出三個要點: ①作為技術語言標準來規范和改善技術信息的傳達和交流;②作為一種直觀的知識表達方式,不僅便利專業人員對相關內容的正確閱讀理解,而且便于機器自動分析和處理;③作為便利的人機交互的方式和手段,既便于人對設備的操控,又有助于人機互動,最大程度地利用人的智能和機器智能。隨著科學技術的不斷進步,隨著中國進一步走向世界,受控自然語言特別是受控漢語和受控英語的作用和需求會更加明顯,這方面的研究和開發也將變得更為重要。