人工智能作為新一輪科技革命和產(chǎn)業(yè)變革的重要驅(qū)動力量,正在深刻改變世界。而自然語言處理(Natural Language Processing,簡稱NLP)既是人工智能的核心技術(shù),又是計算機(jī)科學(xué)和語言科學(xué)的分支學(xué)科;它推動著語言智能的持續(xù)發(fā)展和突破,并越來越多地應(yīng)用于各個行業(yè)。正如國際知名學(xué)者周海中先生曾經(jīng)所言:“自然語言處理是極有吸引力的研究領(lǐng)域,它具有重大的理論意義和實(shí)用價值。”
自然語言處理的主要內(nèi)容
自然語言處理的主要內(nèi)容包括但不限于如下分支領(lǐng)域:文本分類、文本生成、文本分析、信息抽取、自動摘要、智能問答、話題推薦、機(jī)器翻譯、主題詞識別、知識庫構(gòu)建、深度文本表示、深度學(xué)習(xí)算法、命名實(shí)體識別、語音識別與合成等。自然語言處理主要研究能實(shí)現(xiàn)人與計算機(jī)之間用自然語言進(jìn)行有效通信的各種理論和方法。而用自然語言與計算機(jī)進(jìn)行通信,有著十分重要的實(shí)際應(yīng)用意義,也有著革命性的理論意義。
實(shí)現(xiàn)人機(jī)間自然語言通信意味著要使計算機(jī)既能理解自然語言文本的意義,也能以自然語言文本來表達(dá)給定的意圖、思想等;前者稱為自然語言理解,后者稱為自然語言生成。因此,自然語言處理大體包括了自然語言理解和自然語言生成兩個部分。因?yàn)樘幚碜匀徽Z言的關(guān)鍵是要讓計算機(jī)“理解”自然語言,所以通常把自然語言理解視為自然語言處理, 也稱為計算語言學(xué)。它的終極目標(biāo)是用自然語言與計算機(jī)進(jìn)行通信,使人們可以用自己最習(xí)慣的語言來使用計算機(jī),而無需再花大量的時間和精力去學(xué)習(xí)不很自然和習(xí)慣的各種計算機(jī)語言。
自然語言處理是一門融語言學(xué)、計算機(jī)科學(xué)、數(shù)學(xué)于一體的科學(xué)。因此,這一領(lǐng)域的研究將涉及自然語言,即人們?nèi)粘J褂玫恼Z言,所以它與語言學(xué)的研究有著密切的聯(lián)系,但又有重要的區(qū)別。自然語言處理并不是一般地研究自然語言,而在于研制能有效地實(shí)現(xiàn)自然語言通信的計算機(jī)系統(tǒng),特別是其中的軟件系統(tǒng)。因而它是計算機(jī)科學(xué)的一部分??梢哉f,自然語言處理是計算機(jī)科學(xué)、語言科學(xué),尤其是人工智能關(guān)注計算機(jī)與人類語言之間的相互作用的領(lǐng)域。
自然語言處理的基本任務(wù)包括正則表達(dá)式、分詞、詞法分析、語音識別、文本分類、信息檢索、問答系統(tǒng)——如對一些問題進(jìn)行回答或與用戶進(jìn)行交互——機(jī)器翻譯等;常用的模型則有馬科夫模型、樸素貝葉斯、循環(huán)神經(jīng)網(wǎng)絡(luò)等。自然語言處理要使用語言知識,如UNIX的wc程序可以用來計算文本文件中的字節(jié)數(shù)、詞數(shù)或行數(shù);當(dāng)用它來計算字節(jié)數(shù)和行數(shù)時,wc只用于進(jìn)行一般的數(shù)據(jù)處理,但當(dāng)用它來計算一個文件中詞的數(shù)目時,就需要關(guān)于“什么是一個詞”的語言知識,這樣,這個wc也就成為了一個自然語言處理系統(tǒng)。
自然語言處理是人工智能中最為困難的問題之一。美國微軟公司創(chuàng)始人比爾·蓋茨先生曾經(jīng)表示,“語言理解是人工智能領(lǐng)域皇冠上的明珠”。前微軟公司全球執(zhí)行副總裁沈向洋先生也在公開演講時說:“懂語言者得天下……下一個十年,人工智能的突破在自然語言的理解……人工智能對人類影響最為深刻的就是自然語言方面”。由于理解自然語言需要關(guān)于外在世界的廣泛知識以及運(yùn)用操作這些知識的能力,所以自然語言處理也被視為解決人工智能完備(AI-complete)的核心問題之一??梢哉f,自然語言處理目前是人工智能領(lǐng)域中的關(guān)鍵技術(shù),對它的研究也是充滿魅力和挑戰(zhàn)的。
自然語言處理的發(fā)展簡史
最早的自然語言處理研究工作是機(jī)器翻譯;美國知名科學(xué)家沃倫•韋弗先生在1949年首先提出了機(jī)器翻譯設(shè)計方案。在60年代,許多科學(xué)家對機(jī)器翻譯曾有大規(guī)模的研究工作,投入了大量的人力物力財力。但是,受客觀歷史因素的限制,當(dāng)時人們低估了自然語言的復(fù)雜性,語言處理的理論和技術(shù)均不成熱,所以進(jìn)展并不大。其主要的做法是存儲兩種語言的單詞、短語對應(yīng)譯法的大辭典,翻譯時一一對應(yīng),技術(shù)上只是調(diào)整語言的順序。但日常生活中語言的翻譯遠(yuǎn)不是如此簡單,很多時候還要參考某句話前后的意思。
大約90年代開始,自然語言處理領(lǐng)域發(fā)生了巨大的變化。這種變化的兩個明顯的特征是:(1)對系統(tǒng)的輸入,要求研制的自然語言處理系統(tǒng)能處理大規(guī)模的真實(shí)文本,而不是如以前的研究性系統(tǒng)那樣,只能處理很少的詞條和典型句子。只有這樣,研制的系統(tǒng)才有真正的實(shí)用價值。(2)對系統(tǒng)的輸出,鑒于真實(shí)地理解自然語言是十分困難的,對系統(tǒng)并不要求能對自然語言文本進(jìn)行深層的理解,但要能從中抽取有用的信息。同時,由于強(qiáng)調(diào)了“大規(guī)模”和“真實(shí)文本”,因此兩方面的基礎(chǔ)性工作也得到了重視和加強(qiáng):(1)大規(guī)模真實(shí)語料庫的研制。大規(guī)模的經(jīng)過不同深度加工的真實(shí)文本的語料庫,是研究自然語言統(tǒng)計性質(zhì)的基礎(chǔ);沒有它們,統(tǒng)計方法只能是無源之水。(2)大規(guī)模、信息豐富的詞典的編制工作。因此規(guī)模為幾萬、十幾萬、甚至幾十萬詞,含有豐富的信息(如包含詞的搭配信息)的計算機(jī)可用詞典對自然語言處理的重要性是很明顯的。
邁進(jìn)21 世紀(jì),互聯(lián)網(wǎng)的出現(xiàn)讓信息量呈現(xiàn)爆炸式增長,得益于大數(shù)據(jù)、云計算、知識圖譜、5G通信等各種新技術(shù),自然語言處理的發(fā)展迎來加速,在日常生活中扮演著越來越重要的角色,走上更加豐富的應(yīng)用舞臺。如今,搜索引擎已經(jīng)成為人們獲取信息的重要工具,機(jī)器翻譯越來越普及,聊天機(jī)器人層出不窮,智能客服開始服務(wù)于人類,各類智能機(jī)器人不斷涌現(xiàn);近年來,熱度漸升的亞馬遜 Alexa,既會作詩又能唱歌的微軟小冰,又將自然語言處理推向另一個全新的高度,讓其被越來越多的大眾熟知。與之相對應(yīng),不管學(xué)術(shù)界還是企業(yè)界,對自然語言處理的談?wù)撛絹碓蕉?,更有甚者,自然語言處理被提升到戰(zhàn)略層面。
系統(tǒng)的輸入與輸出這兩個特征在自然語言處理的諸多領(lǐng)域都有所體現(xiàn),其發(fā)展直接促進(jìn)了計算機(jī)自動檢索技術(shù)的出現(xiàn)和興起。實(shí)際上,隨著計算機(jī)技術(shù)的不斷發(fā)展, 以海量計算為基礎(chǔ)的機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘等技術(shù)的表現(xiàn)也愈發(fā)優(yōu)異。自然語言處理之所以能夠度過“寒冬”, 再次發(fā)展, 也是因?yàn)橛嬎銠C(jī)科學(xué)與統(tǒng)計科學(xué)的不斷結(jié)合,才讓人類甚至機(jī)器能夠不斷從大量數(shù)據(jù)中發(fā)現(xiàn)“特征”并加以學(xué)習(xí)。不過要實(shí)現(xiàn)對自然語言真正意義上的理解,僅僅從原始文本中進(jìn)行學(xué)習(xí)是不夠的,我們需要新的方法和模型。
目前存在的問題主要有兩個方面:一方面,迄今為止的語法都限于分析一個孤立的句子,上下文關(guān)系和談話環(huán)境對本句的約束和影響還缺乏系統(tǒng)的研究,因此分析歧義、詞語省略、代詞所指、同一句話在不同場合或由不同的人說出來所具有的不同含義等問題,尚無明確規(guī)律可循,需要加強(qiáng)語義學(xué)和語用學(xué)的研究才能逐步解決。另一方面,人理解一個句子不是單憑語法,還運(yùn)用了大量的有關(guān)知識,包括生活知識和專門知識,這些知識無法全部貯存在計算機(jī)里。因此一個書面理解系統(tǒng)只能建立在有限的詞匯、句型和特定的主題范圍內(nèi);計算機(jī)的貯存量和運(yùn)轉(zhuǎn)速度大大提高之后,才有可能適當(dāng)擴(kuò)大范圍。
由于語言工程、認(rèn)知科學(xué)等主要局限于實(shí)驗(yàn)室,目前來看數(shù)據(jù)處理可能是自然語言處理應(yīng)用場景最多的一個發(fā)展方向。實(shí)際上,自從進(jìn)入大數(shù)據(jù)時代,各大平臺就沒有停止過對用戶數(shù)據(jù)的深度挖掘。要想提取出有用的信息,僅提取關(guān)鍵詞、統(tǒng)計詞頻等是遠(yuǎn)遠(yuǎn)不夠的,必須對用戶數(shù)據(jù) (尤其是發(fā)言、評論等)進(jìn)行語義上的理解。另外,利用離線大數(shù)據(jù)統(tǒng)計分析的方法進(jìn)行自然語言處理任務(wù)的研究是目前非常有潛力的一種研究范式,尤其是谷歌、推特、臉書、百度等大公司在這類應(yīng)用上的成功經(jīng)驗(yàn),引領(lǐng)了目前大數(shù)據(jù)研究的浪潮。
自然語言處理的應(yīng)用現(xiàn)狀
自然語言處理是為各類企業(yè)及開發(fā)者提供的用于文本分析及挖掘的核心工具,已經(jīng)廣泛應(yīng)用在電商、金融、物流、文化娛樂等行業(yè)客戶的多項(xiàng)業(yè)務(wù)中。它可幫助用戶搭建內(nèi)容搜索、內(nèi)容推薦、輿情識別及分析、文本結(jié)構(gòu)化、對話機(jī)器人等智能產(chǎn)品,也能夠通過合作,定制個性化的解決方案。由于理解自然語言,需要關(guān)于外在世界的廣泛知識以及運(yùn)用操作這些知識的能力,所以自然語言處理也被視為解決人工智能的核心問題之一,其未來一般也因此密切結(jié)合人工智能發(fā)展,尤其是設(shè)計一個模仿人類大腦的神經(jīng)網(wǎng)絡(luò)。
訓(xùn)練自然語言處理文本解析人工智能系統(tǒng)需要采集大量多源頭數(shù)據(jù)集,對科學(xué)家來說是一項(xiàng)持續(xù)的挑戰(zhàn):需要使用最新的深度學(xué)習(xí)模型,模仿人類大腦中神經(jīng)元的行為,在數(shù)百萬甚至數(shù)十億的注釋示例中進(jìn)行訓(xùn)練來持續(xù)改進(jìn)。當(dāng)下一種流行的自然語言處理解決方案是預(yù)訓(xùn)練,它改進(jìn)了對未標(biāo)記文本進(jìn)行訓(xùn)練的通用語言模型,以執(zhí)行特定任務(wù);它的思想就是,該模型的參數(shù)不再是隨機(jī)初始化,而是先有一個任務(wù)進(jìn)行訓(xùn)練得到一套模型參數(shù),然后用這套參數(shù)對模型進(jìn)行初始化,再進(jìn)行訓(xùn)練,以獲得更好的預(yù)測性見解。
目前我們已經(jīng)進(jìn)入了以互聯(lián)網(wǎng)為主要標(biāo)志的海量信息時代,這些海量信息大部分是以自然語言表示的。一方面,海量信息也為計算機(jī)學(xué)習(xí)人類語言提供了更多的“素材”,另一方面,這也為自然語言處理提供了更加寬廣的應(yīng)用舞臺。例如,作為自然語言處理的重要應(yīng)用,搜索引擎逐漸成為人們獲取信息的重要工具,出現(xiàn)了以谷歌、雅虎、百度等為代表的搜索引擎巨頭;機(jī)器翻譯也從實(shí)驗(yàn)室走入尋常百姓家;基于自然語言處理的輸入法(如谷歌、微軟、百度、搜狗等輸入法)成為計算機(jī)用戶的必備工具;帶有語音識別的計算機(jī)和手機(jī)也正大行其道,協(xié)助用戶更有效地工作和學(xué)習(xí)。
數(shù)據(jù)標(biāo)注是人工智能產(chǎn)業(yè)的基礎(chǔ),是機(jī)器感知現(xiàn)實(shí)世界的起點(diǎn);從某種程度上來說,沒有經(jīng)過標(biāo)注的數(shù)據(jù)就是無用的數(shù)據(jù);數(shù)據(jù)標(biāo)注得越精確,對算法模型訓(xùn)練的效果就越好。自然語言處理領(lǐng)域現(xiàn)在已經(jīng)有了大量的數(shù)據(jù)標(biāo)注知識,而深度學(xué)習(xí)可以通過有監(jiān)督學(xué)習(xí)得到相關(guān)的語義知識,這種知識和人類總結(jié)的知識應(yīng)該存在某種對應(yīng)關(guān)系,尤其是在一些淺層語義方面。因?yàn)閿?shù)據(jù)標(biāo)注,本質(zhì)上已經(jīng)給深度學(xué)習(xí)提供了學(xué)習(xí)的目標(biāo);只是深度學(xué)習(xí)可以不眠不休地學(xué)習(xí),這種逐步靠攏學(xué)習(xí)目標(biāo)的過程,可能遠(yuǎn)比人類總結(jié)過程來得更快。這一點(diǎn),從美國Google公司旗下DeepMind研究團(tuán)隊(duì)開發(fā)的圍棋軟件AIphaGo短時間內(nèi)連勝兩位人類圍棋高手的事實(shí),似乎能夠得到驗(yàn)證。
信息抽取旨在從非結(jié)構(gòu)化的文本數(shù)據(jù)中抽取結(jié)構(gòu)化的目標(biāo)信息。這是一個熱點(diǎn)的任務(wù),但是當(dāng)前模型大多只能進(jìn)行單一任務(wù)的信息抽取,效果也不是特別好。因此將來的一段時間,信息抽取還會是一個熱門話題。該任務(wù)也是其他行業(yè)對人工智能最熱切的期待之一。行業(yè)外的人經(jīng)常問自然語言處理能不能做這個做那個,大多數(shù)是在問能不能從非結(jié)構(gòu)化的海量文本中提取特定的某些信息。這也是所謂大數(shù)據(jù)公司或者大數(shù)據(jù)服務(wù)提供商的核心技術(shù)。值得一提的是,信息抽取和數(shù)據(jù)標(biāo)注有很多交叉和重疊的地方,它們與深度學(xué)習(xí)的關(guān)系十分密切。
深度學(xué)習(xí)在自然語言處理中的應(yīng)用非常廣泛,可以說橫掃自然語言處理的各個應(yīng)用,從底層的分詞、語言模型、句法分析等到高層的語義理解、對話管理、知識問答等方面幾乎都有深度學(xué)習(xí)的模型,并且取得了不錯的效果。有關(guān)研究已從傳統(tǒng)的機(jī)器學(xué)習(xí)算法轉(zhuǎn)變成更有表現(xiàn)力的深度學(xué)習(xí)模型,如卷積神經(jīng)網(wǎng)絡(luò)和回歸神經(jīng)網(wǎng)絡(luò)。不過,目前的深度學(xué)習(xí)技術(shù)還不具備理解和使用自然語言所必需的概念抽象和邏輯推理能力,還有待今后進(jìn)一步的研究。
自然語言處理的近期成果
互聯(lián)網(wǎng)搜索引擎已經(jīng)有一段時間讓人們使用會話語言和術(shù)語來在線搜索事物?,F(xiàn)在,Google公司的云端硬盤用戶已經(jīng)可以使用這一功能。用戶可以搜索存儲在Google云端硬盤中的文件和內(nèi)容,就像使用Google搜索提供的對云端硬盤內(nèi)置自然語言處理的新支持一樣。該功能使用戶可以使用通常用詞組表達(dá)的查詢以及在實(shí)際對話中將要使用的查詢來更輕松地找到所需的內(nèi)容。Google公司在在線和移動搜索、移動應(yīng)用程序以及Google Translate等服務(wù)中廣泛使用自然語言處理;該公司在這一領(lǐng)域的研究是為提高機(jī)器閱讀和理解人類語言能力所做的更廣泛努力的一部分。隨著Google公司調(diào)整其算法,自然語言處理應(yīng)該會隨著時間的推移變得更好。
在新冠病毒肺炎(Covid-19)疫情期間,美國哈佛醫(yī)學(xué)院的研究人員借助自然語言處理技術(shù)開發(fā)出了一種工具,可以評估新冠肺炎患者的病例、社交媒體和健康衛(wèi)生數(shù)據(jù)。他們率先努力通過使用機(jī)器學(xué)習(xí)技術(shù)查看來自各種來源的數(shù)據(jù)和信息(包括患者記錄、社交媒體和公共衛(wèi)生數(shù)據(jù))來尋找新冠病毒肺炎的解決方案。借助自然語言處理工具,研究人員可以搜索有關(guān)新冠肺炎疫情的在線信息,并了解爆發(fā)的當(dāng)前位置。另外,他們還借助自然語言處理技術(shù),尤其是深度學(xué)習(xí)模型對新冠病毒、藥物和疫苗等密集展開研究,同時包括臨床診斷與治療以及流行病學(xué)研究等。
英國劍橋量子計算公司(CQC)最近宣布,他們利用自然語言的“固有量子”結(jié)構(gòu),開辟了一個全新的可能應(yīng)用領(lǐng)域。其通過將語法句子翻譯成量子線路,然后在量子計算機(jī)上實(shí)現(xiàn)生成的程序,并實(shí)際執(zhí)行問答。這是第一次在量子計算機(jī)上執(zhí)行自然語言處理。通過使用CQC的一流的、平臺無關(guān)的可重定目標(biāo)編譯器t|ket?™,這些程序在IBM量子計算機(jī)上成功執(zhí)行,從而朝著實(shí)現(xiàn)“意義感知”和“語法信息”的自然語言處理邁出了一大步——這是計算機(jī)時代早期以來計算機(jī)科學(xué)家及語言智能領(lǐng)域?qū)<业膲粝搿?/div>
中國阿里達(dá)摩院的自然語言處理研究團(tuán)隊(duì)最近提出優(yōu)化模型StructBERT,能讓機(jī)器更好地掌握人類語法,加深對自然語言的理解。使用該模型好比給機(jī)器內(nèi)置一個“語法識別器”,使機(jī)器在面對語序錯亂或不符合語法習(xí)慣的詞句時,仍能準(zhǔn)確理解并給出正確的表達(dá)和回應(yīng),大大提高機(jī)器對詞語、句子以及語言整體的理解力。這一技術(shù)已廣泛使用于阿里旗下阿里小蜜、螞蟻金服、優(yōu)酷等業(yè)務(wù)。阿里達(dá)摩院的語言模型和閱讀理解技術(shù)也被用于行業(yè)賦能,推進(jìn)人工智能技術(shù)在醫(yī)療、電力、金融等行業(yè)的落地。據(jù)悉,StructBERT模型日前被評為全球性能最強(qiáng)的自然語言處理系統(tǒng)。
結(jié)束語
實(shí)現(xiàn)自然語言理解,遠(yuǎn)不如人們原來想象的那么簡單,而是十分困難的。從現(xiàn)有的理論和技術(shù)現(xiàn)狀看,通用的、高質(zhì)量的自然語言處理系統(tǒng),仍然是較長期的努力目標(biāo),但是針對一定應(yīng)用,具有相當(dāng)自然語言處理能力的實(shí)用系統(tǒng)已經(jīng)出現(xiàn),有些已商業(yè)化,甚至開始產(chǎn)業(yè)化;典型的例子有:多語種數(shù)據(jù)庫和專家系統(tǒng)的自然語言接口、各種機(jī)器翻譯系統(tǒng)、全文信息檢索系統(tǒng)、自動文摘系統(tǒng)等。要實(shí)現(xiàn)人機(jī)間自然語言通信,或要完全實(shí)現(xiàn)自然語言理解,這不是在短時期內(nèi)可以完成的,還有待長期的、系統(tǒng)的、扎實(shí)的工作。
總之,隨著互聯(lián)網(wǎng)的普及和海量信息的涌現(xiàn),作為人工智能的核心技術(shù),自然語言處理正在人們的工作、學(xué)習(xí)、生活中扮演著越來越重要的角色,并將在社會發(fā)展和科技進(jìn)步的過程中發(fā)揮越來越重要的作用。