王素格, 李書鳴, 陳 鑫, 穆婉青, 喬 霈
(1.山西大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院 山西 太原 030006;
文本信息處理技術(shù)的飛速發(fā)展為人類運(yùn)行信息及知識(shí)獲取提供了基礎(chǔ)和工具.自從1999年文本檢索會(huì)議(TREC)[1]組織了自動(dòng)問答評(píng)測(cè),自動(dòng)問答成為了自然語言處理領(lǐng)域的研究熱點(diǎn).從現(xiàn)有研究看,問答系統(tǒng)涉及的問題可以分為事實(shí)型問題和復(fù)雜類問題[2].針對(duì)簡(jiǎn)單文本和簡(jiǎn)單問題,微軟建立了一套面向兒童的開放域數(shù)據(jù)集MCTest[3]進(jìn)行研究;Facebook的bAbI[4]項(xiàng)目提出了有理解能力的問答系統(tǒng)需要解決的20類問題.這些項(xiàng)目包含大量主觀題,需要深層理解文本,綜合各類信息之后才能準(zhǔn)確回答.因此,作為問答系統(tǒng)的重要分支[5],閱讀理解技術(shù)的研究也變得愈發(fā)重要.
在閱讀理解問題求解時(shí),首先需要應(yīng)用問題分析技術(shù)對(duì)問句進(jìn)行分類[6],然后根據(jù)各類問題的特征,選取不同的特征集,通過制定規(guī)則和構(gòu)建不同的閱讀理解模型來解決此類問題.而對(duì)于很多類型的問題,例如:怎么樣、為什么等,并不適合使用簡(jiǎn)單的一個(gè)短語或一句話作答.
高考語文是檢測(cè)一個(gè)學(xué)生閱讀理解能力的重要考試,主要考查學(xué)生理解、分析、綜合和鑒賞評(píng)價(jià)等方面的能力,其中一類題型要求考生結(jié)合閱讀材料闡述自己的觀點(diǎn)是否與作者的觀點(diǎn)一致.例如:
【問題】作者認(rèn)為“他們面對(duì)一棵樹,竟是一種最美的完善”,你是否認(rèn)同這個(gè)觀點(diǎn)?
【問題觀點(diǎn)】他們面對(duì)一棵樹,竟是一種最美的完善.
【閱讀材料中相關(guān)答案句】
① “秋天的每一棵樹,都負(fù)載著一顆成熟的心靈.”
② “那是一排掛滿冰霜的樹,然而它們卻至今虔誠地站著,在我記憶的春天.”
③ “樹的四季都在承受烈日和風(fēng)雨,它坦然地以一種堅(jiān)毅面對(duì)一樹同樣的葉子.”
④ “我總渴望像樹一樣活著,坦然地正視自己的一生.”
……
該題目中的“他們面對(duì)一棵樹,竟是一種最美的完善.”是作者的觀點(diǎn),考生需要結(jié)合閱讀材料,分析閱讀材料中作者為什么這么說的相關(guān)句,并根據(jù)這些句子給出自己的判斷,是同意還是反對(duì)此觀點(diǎn).通過對(duì)2014—2016年全國和部分省市的語文高考試卷中該類題目的統(tǒng)計(jì),其結(jié)果見表1.
表1 2014—2016年部分省市的語文高考試卷觀點(diǎn)類題目統(tǒng)計(jì)
由表1可以看出,該題型所占比例非常高.對(duì)此類題目進(jìn)行深入分析,將有效提升機(jī)器人在高考語文答題上的成績(jī).
與常見的公開領(lǐng)域簡(jiǎn)單文本閱讀理解不同,若要準(zhǔn)確回答該類問題,可以假定考生與作者的觀點(diǎn)一致,因此,需要查找材料中與問句的觀點(diǎn)相關(guān)的內(nèi)容.閱讀材料使用了多個(gè)方面刻畫這一問題中的觀點(diǎn),而每個(gè)方面又使用了不同的詞.例如,“最美的完善”應(yīng)該包括“成熟、虔誠”等方面.對(duì)于這類問題的回答,若按照常用的關(guān)鍵詞匹配方法,只能抽取出一些與樹有關(guān)的介紹.近幾年,LDA模型及其擴(kuò)展在自然語言處理中得到充分重視和深入研究[7-9].因此,針對(duì)該類題型,本文將LDA模型應(yīng)用到閱讀理解觀點(diǎn)類問題答案句抽取中.通過構(gòu)建基于LDA的作者觀點(diǎn)主題分布一致的句子查找算法,在此基礎(chǔ)上,采用觀點(diǎn)識(shí)別技術(shù)獲取閱讀材料中帶觀點(diǎn)的句子,再利用句子間的內(nèi)容相似性對(duì)句子進(jìn)行排序,用于答案句抽取.
通常一篇散文包含多個(gè)主題,閱讀材料中與答案相關(guān)的句子可以作為對(duì)問題觀點(diǎn)的某個(gè)方面的答案,若僅僅使用關(guān)鍵詞抽取答案,將會(huì)降低答案的準(zhǔn)確率.因此,我們假設(shè)閱讀材料中的答案句與問題中的觀點(diǎn)句具有相似的主題分布,利用LDA對(duì)其進(jìn)行隱含主題分析,再將問題中的觀點(diǎn)句q加入到閱讀材料D后,將D中的每個(gè)句子看作一個(gè)文檔,則
(1)
其中:w是句子s中的一個(gè)詞;z是主題集合Z中的一個(gè)主題;N是s中所有詞的個(gè)數(shù);θ是一個(gè)主題向量;zn表示s中第n個(gè)詞選擇的主題;γ是D中隱含主題間的相對(duì)強(qiáng)弱;β是所有隱含主題自身的概率分布.參數(shù)γ和β通常設(shè)為50/K、0.01,K是D中所有主題的個(gè)數(shù).
在表示句子的主題情況下,可以通過計(jì)算與之對(duì)應(yīng)的主題概率分布,從而實(shí)現(xiàn)計(jì)算句子s與問題q的主題分布相似度,
(2)
在高考閱讀理解題型中,閱讀材料中的句子可以作為問題觀點(diǎn)的原因解釋,為了獲取這些相關(guān)句子,需要對(duì)問題觀點(diǎn)中的詞語進(jìn)行擴(kuò)展.例如,對(duì)于引言部分的例子,可將題目中的“完善”擴(kuò)展為文中出現(xiàn)的“成熟”,“堅(jiān)毅”等.
由于詞嵌入具有良好的語義特性,是詞語表示的常用方式.利用詞語表示構(gòu)造句子間相似度計(jì)算方法,用于獲得閱讀材料中與問題中觀點(diǎn)一致的句子.利用詞嵌入,將句子中所有詞語向量相加,即可獲得句子的向量表示.
假設(shè)句子s的向量表示為s=(u1,u2,…,un),問題q的向量表示為q=(v1,v2,…,vn),則句子s和問題q的相似度值計(jì)算公式為
(3)
圖1 問題語義角色分析示例Fig.1 An example of question semantic role analysis
在計(jì)算句子相似度時(shí),如果觀點(diǎn)句中含有公共的詞語較多且長(zhǎng)度較短時(shí),這類觀點(diǎn)句與問題句的相似度將會(huì)很高,而這類句子實(shí)際上與問題觀點(diǎn)無關(guān).例如“樹”,在閱讀材料中出現(xiàn)較多,而含有“成熟”、“堅(jiān)毅”等詞的句子則出現(xiàn)較少,使得這類句子相似性很低.語義角色分析技術(shù)通過分析句子的謂詞-論元結(jié)構(gòu),可以找出句子的中心,分析出句子描述的事件.因此,為了優(yōu)化與問題中的觀點(diǎn)句相似句子的排序,在計(jì)算相似度之前,需要先對(duì)問題中的觀點(diǎn)句進(jìn)行語義角色分析,以獲取觀點(diǎn)句中重要的核心論元.例如,“他們面對(duì)一棵樹,竟是一種最美的完善”,通過采用LTP(language technology platform)語義角色標(biāo)注,獲得的結(jié)果如圖1所示.
A0、A1[10]都是句子經(jīng)過語義分析后得到的論元.其中A0表示動(dòng)作的施事,A1表示動(dòng)作的受事.按照漢語的常用表述方式,一句話的后半部分比前半部分更重要.例如,先抑后揚(yáng)等手法.我們假設(shè)問題中的觀點(diǎn)句后半部分的受事更重要.通過對(duì)語料庫所有問題中的觀點(diǎn)句進(jìn)行分析,驗(yàn)證了此設(shè)想.因此,如果問題中的觀點(diǎn)句存在多個(gè)A1,我們選取問題中的觀點(diǎn)句中最后一個(gè)A1替代原問題中的觀點(diǎn)句進(jìn)行相似度計(jì)算.
由于答案句是對(duì)問題中觀點(diǎn)句的一種解釋,假設(shè)候選答案句中包含觀點(diǎn)句,為了獲取這些觀點(diǎn)句,需要在主題建模之后,建立用于識(shí)別觀點(diǎn)句的分類器.為此,根據(jù)以往的研究成果[11]及大量的散文閱讀語料,收集構(gòu)建包括情感詞、主張性動(dòng)詞、程度副詞和評(píng)價(jià)詞4類的分類特征集合,如表2所示.
表2 特征集合
利用第1節(jié)介紹的方法,設(shè)計(jì)答案抽取的過程如下:
1) 將問題q和閱讀材料D進(jìn)行合并,得到語料庫Corpus=D∪{q},利用LDA對(duì)Corpus主題建模,主題數(shù)設(shè)定為k,獲得每個(gè)句子si(i=1,2,…,n)的主題分布向量θsi,以及問題q的主題分布向量θq;
2) 利用公式(2)計(jì)算每個(gè)句子si和問題q的主題分布相似度,并對(duì)其按照相似度由大到小排序;
3)D′={s1},i=1;
fori,i≤n-1,i++;
else break;
4) 利用第1.3節(jié)建立的特征集,訓(xùn)練SVM分類器,用于選擇D′中具有觀點(diǎn)特征的句子D″;
5) 對(duì)問題中的觀點(diǎn)句進(jìn)行語義角色分析,提取A1替代原問題的觀點(diǎn)句;
6) 使用公式(3)計(jì)算SenSim(D″,A1),選取相似度排名在前α的句子作為答案句.
實(shí)驗(yàn)數(shù)據(jù)包括2014—2016年的高考題,除此之外,還選取了部分省其他年份的高考題,總共21篇,按照標(biāo)準(zhǔn)答案,共標(biāo)注了161條答案句.
另外,人工標(biāo)注了4 119條當(dāng)代名家的散文句子,用于訓(xùn)練SVM分類器,其中2 367條為觀點(diǎn)句;情感詞特征集選用了大連理工大學(xué)信息檢索實(shí)驗(yàn)室的情感詞匯本體;評(píng)價(jià)詞選用了知網(wǎng)公布的評(píng)價(jià)詞集,其中負(fù)面評(píng)價(jià)詞3 100個(gè),正面評(píng)價(jià)詞3 700個(gè);人工收集了主張性動(dòng)詞55個(gè),程度副詞63個(gè).
由于本文面向的是散文閱讀理解觀點(diǎn)類問題的答案抽取,實(shí)驗(yàn)中所用到的詞向量都是利用前期網(wǎng)絡(luò)爬取的文學(xué)作品數(shù)據(jù),通過谷歌開源的Word2Vec工具包訓(xùn)練獲得,文學(xué)作品總共7萬篇,詞向量規(guī)模為477 M,維度為200維.
本文采用“HumSent準(zhǔn)確率”評(píng)價(jià)指標(biāo),即在系統(tǒng)返回的對(duì)所有問題的答案句中,由人工評(píng)價(jià)認(rèn)為是正確的答案句所占的比例,計(jì)算式為HumSent=抽取出的正確答案句條數(shù)/總共抽取的句子條數(shù).
圖2 不同主題數(shù)對(duì)應(yīng)的抽取答案句結(jié)果Fig.2 Results of different topic number for answer extraction
當(dāng)使用LDA對(duì)文本建模時(shí),需要預(yù)先設(shè)定語料庫的主題數(shù),假設(shè)每篇文章包含1~10個(gè)主題.按照1.1節(jié)中所述主題獲取方法,以及第2節(jié)答案句抽取流程中的步驟1)~4),通過對(duì)21篇文章抽取的句子中包含的答案句進(jìn)行統(tǒng)計(jì),在各個(gè)主題下的結(jié)果如圖2所示.
由圖2可知,在21篇語料中,當(dāng)主題數(shù)大于2時(shí),該方法抽取到的句子包含的答案句明顯多于主題數(shù)為1時(shí)的結(jié)果.當(dāng)主題數(shù)為6時(shí),抽取到的句子中包含的答案句最多,而主題數(shù)再增多之后,結(jié)果又逐漸變差.這也說明采用多主題分析散文閱讀材料,可以挖掘更多的語義信息,也有助于觀點(diǎn)類問題的答案句抽取.
為了驗(yàn)證本文提出方法的性能,選取下面5種方法與其進(jìn)行比較.
1) How-net[12]:利用How-net,計(jì)算閱讀材料中每個(gè)句子中的每個(gè)詞與問題句中的每個(gè)詞在How-net上的語義距離,加和之后取平均值作為這句話與問題句的相似度;
2) Word2Vec:利用Word2Vec,計(jì)算閱讀材料中的句子與問題觀點(diǎn)的相似度;
3) LDA:利用LDA,計(jì)算閱讀材料中的句子與問題觀點(diǎn)的主題分布相似度;
4) Word2Vec+SVM:在2)的基礎(chǔ)上,再使用SVM分類器選擇觀點(diǎn)句;
5) LDA+Word2Vec:使用LDA方法,選取閱讀材料中與問題中觀點(diǎn)句主題分布一致的句子,在此基礎(chǔ)上,利用Word2Vec計(jì)算與問題觀點(diǎn)的相似度.
基于How-net詞語間的語義相似度計(jì)算式為
PrimSim(p1,p2)=η/(d+η),
其中:p1i代表詞W1在How-net上的一個(gè)義原,詞W1有多個(gè)義原;d是義原p1和p2在義原層次體系中的路徑長(zhǎng)度,是一個(gè)正整數(shù);η是一個(gè)可調(diào)節(jié)參數(shù).
基于How-net的句子相似度計(jì)算式為
其中:n1,n2分別為句子S1,S2中詞的個(gè)數(shù),W1i,W2j分別為句子S1,S2中的一個(gè)詞.
上述SVM分類器的參數(shù)采用默認(rèn)設(shè)置,如表3所示.
表3 SVM 參數(shù)
為了驗(yàn)證本文方法的性能,利用第2節(jié)答案句抽取流程,對(duì)21篇文章進(jìn)行答案句抽取.ε=0.5,抽取句子條數(shù)α=3和α=5以及答案句實(shí)際條數(shù)為λ.8種方法在21篇文章上準(zhǔn)確率的平均結(jié)果如表4所示.
表4 8種方法在觀點(diǎn)類問題上的HumSent準(zhǔn)確率
由表4可以看出:
1) 詞袋BOW[13]模型、規(guī)則Rules[14]方法和How-net得到的準(zhǔn)確率都較低,主要原因是它們只能找出重復(fù)詞較多的那些答案句.
2) Word2Vec在訓(xùn)練時(shí),由于有大規(guī)模語料作為基礎(chǔ),總體準(zhǔn)確率比How-net高出10%左右,比僅利用主題分布相似度計(jì)算的LDA方法高出3%左右.
3) 對(duì)于Word2Vec+SVM,雖然SVM方法可以對(duì)部分非觀點(diǎn)句進(jìn)行排除,但由于答案最后是根據(jù)排序后再抽取,與Word2Vec相比總體準(zhǔn)確率的提升不明顯.
4) 對(duì)于LDA+Word2Vec,由于在問題主題分布分析后,再使用詞嵌入計(jì)算方式,抽取的準(zhǔn)確率明顯高于僅僅使用How-net、Word2Vec和LDA的方法.說明使用主題分析的方法能有效將答案句排在前面,而且總體準(zhǔn)確率比沒有使用LDA的3種方法How-net、Word2Vec、Word2Vec+SVM至少高出6%左右.
5) LDA+Word2Vec+SVM整體結(jié)果優(yōu)于How-net、Word2Vec、Word2Vec+SVM和LDA+Word2Vec,說明將三者結(jié)合對(duì)于解決高考散文的觀點(diǎn)類問題更有效.
針對(duì)閱讀理解觀點(diǎn)類題目,本文將LDA主題模型應(yīng)用于問題答案候選句抽取中.利用觀點(diǎn)類題目特點(diǎn),對(duì)問題中的觀點(diǎn)句進(jìn)行了語義角色分析,減少了僅使用詞向量進(jìn)行句子相似度計(jì)算時(shí)那些常用詞語帶來的干擾,通過標(biāo)注一批散文觀點(diǎn)句的語料,起到加強(qiáng)篩選散文中觀點(diǎn)句的作用.最后通過實(shí)驗(yàn)證明,本文利用多種方法結(jié)合后可以提升獲取答案句的性能.
通過對(duì)該方法無法識(shí)別部分結(jié)果的分析,發(fā)現(xiàn)兩類情況:一類是對(duì)文章的高度概括,答案句與問題涉及到了深度推理;另一類是現(xiàn)有的詞嵌入向量表示計(jì)算的方式不能很好地刻畫閱讀材料與問題的相關(guān)性.下一步將開展相關(guān)性分析以及閱讀材料與問題的因果分析來解決這些問題.
[1] VOORHEES E M, TICE D M. Building a question answering test collection[C]//International ACM SIGIR Conference on Research and Development in Information Retrieval. Athens,2000:200-207.
[2] 張志昌, 張宇, 劉挺,等. 開放域問答技術(shù)研究進(jìn)展[J]. 電子學(xué)報(bào), 2009, 37(5):1058-1069.
[3] RICHARDSON M, BURGES C J C, RENSHAW E. MCtest: a challenge dataset for the open-domain machine comprehension of text[C]//Proceedings of the 2013 Conference on Empirical Methods in Natural Language Processing.Seattle,2013:193-203.
[4] WESTON J, BORDES A, CHOPRA S, et al. Towards AI-complete question answering: a set of prerequisite toy tasks[J]. Computer science, 2015,16(1):103-129.
[5] HIRSCHMAN L, LIGHT M, BRECK E, et al. Deep read: a reading comprehension system[C]// Meeting of the Association for Computational Linguistics. Stroudsburg,1999:325-332.
[6] 張志昌, 張宇, 劉挺,等.基于話題和修辭識(shí)別的閱讀理解why型問題回答[J]. 計(jì)算機(jī)研究與發(fā)展, 2011, 48(2):216-223.
[7] 朱艷輝, 張永平, 杜銳,等. 基于LDA與評(píng)價(jià)對(duì)象的微博觀點(diǎn)摘要[J]. 鄭州大學(xué)學(xué)報(bào)(理學(xué)版), 2017, 49(1):45-49.
[8] 郭藍(lán)天, 李揚(yáng), 慕德俊,等. 一種基于LDA主題模型的話題發(fā)現(xiàn)方法[J]. 西北工業(yè)大學(xué)學(xué)報(bào), 2016, 34(4):698-702.
[9] 陳攀, 楊浩, 呂品,等. 基于LDA模型的文本相似度研究[J]. 計(jì)算機(jī)技術(shù)與發(fā)展, 2016, 26(4):82-85.
[10] PALMER M, GILDEA D, KINGSBURY P. The proposition bank: an annotated corpus of semantic roles[J]. Computational linguistics, 2005, 31(1):71-106.
[11] 丁晟春, 孟美任, 李霄,等. 面向中文微博的觀點(diǎn)句識(shí)別研究[J]. 情報(bào)學(xué)報(bào), 2014, 33(2):175-182.
[12] 閆紅, 李付學(xué), 周云. 基于HowNet句子相似度的計(jì)算[J]. 計(jì)算機(jī)技術(shù)與發(fā)展, 2015, 25(11):53-57.
[13] HIRSCHMAN L, LIGHT M, BRECK E, et al. Deep read: a reading comprehension system[C]// Meeting of the Association for Computational Linguistics. Stroudsburg,1999:325-332.
[14] RILOFF E, THELEN M. A rule-based question answering system for reading comprehension tests[C] //Association for Computational Linguistics.Washington,2000:13-19.