夏艷輝
摘要:中文問答系統通常由問題分析、信息檢索、答案抽取組成。其中,問題分析中的問題的分類是否準確會直接關系到提取答案的準確度,所以在問答系統中起到關鍵性作用。本文主要介紹了中文問答系統的結構、問題分類體系以及方法,并提出結合基于規則的模式匹配與基于統計的機器學習的方法對問題進行分類,從而提高分類的準確度。
Abstract: Chinese question answering system usually consists of question analysis, information retrieval and answer extraction. Among them, whether the classification of the question in the question analysis is accurate is directly related to the accuracy of extracting the answer, so it plays a key role in the question and answer system. This paper mainly introduces the structure, question classification system and method of Chinese question answering system, and proposes a classification based on rule-based pattern matching and statistical-based machine learning to improve the accuracy of classification.
關鍵詞:開放域;中文問答系統;問題分類
Key words: open-domain;Chinese question answering system;question classification
中圖分類號:TP391.1? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1006-4311(2019)16-0147-03
0? 引言
在問答系統中,用戶輸入自然語言查詢語句后,系統便會給出精準的答案。比如用戶在問答系統中輸入“中國有多少個民族?”,系統就會給出準確的答案“56個”。因此,對于問答系統的研究正如火如荼的進行著。對于用戶輸入的問題的類別分析通常按照答案的類型把問題歸到對應的語義類別,比如用戶提問“三峽大壩在哪里?”,就能夠了解到其想得到的結果是一個地名,因此,此問題應該歸為地名類。問題分類作為問答系統中的一個關鍵部分,它的主要作用包括以下兩點:①通過對問題類別的劃分,可以一定程度的縮小候選答案空間,從而提高輸出答案的正確率;②系統可以依據對問題劃分的不同類型來調節答案的選擇策略[1]。綜上所述,問題分類對問答系統的結果至關重要,分類的優劣會直接關系到問答系統最終答案的質量[2]。
1? 相關研究
1.1 開放域問答系統研究現狀
人工智能剛剛興起時,就有研究者提出設計自動問答系統,試圖讓計算機用自然語言的方式,來回答用戶的問題。以前的問答系統主要用于特定的領域,利用某個領域的專家知識來檢索答案,如BASEBALL和LUNAR等[3]。在檢索技術與Internet的不斷發展后,面向大量文檔的開放域問答也開始進入了研究者的視野。國外早期開發的具有代表性的開放域問答系統有麻省理工大學的Start、密歇根大學的AnswerBus[4]、華盛頓大學的MULDER系統等。其中,Start是最早基于Web的一款簡單的自動問答系統[5],而MULDER是第一個全自動問答系統,它沒有知識庫,而是完全從Internet上檢索答案。
與國外研究相比,中文問答系統的研究開始的比較晚,進展也較為緩慢。目前,國內較為活躍的研究機構主要有:中國科學院計算所、自動化所、哈爾濱工業大學、北京語言大學、清華大學等。其中,中國科學院計算所開發的NKI系統能夠使用戶通過自然語言進行提問,如天氣預報、人物、中醫疾病、地理等方面的問題,并可以獲得較為滿意的答案[6]。
1.2 問題分類研究現狀
國外關于英文問題分類的研究起步稍早,大多使用基于規則的方法。這種方法的核心就是劃分問題的關鍵詞,然后根據關鍵詞(組合)映射到具體的問題類型,以此進行問題分類。例如提出有關Where或者Why的問題,就能夠依據這些疑問詞直接確定問題的類型,而不需要標記語料庫,并且有著較高的準確性和針對性,因此,這種方法對大多數問題來說是有效的[7]。但是,該方法依據的規則大多是人為總結的,同時和分類體系緊密相關,所以其工作量往往比較大并且靈活性比較低。隨著計算機技術的發展,大量機器學習的方法被學者應用到了英文問題的分類中,以減少劃分問題類別的工作量。Dell Zhang提出采用支持向量機(SVM)的方法來劃分英文問題的類別[8]。Phil Blunsom通過最大熵模型從句法和語義中提取特征,并得到了較好的分類結果[9]。
中文與英文問題在一定程度上有相似的地方,比如它們都沒有上下文環境、包含的信息量都很少等等,但是,中文問題在語義、詞義和歧義等方面有一些問題[7]。在中文問題的分類中,張宇將分詞和詞性作為特征值,采用貝葉斯模型對問題的類別進行劃分,從而展開了中文問題分類的研究[10]。文勖通過句法的結構信息提取問題的主干來進行分類,從而減少分類噪音,提高精度[2]。劉里提出句法依存關系和詞性相結合的一個問題屬性的核函數,提取術語、詞性、依賴關系的“HED”詞和問句詞后,通過核函數的值來計算詞語、詞性的依存關系以及路徑,通過SMO算法得到支持向量,取得了很好的效果[11]。