尕藏才讓
關(guān)鍵詞:NLP文本檢查藏文文法
計(jì)算機(jī)時(shí)代的到來開啟了自然語言的自動(dòng)處理先河。早在二戰(zhàn)時(shí)期,就有美國數(shù)學(xué)家沃倫·韋弗指出“德語只是用密碼寫成的英語而已”。他在戰(zhàn)后構(gòu)想的機(jī)器翻譯概念直接啟發(fā)和推動(dòng)了冷戰(zhàn)時(shí)期以英俄語翻譯為主的機(jī)器翻譯。自然語言處理從最初的基于規(guī)則的方法,到今天的基于深度學(xué)習(xí)的方法,技術(shù)得到了革命性變革。如今,NLP技術(shù)水平已不同往日,除了機(jī)器翻譯,其還被廣泛應(yīng)用在輿情檢測、自動(dòng)摘要、文本分類、語音識(shí)別、智能問答和人工智能等眾多領(lǐng)域。
由于互聯(lián)網(wǎng)首先在英語國家發(fā)展成型,所有在現(xiàn)階段的英語處理水平基本上代表著國際最頂尖的NLP技術(shù)水平1)因?yàn)楦鱾€(gè)自然語言的文法規(guī)則有差別,導(dǎo)致各個(gè)語種之間的處理技術(shù)有一定的差異性,在進(jìn)行跨語種的NLP技術(shù)的研究時(shí),只能進(jìn)行淺層次的借鑒,而不能完全搬抄。甚至同語言不同方言的NLP技術(shù)都需要設(shè)計(jì)和采用不同的算法程序。本文以研究者較為熟練的藏漢兩種文字為例,從文本檢查的角度簡要概述不同語言間,由不同的語言特性所帶來的NLP技術(shù)差異。
1漢藏NLP技術(shù)發(fā)展回顧
1.1漢文的NLP技術(shù)發(fā)展
漢文是不同于英文的表意字,在語法上與大部分拼音文字有巨大差別。恰如語言學(xué)家王力先生所言:“就句子的結(jié)構(gòu)而言,西洋語言是法治的,中國語言是人治的”。漢文的原始信息化處理開拓極其艱難,早期計(jì)算機(jī)和互聯(lián)網(wǎng)在國內(nèi)的大范圍推廣應(yīng)用直接受制于“計(jì)算機(jī)漢化”工作進(jìn)度,這也是漢文字信息化處理工作要攻克的第一個(gè)難關(guān);1974年,經(jīng)有關(guān)部門批準(zhǔn)將748工程納入國家科技發(fā)展計(jì)劃,標(biāo)志著漢文字NLP技術(shù)攻關(guān)在國家層面得到了重視,其成果引發(fā)了印刷業(yè)的改革。其中,748工程又細(xì)分為精密中文編輯排版系統(tǒng)、中文情報(bào)檢索系統(tǒng)、中文通信系統(tǒng),三者直接為“計(jì)算機(jī)漢化”和中文互聯(lián)網(wǎng)生態(tài)的形成打下了堅(jiān)實(shí)的基礎(chǔ)。發(fā)展至今,“計(jì)算機(jī)漢化”問題已基本解決,漢文NLP則更注重于“漢文計(jì)算機(jī)化”,即通過計(jì)算機(jī)來處理漢文,輔助甚至代替人類進(jìn)行翻譯、語言識(shí)別控制、情緒識(shí)別等。
相較其他自然語言,漢文NLP水平已走在世界前列,出現(xiàn)了一批優(yōu)秀的科研機(jī)構(gòu)和科技企業(yè),如清華大學(xué)、哈爾濱工業(yè)大學(xué)、科大訊飛、百度等。通過與知識(shí)圖譜的結(jié)合,可廣泛運(yùn)用于教育、醫(yī)療、養(yǎng)老、旅游等領(lǐng)域。此外,因漢文字所固有的語法復(fù)雜、結(jié)構(gòu)不穩(wěn)定等特性,使?jié)h文字的NLP技術(shù)發(fā)展遇到了瓶頸,影響了整個(gè)技術(shù)的發(fā)展速度。但這幾年隨著深度學(xué)習(xí)和大規(guī)模語料庫的加持,又使該技術(shù)得到了新的發(fā)展契機(jī)(見圖1)。
1.2藏文的NLP發(fā)展回顧
藏文是參考古印度梵文編制的拼音文字[1],其基本由30個(gè)輔音1)和4個(gè)元音2)組成,有相對(duì)穩(wěn)定和嚴(yán)格的文法體系,但又有別于西方流行的拉丁、日耳曼和斯拉夫等語系的左右橫向拼音排列,還具有從上到下的縱向疊加,對(duì)NLP技術(shù)的算法提出了更高的要求。20世紀(jì)80年代,改革開放,百業(yè)初興。在國內(nèi)外的NLP技術(shù)大發(fā)展的背景下,藏文NLP技術(shù)研究工作也開始起步[2]———最早見于報(bào)道的是張連生于1981年用計(jì)算機(jī)進(jìn)行的藏文詞匯排序工作,并于1983年采用李方桂先生提出的藏文羅馬轉(zhuǎn)寫方案,實(shí)現(xiàn)了藏文最初的處理系統(tǒng),包括俞樂等人于1984年在VICTOR9000上設(shè)計(jì)的藏文處理系統(tǒng)和西北民族大學(xué)在WANGVS/80上實(shí)現(xiàn)的藏文字處理系統(tǒng)等。但上述藏文字處理系統(tǒng)缺乏宏觀層面的協(xié)調(diào)和國家統(tǒng)一標(biāo)準(zhǔn)的制訂,呈現(xiàn)了“各自為政,相互不通”的情況,嚴(yán)重制約了整個(gè)藏文信息處理研究的進(jìn)一步發(fā)展。不過,1997年7月這種情況迎來了轉(zhuǎn)機(jī)———我國多部門、多地方、多高校聯(lián)合制訂的《信息技術(shù)交換用藏文編碼字符集基本集》通過第33屆SC2/WG2會(huì)議,藏文成為我國繼漢文后第二個(gè)進(jìn)入國際ISO/IEC10646標(biāo)準(zhǔn)編碼體系的文字。此項(xiàng)標(biāo)準(zhǔn)的制定也正式打開了古老的藏文通向新時(shí)代的大門。這前后出現(xiàn)的蘭海藏文系統(tǒng)、TCE藏漢英文信息處理系統(tǒng)、北大方正藏文處理系統(tǒng)都呈現(xiàn)了高標(biāo)準(zhǔn)化的現(xiàn)象。此后,藏文NLP計(jì)算的研究對(duì)象越發(fā)廣泛,典型的有字詞頻統(tǒng)計(jì)、語料庫建設(shè)、自動(dòng)分詞、機(jī)器翻譯、字詞校對(duì)、文本識(shí)別等。
隨著相關(guān)領(lǐng)域的國家和省級(jí)重點(diǎn)實(shí)驗(yàn)室在西藏大學(xué)、青海師范大學(xué)等藏區(qū)高校落地,加快促進(jìn)了以計(jì)算語言學(xué)為核心的藏文信息處理技術(shù)的研究和各層次人才的培養(yǎng),使藏文信息化處理掀起了一個(gè)前所未有的發(fā)展熱潮。2016年8月,云藏搜索引擎在青海省海南藏族自治州正式上線(見圖2),代表著藏文互聯(lián)網(wǎng)和藏文處理技術(shù)形成了規(guī)模龐大的產(chǎn)業(yè)群。為該領(lǐng)域的產(chǎn)研結(jié)合、產(chǎn)教結(jié)合開辟了先河。
2漢文與藏文NPL技術(shù)在文本檢查方法中的差異概述
從語言學(xué)的骨架語法角度來看,漢文屬于獨(dú)特的“孤立語”,其表義轉(zhuǎn)變主要依賴虛詞和詞序的變化。如“水溫”和“溫水”具有根本詞義上的區(qū)別,但因字之間相互孤立,無所謂字詞的錯(cuò)誤,而是根據(jù)用詞環(huán)境來界定。而藏文恰恰不同,其語法和表達(dá)方式帶有很強(qiáng)的“黏著語”的特點(diǎn)。即根據(jù)詞根的后綴或內(nèi)部(即藏文的一個(gè)字節(jié),以隔音符來界定)的變化實(shí)現(xiàn)語義的轉(zhuǎn)變,如“”和“”僅一個(gè)元音字母()之差帶來了語義的轉(zhuǎn)變[3]。本文將以漢文和藏文各自的語法差異為出發(fā)點(diǎn),從自然語言文本處理的四個(gè)層面;字、詞、句(上下文無關(guān))、篇(上下文有關(guān)),試述兩種文字NLP技術(shù)的具體差異。
2.1字層面的拼寫檢查方法差異
字的處理是進(jìn)行自然語言文本處理的第一步和基礎(chǔ)。因漢文字本身的語法特點(diǎn),在這層面只需通過統(tǒng)一編碼的漢字庫,就可以杜絕錯(cuò)別字(即不存在的別字)的出現(xiàn)?,F(xiàn)行的漢字顯示大都由基于Unicode編碼的漢文字機(jī)內(nèi)碼、交換碼、輸入碼、點(diǎn)陣碼、點(diǎn)陣圖來實(shí)現(xiàn),形成了龐大的具有6萬余字的字庫,編碼標(biāo)準(zhǔn)號(hào)為;GB2312?80。在此不做贅述。
不過,藏文字層面的檢查和糾錯(cuò)機(jī)制則更為復(fù)雜[4],藏文由常用的30個(gè)輔音字母和10個(gè)非常用的輔音字母1)以及“”“”“”“”四種元音字符組成。而30個(gè)常用輔音字符中有分別分出10個(gè)后加字、5個(gè)前加字、2個(gè)再(后)加字、3個(gè)上加字、4個(gè)下加字。一個(gè)音節(jié)除了由40個(gè)常用和非常用輔音字母擔(dān)任基字外,還可以在基字上添加上、下、前、后、再加字以及元音字母。如果在拼寫環(huán)節(jié)不對(duì)語法規(guī)則進(jìn)行限制,以現(xiàn)有的himalaya藏文輸入法為例,在限制字長為7的前提下,能輸入48000組不同音節(jié)字符串,但實(shí)際符合藏文音節(jié)2)拼寫規(guī)則的只有8000多組,盲打錯(cuò)誤率高達(dá)83%。所以,要采用一定的算法規(guī)則,去規(guī)避和糾正不符合語法的錯(cuò)誤音節(jié)的輸出。
下文將簡單介紹三種較為可行的方法:一是利用形式語言與自動(dòng)機(jī)理論,構(gòu)造識(shí)別藏文字的有限狀態(tài)自動(dòng)機(jī),將藏文字作為有限自動(dòng)機(jī)進(jìn)行輸入,能夠被自動(dòng)機(jī)識(shí)別的藏文字的拼寫則是正確的,否則可能是錯(cuò)誤的。此方法由西藏大學(xué)尼瑪扎西教授提出;二是對(duì)已輸入或正在輸入的藏文字按部件進(jìn)行分解和分析,并在語法上進(jìn)行規(guī)范,從而實(shí)現(xiàn)錯(cuò)別字的過濾。此辦法由青海民族大學(xué)安見才讓教授提出;三是使用向量模型取值設(shè)限去實(shí)現(xiàn)音節(jié)內(nèi)的拼寫檢查,參照藏文語法,把藏文中七個(gè)部件抽象成向量元素,并以元素?cái)?shù)量設(shè)值,再用語法細(xì)則制定規(guī)則,從而制作向量模型,并將其與向量模型對(duì)照映射就可檢查該音節(jié)藏文字符語法的真值結(jié)果。此外,還有基于知識(shí)庫和產(chǎn)生式推理等處理方法,在此不做贅述。
如今,藏文字層面的拼寫檢查理論研究趨于成熟,更多的研究應(yīng)該側(cè)重于實(shí)用化。以上部分的藏文語法以《字性組織法》理論為重點(diǎn)3)。
2.2詞層面的檢查方法差異
不管是孤立語還是屈折語和黏著語,到詞層面都需要參照相應(yīng)的語法進(jìn)行書寫檢查和糾錯(cuò)處理,藏漢文字亦如此。此外,藏漢文字有個(gè)不同于西方英、法、西等語言的顯著特點(diǎn)———詞與詞之間沒有分隔符。所以,分詞系統(tǒng)的設(shè)計(jì)在藏漢兩種語言的NPL技術(shù)中都同樣重要,是詞法分析的基礎(chǔ)性工作。
在深度學(xué)習(xí)之前,詞層面的處理不外乎基于語言學(xué)知識(shí)的規(guī)則約束和基于大規(guī)模語料庫的統(tǒng)計(jì)匹配。雖然藏漢兩種文字在這個(gè)層面的處理方式差異已經(jīng)變小,但因各自語法的特點(diǎn),也還有一定的差異。
藏文詞層面的處理偏向于語法規(guī)則的約束,此方法相較建設(shè)成本高昂的語料庫而言,有成本低、算法穩(wěn)定等優(yōu)點(diǎn)。但其對(duì)前期的語法規(guī)則知識(shí)歸納和算法設(shè)計(jì)要求較高。此外,隨著處理對(duì)象的變化,如譯詞、新專用詞以及未登錄詞等的出現(xiàn),必然會(huì)導(dǎo)致誤判情況發(fā)生。同時(shí),在區(qū)別近義詞和歧義詞的差別上不靈敏、細(xì)粒度不夠,往往需要語料庫的加持。現(xiàn)流行的一部分Android藏文輸入法帶有一定的聯(lián)想匹配功能,亦是在遵循上述原則上拓展實(shí)現(xiàn)的。
漢文詞層面的處理則偏重于語料庫,通過細(xì)化和擴(kuò)展語料,特別是分詞和標(biāo)記等基礎(chǔ)工作,準(zhǔn)備大容量的熟詞語料庫,加上詞表庫和每個(gè)詞運(yùn)用環(huán)境正確,再借助統(tǒng)計(jì)和匹配以判斷檢查對(duì)象詞的用法正確。到現(xiàn)在,隨著深度學(xué)習(xí)的使用以及預(yù)訓(xùn)練模型等的成熟運(yùn)用,傳統(tǒng)的語料運(yùn)用和建設(shè)變得更為簡單。
2.3句子層面的檢查方法差異
句子層面自然語言處理比以上兩個(gè)層次更復(fù)雜、更抽象,而藏漢兩種文字的處理方法也進(jìn)一步趨同[5],但還是有一定的差別———比如,藏文在句法層面的處理就要考慮語法規(guī)則《三十頌》,而漢文字更注重考慮詞序和虛詞等語句構(gòu)件的結(jié)構(gòu)和排序。較為常見的方法體系有:短語結(jié)構(gòu)句法體系和依存結(jié)構(gòu)句法體系[6]。簡單舉例如“我在拉薩八廓街?!保匆蕾囮P(guān)系標(biāo)記并寫成樹狀圖(如圖3所示)。
依存結(jié)構(gòu)句法體系所運(yùn)用的表示形式簡單且可讀性強(qiáng),方便設(shè)計(jì)算法。但不同語種都有各自的語法特色,所以剖析依賴關(guān)系時(shí)需要注意———比如,漢文字中的把字句、被字句;藏文字中的各類格詞和其他非自主副詞(在藏文字節(jié)之間,其表義和書寫要遵循三十頌語法體系。其中,以格屬詞、格動(dòng)詞為主的非自主副在與前詞或整個(gè)語境結(jié)合時(shí),要嚴(yán)格遵循跨音節(jié)的拼寫規(guī)則)的作用和使用規(guī)則,以免細(xì)微的差異帶來整體語句的變化,導(dǎo)致處理無效或錯(cuò)誤??梢哉f,藏語句義分析技術(shù)現(xiàn)階段還未成熟[7]。
2.4語義層面的檢查
語義層面的處理除了要檢查語法層面的真?zhèn)螁栴},還要結(jié)合上下文,即上下文有關(guān)文法;在語法正確的前提下,判斷整個(gè)篇章的語義統(tǒng)一性和邏輯連貫性。該層次的實(shí)現(xiàn)對(duì)算法要求極高,無法通過簡單的規(guī)則推理和簡單的語料庫匹配來完成,更多地需要借助人工智能的訓(xùn)練和學(xué)習(xí)來實(shí)現(xiàn)。如清華大學(xué)楊植麟團(tuán)隊(duì)就在近期提出一種不需要預(yù)訓(xùn)練模型的學(xué)習(xí)框架,并以此延伸出任務(wù)驅(qū)動(dòng)的語言模型,使訓(xùn)練模型能夠準(zhǔn)確地認(rèn)識(shí)語句中的細(xì)微差別,能明顯提高計(jì)算機(jī)的篇章級(jí)語言文字處理水平。以研究者角度來看,經(jīng)過字、詞、句層面,到這一環(huán)節(jié)漢藏文字處理方法基本一致[8~10],可相互借鑒使用。
3結(jié)語
除了程序員,計(jì)算機(jī)和人類之間大部分的交流無外乎通過各種各樣的自然語言來實(shí)現(xiàn)。而計(jì)算機(jī)作為當(dāng)今不可或缺的生活、辦公、學(xué)習(xí)工具,提升其對(duì)自然語言的識(shí)別和處理能力,不但可以提升某種工具的價(jià)值,更能使人類實(shí)現(xiàn)自我提升、自我解放。以研究者身邊的計(jì)算機(jī)和網(wǎng)絡(luò)環(huán)境為例,除了常用的漢文字外,還有一定的藏文數(shù)字信息存在,所以需要對(duì)這兩種文字NLP技術(shù)的發(fā)展予以關(guān)注。此外,在很多領(lǐng)域都有這樣的現(xiàn)象,如從事西方某國文字或歷史的專業(yè)研究,但不懂該國的語言文字,從而不能掌握一手資料,只能人云亦云,終究只能困守在一定的學(xué)術(shù)高度而不能出眾。在自然語言處理領(lǐng)域更是如此,進(jìn)行跨語種NLP技術(shù)鉆研的時(shí)候,第一步就應(yīng)該學(xué)習(xí)、掌握目標(biāo)語言的語法規(guī)則和運(yùn)用環(huán)境,而非脫離現(xiàn)實(shí),翻閱二手資料,先入為主。這樣,即使自身擁有較高的計(jì)算機(jī)水平,往往也因語法知識(shí)的局限而亦趨亦步,而不能向前。
跨語種的信息化處理的第一步應(yīng)該從目標(biāo)語言的語法知識(shí)開始??傊?,不管是哪種文字,除了語法上的差別導(dǎo)致處理過程有一定的差異外,目標(biāo)都是一致的,就是能讓計(jì)算機(jī)咬文嚼字、又出口成章、代行百事,讓我們?yōu)檫@個(gè)目標(biāo)持續(xù)奮斗[11]。