李 玲 何聚厚
1(陜西師范大學計算機科學學院 陜西 西安 710119)2(陜西師范大學現(xiàn)代教學技術(shù)教育部重點實驗室 陜西 西安 710062)
?
基于語義依存分析的句子相似性度量算法及應(yīng)用研究
李 玲1何聚厚2*
1(陜西師范大學計算機科學學院 陜西 西安 710119)2(陜西師范大學現(xiàn)代教學技術(shù)教育部重點實驗室 陜西 西安 710062)
問答系統(tǒng)在MOOC(Massive Open Online Course)學習平臺中占有很重要的地位,但由于MOOC課程學習中用戶多、問題多的特點,快速準確地找到某一問題的答案,成為提升MOOC平臺用戶體驗的一個挑戰(zhàn)。為此,構(gòu)建了面向常問問題集的問答系統(tǒng),通過計算問句的相似性實現(xiàn)系統(tǒng)的自動問答。在現(xiàn)有的句子相似性度量方法基礎(chǔ)上,設(shè)計了基于語義依存關(guān)系的度量方法,并結(jié)合了句長、詞形、詞義等多種特征度量句子之間的相似性。實驗結(jié)果表明,該方法能夠較好地反映句子之間的語義差別,是一種可行有效的方法,且提高了系統(tǒng)的響應(yīng)準確率。該系統(tǒng)具有較高應(yīng)答準確率,具有較強使用價值和廣闊的應(yīng)用前景。
MOOC 自動響應(yīng) 問答 句子相似度 語義依存分析
大規(guī)模在線開放課程MOOC是基于網(wǎng)絡(luò)和移動智能技術(shù)的新型在線學習課程形式。自2012年MOOC元年以來,它作為一種全新的學習方式,不僅推動了現(xiàn)代遠程教育,更是給傳統(tǒng)教育,尤其是給高等教育帶來了巨大變革[1]。但是,由于地理上的分離,基于網(wǎng)絡(luò)的MOOC學習中,師生之間缺乏直接的互動。而答疑工作,作為教學活動過程中的一項必不可少的環(huán)節(jié),開展效果將直接影響到教學質(zhì)量的高低。在現(xiàn)代MOOC教學中,大多數(shù)MOOC課程利用在討論區(qū)提問的方式進行答疑,如edX、學堂在線、中國大學MOOC等平臺,教師可根據(jù)學習者的反饋予以定期答疑,哈佛大學曾在edX上開設(shè)《China》課程[2],每周兩位主講教師會收集上周學習參與者們提出來的具有代表性的問題,專門制作一個答疑視頻(Office Hours),幫助師生的互動交流。一些MOOC課程會根據(jù)需要通過QQ、Facebook等社交、通信平臺進行交互,但要獲得及時答疑的前提是雙方同時在線,例如在愛丁堡大學的EDC MOOC[3]中,教師利用Google Hangout進行定期視頻答疑,要求學習者必須在規(guī)定的時間登錄到Google Hangout。也有少數(shù)教學平臺帶有自己的問答平臺,如網(wǎng)絡(luò)課程聯(lián)盟Coursera、中國的慕課網(wǎng)等,學生可以提出問題讓其他學生回答,據(jù)統(tǒng)計,Coursera的回答時間中間值為22分鐘[4]。就目前存在的答疑方式來看,學習者碰到的問題無法在第一時間得到教師的輔導(dǎo),學習者缺乏及時的指導(dǎo),難以達到好的學習效果。同時,MOOC課程最主要的特征是大規(guī)模和開放性[5],為數(shù)眾多的學習者導(dǎo)致教師沒有足夠的時間和精力回答每一個提問。如何快速準確地找到某一問題的答案,成為提升MOOC平臺用戶體驗的一個挑戰(zhàn)。
自動問答(Question Answering Track)系統(tǒng)的作用和搜索引擎相似,能夠為用戶提供相關(guān)問題的答案。不同的是,它既能夠讓學習者用自然語言提問,不需要將問句分解為關(guān)鍵字,又能夠返回一個簡潔、準確的答案,而不是一些相關(guān)的網(wǎng)頁,能夠比搜索引擎更準確地找出用戶所需要的答案,滿足用戶的檢索需求[7]。將自動問答技術(shù)應(yīng)用于MOOC學習平臺,在一定范圍內(nèi)自動回答學習者提出的問題,使學習者能夠及時解決疑難問題,以便后續(xù)學習,不僅提高了時效性和資源復(fù)用率,而且能夠幫助教師進行分析、統(tǒng)計,發(fā)現(xiàn)學習者的薄弱之處,改善教學中的不足,提高教學效果。為此,本文設(shè)計了面向常問問題集FAQ(Frequently Asked Question)的問答系統(tǒng),常問問題集中保存了用戶經(jīng)常問的問題及答案,當用戶提問時,系統(tǒng)首先在常用問題集中查找是否有相同或相似問題存在,如果有,那么直接給用戶提供該問題的答案,完成自動響應(yīng),方便快捷地解答了學習者學習過程中遇到的疑惑,具有較強的實用價值。
在FAQ問答系統(tǒng)中,系統(tǒng)能否高效地完成自動響應(yīng)的核心是問句與問句之間的相似性度量是否合理,其中,計算方法的時間復(fù)雜度和結(jié)果的準確率對問答系統(tǒng)的效率有直接影響。目前,常用的句子間相似性度量方法有以下幾種。
1.1 基于相同詞的句子相似性度量方法
基于相同詞的句子相似性度量,也叫做詞形相似度,反映的是兩個句子包含的詞語在形態(tài)和結(jié)構(gòu)上的相似程度,一般使用兩個句子含有的相同詞的個數(shù)作為衡量標準。這種方法計算簡單且效率高,但是由于沒有利用到句子的語義和語法信息,結(jié)果不是很準確。
1.2 基于語義詞典的句子相似性度量方法
基于語義詞典的相似性度量方法是以語義詞典作為語義分類體系得到詞語間相似度,在此基礎(chǔ)上進行句子相似性度量。語義詞典是詞語語義相似性度量的基礎(chǔ),目前常用的英文語義詞典有WordNet、MindNet等,中文語義詞典有《知網(wǎng)》(HowNet)[8]、《同義詞詞林》等。利用語義詞典度量詞語相似性的主要思想是:首先利用語義詞典中概念間的多種語義關(guān)系(上下位、反義和同義等)計算得到概念與概念間的語義距離,再根據(jù)概念之間的語義距離計算得到概念之間的語義相似度,最后由概念之間的語義相似性計算得到詞語間的語義相似度。但是由于這一方法沒有考慮到句子的句法結(jié)構(gòu)和詞與詞的相互作用關(guān)系,結(jié)果并不是很準確。
1.3 基于編輯距離的句子相似性度量方法
編輯距離是指從句子A變化成為句子B所需要的最少編輯操作次數(shù)。編輯操作指的是對句子進行的插入、刪除和替換操作,一般指定位置的單個字符操作被稱為一次編輯操作。編輯距離應(yīng)用的成果較少,主要被用于句子的快速模糊匹配領(lǐng)域,文獻[21]將其應(yīng)用到了句子檢索系統(tǒng)中,不僅使用了編輯距離算法進行句子檢索,同時利用語義詞典來彌補編輯距離在語義信息方面的缺失,并用實驗證明了方法的有效性。
1.4 基于依存句法的句子相似性度量方法
依存句法是1959年法國語言學家L.Tesniere最先提出的概念。它將句子分析成一顆依存句法樹,描述出各個語言單位之間的依存關(guān)系,指出了各個句子成分之間在句法上的搭配關(guān)系,這種搭配關(guān)系是和語義密切聯(lián)系的。依存句法分析能夠反映出句子當中各語義成分之間的相互修飾關(guān)系,與各成分在句中的物理位置無關(guān),因此可以長距離搭配。如何找出句子中各成分的依存關(guān)系是使用依存結(jié)構(gòu)度量句子相似性的核心問題。在利用句法結(jié)構(gòu)進行相似性度量時,一般只考慮那些構(gòu)成有效搭配對的相似程度,也就是整個句子的中心詞和直接和中心詞依存的有效詞(名詞、動詞和形容詞)組成的搭配對。文獻[25]獲取句子中的詞語搭配和構(gòu)成特征時利用了依存句法理論,并進行了實驗對比,證明了該方法能夠可行有效地反應(yīng)句子之間的語義差別。
1.5 基于角色標注的句子相似性度量方法
通常的句子相似性度量方法都很少包含語義信息,而基于語義角色標注的句子相似性度量不僅考慮了語法信息,同時將語義信息融入其中。語義角色標注作為句子深層語義分析的一個過度階段,將其應(yīng)用到句子相似性度量中有很重要的作用。文獻[26]利用了語義角色來度量句子的相似性,將語義角色標注結(jié)構(gòu)相似性引入到句子相似性度量中。本文在此基礎(chǔ)上將語義角色改為語義依存分析的結(jié)果,不僅包含語義角色,還包含句法結(jié)構(gòu)和二級語義關(guān)系,后文用實驗證明了此算法的有效性。
2.1 基于語義依存分析的句子相似度
語義角色標注結(jié)構(gòu)中包含著豐富的語義信息。文獻[19]和文獻[26]都提出了利用語義角色來度量句子的相似性,但語義角色只關(guān)注句子主要謂詞的論元及謂詞與論元之間的關(guān)系,而語義依存不僅關(guān)注謂詞與論元的關(guān)系,還關(guān)注謂詞與謂詞之間、論元與論元之間、論元內(nèi)部的語義關(guān)系。語義依存分析對句子語義信息的刻畫更加完整全面,是句法和語義的進一步深化。因此本文在此基礎(chǔ)上提出一種基于語義依存分析的句子相似性度量方法,計算過程中使用哈工大社會計算與信息檢索研究中心研發(fā)的 “語言技術(shù)平臺(LTP)”[11]進行句法分析,利用分析結(jié)果進行計算。
語義依存關(guān)系包括:主要語義角色,每一種語義角色對應(yīng)存在一個嵌套關(guān)系和反關(guān)系;事件關(guān)系,描述兩個事件間的關(guān)系;語義依附標記,標記說話者語氣等依附性信息[11]。正是由于語義依存分析包含如此豐富的信息,所以如何利用這些有用信息來計算句子的相似度就成為我們研究工作中的研究重點。衡量整個句子的語義時,通常情況下標點、語氣、連詞、介詞等因素對語義的影響較小,在計算時將這類標記忽略,只計算有實際含義的語義依存角色。計算過程如下:
(1) 相同語義依存角色的個數(shù)
(1)
SameRole(S1,S2)表示句子S1與句子S2中所包含的相同的語義依存角色數(shù)目,Role(S1)和Role(S2)表示句子S1和S2各自包含的語義依存角色數(shù)目。
(2) 相同語義依存角色在句子中的位置
(2)
(3)
其中,r1i與r2i表示句子S1與S2中第i個相同的語義角色,dis(r1i)和dis(r2i)表示該角色距離語義依存句法樹根結(jié)點的距離,距離越接近,句子越相似。
(3) 基于語義依存分析的句子相似度SdpSim(S1,S2)=αSdpSim1(S1,S2)+βSdpSim2(S1,S2)
(4)
經(jīng)過實驗,α=0.2,β=0.8時,計算結(jié)果最為有效。
2.2 多因素的句子相似性度量
句子之間的相似性受到很多因素的影響,例如詞形、句長、詞序、詞語含義、句法結(jié)構(gòu)等。兩個句子的相似程度不僅和句子的語義信息相關(guān),也和句子的句法信息相關(guān),要想取得理想的效果就不能單純考慮其中的單一方面。因此,我們在處理過程中把上面提到的這些因素分別看成句子的不同特征項,綜合利用這些特征項,根據(jù)重要性來配給不同的權(quán)重,得到句子的最終相似度。計算過程如下:
(1) 詞形相似度
根據(jù)兩句話中出現(xiàn)的相同詞語來衡量句子的相似性。句子S1和S2 的詞形相似度為:
(5)
其中,Len(S1)和Len(S2)分別表示兩個句子的詞數(shù),SameWord是兩個句子包含的相同詞的個數(shù)。
(2) 句長相似度
句子長度在一定程度上也反映了句子之間的相似程度,長度越接近的兩個句子相似程度越大。設(shè)S1、S2為兩個句子,則S1和S2 的句長相似度為:
(6)
其中,和Len(S2)分別表示兩個句子的詞數(shù)。
(3) 語義相似度
本文采用《知網(wǎng)》作為語義詞典來度量句子之間的相似性。設(shè)S1、S2為兩個句子,S1包含的詞為A1,A2, …,Am,S2包含的詞為B1,B2, …,Bn,利用文獻[9]的方法計算出詞Ai(1≤i≤m)和Bj(1≤j≤n)之間的相似度為S(Ai,Bj),則句子S1與S2之間的語義相似度為:
(7)
其中:
ai=max(S(Ai,B1),S(Ai,B2),…,S(Ai,Bn))
(8)
bi=max(S(A1,Bj),S(A2,Bj),…,S(Am,Bj))
(9)
(4) 句子相似度
基于多因素的句子相似性度量模型的計算公式如下:
SenSim(S1,S2) =γ1WordSim(S1,S2)+
γ2LenSim(S1,S2)+
γ3SematicSim(S1,S2)+
γ4SdpSim(S1,S2)
(10)
其中:
γ1+γ2+γ3+γ4=1
3.1 系統(tǒng)處理流程
該問答系統(tǒng)數(shù)據(jù)庫包含了一個常用問題庫,為加快查找和計算效率,問題經(jīng)過預(yù)處理,標注了分詞結(jié)果、詞性和語義依存關(guān)系。當用戶輸入問題時,系統(tǒng)首先判斷是否合法,如果不是,則提示用戶提問非法,用戶重新提問。
系統(tǒng)判斷是合法問句后,首先利用哈工大的 “語言技術(shù)平臺(LTP)” 為基礎(chǔ)對用戶問句進行詞法分析、命名實體識別、依存句法分析、語義角色標注,得到詞語信息的集合;查找計算之前,首先進行停用詞過濾處理,去除那些對句子整體意思影響不大的詞匯(如介詞、語氣詞等),提高相似性度量的準確性,降低向量空間模型的維度,提高查找效率。然后在數(shù)據(jù)庫中查找備選問題。將用戶輸入的問題和備選問題進行句子相似性度量,選擇計算結(jié)果相似性最大的問題,判斷是否大于閾值。大于則返回常問問題庫中對應(yīng)問題的答案,小于則將問題提交給對應(yīng)的教師或者管理員。MOOC學習平臺下的中文自動問答系統(tǒng)的處理流程如圖1所示。
圖1 問答系統(tǒng)處理流程
3.2 系統(tǒng)界面
圖2 問答系統(tǒng)聊天界面
3.3 對比實驗
結(jié)合本文應(yīng)用場景為MOOC網(wǎng)絡(luò)學習平臺,實驗數(shù)據(jù)采用與《論語》課程相關(guān)的語料構(gòu)造的問答庫,語料來源于互聯(lián)網(wǎng)綜合數(shù)據(jù)交易和服務(wù)網(wǎng)站“數(shù)據(jù)堂”。
(1) 計算結(jié)果對比
表1 加入語義依存分析前后對比實驗
從表1可以看出,基于詞形、句長、詞義和語義依存分析多重因素考慮句子之間的相似度,比單純基于語義詞典的相似性度量結(jié)果更為準確。
(2) 系統(tǒng)響應(yīng)正確率
測試問題數(shù)為100條,其中20條在問題庫中有相應(yīng)的問題和答案,60條是經(jīng)過問句的變形提問并在問題庫中都有答案,剩余20條在問題庫中沒有對應(yīng)提問和答案。經(jīng)過實驗對比,查找問句時,設(shè)置閾值為0.7。選擇相似度最大的問句,若相似度大于等于0.7,將該問題對應(yīng)的答案返回;若小于0.7,那么認為該問題集中沒有用戶所提問題的答案。實驗結(jié)果對比如表2所示。
表2 各因素不同權(quán)重的實驗對比
如表2所示,實驗組(1)中句子相似性度量只考慮基于語義詞典的詞義相似度;實驗組(2)和(3)在(1)的基礎(chǔ)上加入了詞形和句長的計算,句子查找的正確率有一定提高,但是效果不明顯;實驗組(4)、(5)、(6)在(2)、(3)的基礎(chǔ)上考慮了語義角色和句法結(jié)構(gòu),將基于語義依存分析的句子相似性度量結(jié)合進去,查找正確率明顯提高。從上圖的實驗結(jié)果來看,計算句子相似度時,詞形、句長、詞義和語義依存分析分別占權(quán)重為0.05、0.20、0.70、0.05時,系統(tǒng)的準確率最高。
MOOC作為全新的學習方式,在現(xiàn)代教育中應(yīng)用越來越廣泛,但由于MOOC課程學習中用戶量大、問題多,快速準確地找到某一問題的答案,成為提升MOOC平臺用戶體驗的一個挑戰(zhàn)。自動問答技術(shù)是自然語言處理領(lǐng)域的研究熱點,被稱為“第二代搜索引擎”,擁有廣闊的應(yīng)用前景。將自動問答技術(shù)應(yīng)用在MOOC平臺中,可以有效解決師生交流的不及時和問答資源不能重復(fù)利用的問題。本文設(shè)計了基于依存句法分析的句子相似性度量方法,并結(jié)合詞形、句長、詞義多重因素度量句子之間的相似性,在此基礎(chǔ)上實現(xiàn)了原型系統(tǒng)并進行了實驗。實驗結(jié)果實驗證明,將語義依存分析應(yīng)用到問答系統(tǒng)句子相似性度量中,能夠更加精確地反映問答數(shù)據(jù)的特征,使系統(tǒng)性能得到改善,有很高的研究和應(yīng)用價值。今后的工作將繼續(xù)研究句子相似性度量的方法和效率,不斷提高問答系統(tǒng)的性能。
[1] 王文禮. MOOC的發(fā)展及其對高等教育的影響[J]. 江蘇高教,2013(2):53-57.
[2] 李青,王濤. MOOC:一種基于連通主義的巨型開放課程模式[J]. 中國遠程教育,2012(3):30-36.
[3] 馬武林,張曉鵬. 大規(guī)模開放課程(MOOCs)對我國大學英語課程設(shè)置的啟示研究——以英國愛丁堡大學EDC MOOC為例[J]. 電化教育研究,2014(1):52-57.
[4] 科勒.我們能從在線教育中學到什么?[OL].http://www.ted.com/talks/daphne_koller_what_we_re_learning_from_online_education.html.
[5] 陳肖庚,王頂明. MOOC的發(fā)展歷程與主要特征分析[J]. 現(xiàn)代教育技術(shù),2013(11):5-10.
[6] 鄭實福, 劉挺, 秦兵. 中文自動問答系統(tǒng)綜述[J]. 中文信息學報, 2002, 6(16): 46-52.
[7] 毛先領(lǐng), 李曉明. 問答系統(tǒng)研究綜述[J] . 計算機科學與探索, 2012,6(3):193-207.
[8] 董強,董振東. 知網(wǎng)簡介[EB/OL]. [2013-01-29]. http://www. keenage. com/.
[9] 劉群, 李素建. 基于《知網(wǎng)》的詞匯語義相似度計算[C]// 第三屆中文詞匯語義學研討會. 中國臺北, 2002.
[10] Huang Gaitai, Yao Hsiuhsen. Chinese question answering system[J].Journal of Computer Scienceand Technology, 2008, 19(4):479-488.
[11] Che Wanxiang, Li Zhenghua, Liu Ting. LTP: A Chinese Language Technology Platform[C]// COLING 2010, International Conference on Computational Linguistics, Demonstrations Volume, 23-27 August 2010, Beijing, China. DBLP, 2010:13-16.
[12] Zhu Z Y, Dong S J, Yu C L, et al. A text hybrid clustering algorithm based on HowNet semantics[C]// ICAMCS 2011: 2011 International Conference on Advanced Materials and Computer Science. Zurich: Trans Tech Publications Ltd, 2011:474-476.
[13] 張亮. 面向開放域的中文問答系統(tǒng)問句處理相關(guān)技術(shù)研究[D]. 南京:南京理工大學, 2006.
[14] 李歡. 問答系統(tǒng)中的文本信息抽取研究與應(yīng)用[D].北京: 中國科學技術(shù)大學, 2009.
[15] 劉朝濤. 中文問答系統(tǒng)中的句型理論及其應(yīng)用研究 [D]. 重慶:重慶大學, 2010.
[16] 吳全娥. 漢語句子相似度計算及其在自動問答系統(tǒng)中的應(yīng)用[D]. 西南大學,2011.
[17] 王肖磊. 自動問答系統(tǒng)的研究與應(yīng)用[D] . 北京: 北京郵電大學,2015.
[18] 邢超. 智能問答系統(tǒng)的設(shè)計與實現(xiàn)[D]. 北京: 北京交通大學,2015.
[19] 張祎挺. 語義角色標注及其在句子相似度計算上的應(yīng)用[D]. 北京: 北京郵電大學,2008.
[20] 裴婧, 包宏. 漢語句子相似度計算在FAQ中的應(yīng)用[J]. 計算機工程, 2009,35(17):46-48.
[21] 車萬翔, 劉挺, 秦兵, 等. 基于改進編輯距離的中文相似句子檢索[J]. 高技術(shù)通訊, 2004, 14(7):15-19.
[22] 劉寶艷, 林鴻飛, 趙晶. 基于改進編輯距離和依存文法的漢語句子相似度計算[J]. 計算機應(yīng)用與軟件, 2008,25(7):33-34, 47.
[23] 薛慧芳. 句子相似度計算理論及應(yīng)用研究[D]. 西安: 西北大學,2011.
[24] 李茹, 王智強, 李雙紅, 等. 基于框架語義分析的漢語句子相似度計算[J]. 計算機研究與發(fā)展, 2013, 50(8): 1728-1736.
[25] 吳佐衍, 王宇. 基于HNC理論和依存句法的句子相似度計算[J]. 計算機工程與應(yīng)用, 2014,50(3):97-102.
[26] 王志青. 基于語義角色標注的句子相似度計算[D]. 北京: 北京郵電大學,2014.
[27] 鄭誠,李清,劉福君. 改進的VSM算法及其在FAQ中的應(yīng)用[J]. 計算機工程,2012,38(17):201-204.
[28] 李春梅,徐慶生. 基于多特征的漢語句子相似度計算模型的研究[J]. 計算機技術(shù)與發(fā)展, 2014(6):136-139, 144.
[29] 張培穎,房龍云. 多特征結(jié)合的詞語相似度計算模型[J]. 計算機技術(shù)與發(fā)展, 2014(12):37-40.
CHINESE SENTENCE SIMILARITY COMPUTATION AND APPLICATION BASED ON SEMANTIC DEPENDENCY PARSING
Li Ling1He Juhou2*
1(SchoolofComputerScience,ShaanxiNormalUniversity,Xi’an710119,Shaanxi,China)2(KeyLaboratoryofModernTeachingTechnology,MinistryofEducation,ShaanxiNormalUniversity,Xi’an710062,Shaanxi,China)
Question answering system makes a big difference on MOOC learning platform, but since number of users and questions is so large that how to find the certain answer to a question quickly and accurately is a challenge to enhance user experience. So a frequently asked question system was designed to response question automatically. Based on the existing similarity calculation methods, this paper proposed a similarity calculation method according to semantic dependency parsing and multiple characteristics between sentences such as same words, sentence-length, and semantic of words. Test result shows that this method can reveal sentence difference better improve the accuracy of the response. This system has high response accuracy, has high practical value and wide application prospects.
MOOC Auto respond Question and answer Sentence similarity Semantic dependency parsing
2016-07-26。教育部-中國移動科研基金項目(MCM20150604)。李玲,碩士生,主研領(lǐng)域:網(wǎng)絡(luò)與遠程教育。何聚厚,副教授。
TP311
A
10.3969/j.issn.1000-386x.2017.07.045