石磊 張燕平 黃燕 孫曉濛
摘要:隨著互聯(lián)網(wǎng)的迅速發(fā)展,網(wǎng)絡(luò)資源的海量增長(zhǎng),傳統(tǒng)的搜索引擎已不能滿足提供用戶滿意的結(jié)果界面,與用戶關(guān)心的自然語(yǔ)義的詞句含義分析系統(tǒng)應(yīng)運(yùn)而生。該文研究了基于自然語(yǔ)義的詞句含義系統(tǒng)的基本架構(gòu)以及基本實(shí)現(xiàn)方法,并在此基礎(chǔ)上設(shè)計(jì)了系統(tǒng)的各個(gè)模塊。
關(guān)鍵詞:自然語(yǔ)義處理,中文分詞,詞句含義分析,
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)15-0128-02
Abstract: With the booming development of the Internet, the resource of the Internet increased rapidly. The traditionally search engine are not able to satisfy the needs of the users, as a result, the expressions-analysis system system based Natural Language Processing appears. This article describes the basic architecture and the method to achieve it. Furthermore, we designed every part of this system.
Key words: natural language processing, Chinese word segmentation, expressions analysis
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,互聯(lián)網(wǎng)上的資源也以指數(shù)形式增長(zhǎng),如何從海里的信息中提取用戶想要的信息是傳統(tǒng)搜索引擎最關(guān)心的事情,然而傳統(tǒng)搜索引擎由于自身采用的關(guān)鍵字匹配,模糊匹配等算法已不能滿足用戶的需求,所以基于用戶的自然語(yǔ)義處理系統(tǒng)應(yīng)運(yùn)而生。此系統(tǒng)旨在通過用戶輸入的語(yǔ)句,通過分詞、同義詞擴(kuò)展等技術(shù)實(shí)現(xiàn)語(yǔ)句的含義分析,從而改進(jìn)傳統(tǒng)搜索引擎只能通過關(guān)鍵詞匹配返回用戶所求的不足。
1 詞句含義分析系統(tǒng)研究原理
1.1 詞句含義系統(tǒng)的原理
詞句含義分析系統(tǒng)包含語(yǔ)句處理、信息檢索、結(jié)果顯示、數(shù)據(jù)挖掘等模塊。其主要模塊是語(yǔ)句處理模塊,其中涉及的技術(shù)有關(guān)鍵詞提取,同義詞匹配兩個(gè)步驟,基本體系結(jié)構(gòu)如圖1。
語(yǔ)句處理系統(tǒng)是指對(duì)用戶提出的語(yǔ)句進(jìn)行處理,得到語(yǔ)句的含義分析結(jié)果,其中包含關(guān)鍵詞提取,同義詞擴(kuò)展,相似度比較三個(gè)子模塊。關(guān)鍵詞提取是指對(duì)用戶提出的語(yǔ)句中的關(guān)鍵詞進(jìn)行提取,包括分出其中的主語(yǔ),賓語(yǔ),謂語(yǔ)等關(guān)鍵詞語(yǔ);同義詞擴(kuò)展是將分詞得到的結(jié)果進(jìn)行擴(kuò)展,使得用戶關(guān)心的問題得到擴(kuò)展;相似度比較是將所得結(jié)果與原語(yǔ)句進(jìn)行比較,去除相似度較低結(jié)果,使得語(yǔ)句處理的結(jié)果更加準(zhǔn)確。
1.2 關(guān)鍵詞的提取
關(guān)鍵詞的提取時(shí)詞句含義系統(tǒng)最重要的環(huán)節(jié)之一,在這一環(huán)節(jié)中,我們將給定的一句話通過分詞程序分成若干個(gè)關(guān)鍵詞,同時(shí)將其進(jìn)行詞性標(biāo)注,部分用于后續(xù)的同義詞擴(kuò)展,部分不需要的舍棄。
中文文本的分詞和詞性標(biāo)注是自然語(yǔ)義處理中一個(gè)基礎(chǔ)性問題,因?yàn)橹形奈谋静煌谟⑽奈谋?,英文中直接采用空格切分,所以在詞句含義系統(tǒng)中將等間距排列的漢字序列切分開來就是中文分詞問題[1]。
中文分詞的主要方法可以總結(jié)為:基于規(guī)則的分詞方法、基于統(tǒng)計(jì)的分詞方法、基于規(guī)則和基于統(tǒng)計(jì)相結(jié)合的方法等等。
自然語(yǔ)言的自動(dòng)分析是指計(jì)算機(jī)接收到自然語(yǔ)言文本后,自動(dòng)將文本的“意思”表示出來的過程。純粹從形式上看,就是將輸入的自然語(yǔ)言文本,變換為另一種表示形式輸出的過程。對(duì)于自動(dòng)分析而言,其輸入為自然語(yǔ)言的句子,這一點(diǎn)是沒有爭(zhēng)議的,明確的;其輸出則是對(duì)于輸入的自然語(yǔ)言文本的一種解釋。而如何來解釋自然語(yǔ)言,則有許多不同的看法,這些不同的看法的背后實(shí)際上都聯(lián)系著不同的語(yǔ)法理論。大致說來,當(dāng)代為數(shù)眾多的語(yǔ)法理論可以做如下粗略的劃分
其中NLU的基本方法有以下兩種:
1) 構(gòu)建語(yǔ)言模型:這部分工作的理論基礎(chǔ)主要是上下文無關(guān)文法(context free grammar),即以文法的形式給出語(yǔ)言成分之間可能存在的組合模式的描述。
2)搜索符合文法要求的語(yǔ)言結(jié)構(gòu)樹:依據(jù)給定的文法,判斷一個(gè)具體句子中的語(yǔ)言成分(詞語(yǔ)和詞組)符合該文法的哪些組合模式。
例1:漢字序列:×××打人弟子被刑拘詞序列:××× 打人弟子被刑拘詞性序列: ×××/n 打人/v 弟子/n 被/p 刑拘/v在詞性序列的基礎(chǔ)上,計(jì)算機(jī)就可以按照語(yǔ)言模型中規(guī)則的約束,從左至右,逐詞掃描,進(jìn)行分析,在眾多的候選樹結(jié)構(gòu)中,搜索得到“正確”的結(jié)構(gòu),來解釋句子的意思。以下就是計(jì)算機(jī)根據(jù)語(yǔ)言模型分析例1的過程:
1.3 同義詞的擴(kuò)展
同義詞的擴(kuò)展時(shí)自然語(yǔ)義處理中一個(gè)最重要的環(huán)節(jié),在這一環(huán)節(jié),我們將分詞所得的結(jié)果通過同義詞擴(kuò)展找到一系列的結(jié)果,使得語(yǔ)義理解成為可能。
同義詞擴(kuò)展就是指用人工構(gòu)造同義詞庫(kù)、蘊(yùn)含詞庫(kù)等輔助詞庫(kù),或是從語(yǔ)料庫(kù)中自動(dòng)取得同義詞關(guān)系,使得檢索系統(tǒng)能自動(dòng)“聯(lián)想”到與其同義或名一意思相近的詞,提高信息匹配的準(zhǔn)確度,從而提高檢索系統(tǒng)的整體性能[2]。
本系統(tǒng)依據(jù)《哈工大信息檢索研究室同義詞詞林?jǐn)U展版》進(jìn)行手工建立同義詞詞典,使得當(dāng)用戶輸入預(yù)想的關(guān)鍵字時(shí),檢索系統(tǒng)會(huì)自動(dòng)檢索同義詞詞典,然后得到一系列同義詞,此為同義詞的擴(kuò)展。此階段主要分為兩個(gè)步驟,一個(gè)是同義詞詞典的建立,另一個(gè)是同義詞擴(kuò)展的實(shí)現(xiàn)。
在同義詞詞典的建立階段,《哈工大信息檢索研究室同義詞詞林?jǐn)U展版》將所有收錄的詞條按照樹狀的層次結(jié)構(gòu)組織在一起,將詞匯分為大,中,小三類,每個(gè)小類中都有很多詞匯,這些詞又根據(jù)詞義的遠(yuǎn)近及相關(guān)性分為若干段落,每一段落又分為若干行,同一行的詞匯的詞義或者相關(guān)性都很相近。因此詞匯的關(guān)系分為三種情況:=,#,@,分別表示相等,同義,不等。
同義詞擴(kuò)展的實(shí)現(xiàn)階段的核心代碼是編寫一個(gè)動(dòng)態(tài)鏈接庫(kù)文件(dll)文件,通過代碼調(diào)用同義詞詞典。
1.4信息檢索
在信息檢索階段,我們將同義詞擴(kuò)展階段所得的結(jié)果通過本地?cái)?shù)據(jù)庫(kù)搜索,接口調(diào)用,搜索引擎等方法顯示出來,實(shí)現(xiàn)信息的檢索。
在這一階段,首先考慮本地?cái)?shù)據(jù)庫(kù)搜索方式,通過數(shù)據(jù)庫(kù)結(jié)構(gòu)優(yōu)化,建立索引等方式,加快數(shù)據(jù)庫(kù)的搜索,從而提高返回結(jié)果速率。如果在數(shù)據(jù)庫(kù)中搜索不到相關(guān)結(jié)果,將考慮調(diào)用接口的方式,返回相關(guān)結(jié)果,如用戶輸入“今天該穿什么衣服?”,本地搜索失敗,將自動(dòng)調(diào)用墨跡天氣接口,將相關(guān)結(jié)果返回給用戶;又如用戶輸入“到安徽大學(xué)應(yīng)該怎么走?”本地搜索失敗,將自動(dòng)調(diào)用百度地圖接口,將相關(guān)結(jié)果返回給用戶。最后,如果前兩個(gè)方法都得不到用戶需要的結(jié)果,將自動(dòng)調(diào)用搜索引擎,將同義詞擴(kuò)展得到的結(jié)果利用搜索引擎搜索得到相關(guān)結(jié)果,返回給用戶。
2 結(jié)束語(yǔ)
自然語(yǔ)義的處理的基礎(chǔ)是關(guān)鍵詞的提取以及同義詞的擴(kuò)展兩個(gè)部分,用戶通過輸入一句話,通過分詞提取語(yǔ)句中相關(guān)的詞匯,然后進(jìn)行擴(kuò)展,體現(xiàn)語(yǔ)義理解。在這兩個(gè)階段都解決的情況下,將相關(guān)結(jié)果進(jìn)行信息檢索,從而將相關(guān)結(jié)果返回給用戶,實(shí)現(xiàn)自然語(yǔ)義詞句含義分析。
但是,在此系統(tǒng)中同樣存在一些問題,如返回結(jié)果可能會(huì)延遲,部分搜索結(jié)果可能不準(zhǔn)確等問題。就像用戶輸入“我的心里很溫暖”等語(yǔ)句系統(tǒng)可能會(huì)根據(jù)溫暖一次返回相關(guān)天氣情況,與用戶所指有所不同,這就是機(jī)器的自然意義理解與人的差距。因此在未來的自然語(yǔ)義理解的研究方向中,如何讓機(jī)器像人一樣思考還是我們研究的方向和重點(diǎn),亟待我們積極探索。
參考文獻(xiàn):
[1] 王恒.中文問答系統(tǒng)的研究與實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué), 2008.
[2] 趙醫(yī)娟, 潘來奇. 基于同義詞擴(kuò)展的文本檢索改進(jìn)研究[J]. 技術(shù)在線, 2011, 20(12):65-68.
[3] 梁曉誠(chéng),岳曉光,麥范金, 等. 基于NLP技術(shù)和相似度計(jì)算的智能搜索引擎研究[J]. 昆明理工大學(xué)學(xué)報(bào),2010,35(4):76-79.
[4] 劉里,曾慶田. 自動(dòng)問答系統(tǒng)研究綜述[J],山東科技大學(xué)學(xué)報(bào),2007,26(4):73-76.
[5] 陳周娟,續(xù)海峰,鈕王杰.基于靜態(tài)知識(shí)庫(kù)的領(lǐng)域內(nèi)自然語(yǔ)言理解的語(yǔ)義處理研究[J].機(jī)床與液壓, 2007,35(7):37-40.
[6] 謝正文. 中文問答系統(tǒng)關(guān)鍵技術(shù)研究[D]. 寧波: 寧波大學(xué), 2012.