楊正祥 劉 杰* 袁克柔 周建設(shè)
1(首都師范大學(xué)信息工程學(xué)院 北京 100048)2(首都師范大學(xué)成像技術(shù)高精尖創(chuàng)新中心 北京 100048)
作文寫作可以考察學(xué)生的邏輯思維與語言運用的能力和水平,是漢語考試中必考科目。國內(nèi)每年學(xué)生寫作的作文數(shù)目十分巨大,人工批改的成本極高。中文作文的自動評測研究逐漸興起,對于提高作文評測效率、控制評分誤差具有十分重要的意義。
由于中文語言邏輯的復(fù)雜程度高,現(xiàn)有的研究對作文評測大多從詞匯使用[1]、語法表達、作文長度、關(guān)聯(lián)詞使用、修辭手法的運用[2]、文章主題一致性等角度而進行評測,并未涉及作文句間邏輯合理性的評測。而且,在作文評測中句間邏輯合理性同樣是評價語言運用能力的一項重要指標。本文認為文本句間邏輯合理表現(xiàn)在句子組織順序合理,這樣的文本具有很好的可讀性。因此,本文考慮使用句子自動排序的方法,通過判定句子集合的自動排序是否與人工排序一致,驗證句間邏輯是否合理。
本文以段落為基礎(chǔ),研究中文作文段落中句間邏輯合理性的等級判別模型。語篇連貫性的研究可以從關(guān)聯(lián)詞及語法信息的方面進行分析判斷[3],另外根據(jù)句子組織順序合理性也可以有效判斷段落邏輯合理性。
句子排序的研究出現(xiàn)在文本自動摘要研究領(lǐng)域,其他領(lǐng)域并無相關(guān)研究。這是因為人工寫作的摘要結(jié)構(gòu)單一且內(nèi)容精煉,涉及的詞匯多為某領(lǐng)域內(nèi)的專業(yè)詞匯。文本自動摘要領(lǐng)域內(nèi)的句子排序任務(wù),主要是將人工已寫好的、打亂順序的文檔摘要句集或機器選擇的摘要候選句集組織為合理并且可讀的文摘[4]。無論是單文檔還是多文檔自動摘要,都不可避免地要面臨以下三個問題:文檔冗余信息的識別與處理,重要信息的辨認,生成文摘的連貫性[5-9]。其中,文摘的連貫性與本文所要研究的段落內(nèi)部句子之間的連貫性是非常有關(guān)聯(lián)的,因此本文借鑒文本自動摘要中關(guān)于連貫性的處理方法,將其遷移應(yīng)用到中小學(xué)作文的段落句間連貫性的研究上。
現(xiàn)有的研究大致可分為以下幾類:① 利用句中時間信息確定句子順序。以句子在語料中出現(xiàn)的時間為依據(jù)進行排序,例如新聞?wù)Z料中,抽取句子內(nèi)部的時間信息,再輔助排序算法對句子進行排序[10-11]。② 從大型的語料中挖掘內(nèi)部句子的自然順序。該方法在語料詞匯的基礎(chǔ)上,計算相鄰句子間的鄰近度,估計句子構(gòu)成前后句對的條件概率,得到排序結(jié)果[12-14]。③ 從文檔集合中句間的蘊含關(guān)系確定邏輯關(guān)系。該方法從句子內(nèi)部實體在句間的轉(zhuǎn)移、事件標簽的延續(xù)狀態(tài)、主題轉(zhuǎn)移等方面挖掘句間所蘊含的邏輯關(guān)系[14]。文獻[16]采用注意力機制的方法捕捉句子間的語義邏輯關(guān)系。
利用句子所包含的順序信息、句間的繼承關(guān)系、句子主題等方法,局限性較大,且對時間詞以及隱含的時間的識別、主題識別、顯示及隱式關(guān)聯(lián)詞挖掘等成為需要克服的技術(shù)難題。
考慮到現(xiàn)有語料數(shù)量巨大,人工標記不足,本文擬采用非監(jiān)督方法,在不依賴時間、事件等標簽,保證方法通用的前提下,挖掘段落內(nèi)部句間的邏輯關(guān)系,獲得較優(yōu)的通用性。該方法在現(xiàn)有條件熵計算相鄰句子間關(guān)系的基礎(chǔ)上,提出詞向量以及哈工大同義詞詞林(cilin)與其結(jié)合的方法,共同計算句子的鄰近度;在排序算法上,則選取馬爾科夫隨機游走模型[17],完成中小學(xué)作文段落內(nèi)部的句子排序任務(wù),并通過ROUGE-L[18]對排序結(jié)果打分,從而實現(xiàn)對段落邏輯合理性的等級評測,構(gòu)建段落邏輯合理性等級評測模型(Logic Rationality Rating of Paragraph Model, RPM)。
中文作文句間合理性評測模型以條件熵為基礎(chǔ)來計算句對關(guān)聯(lián)程度,融合word2vec以及哈工大同義詞詞林,從語義相似的角度計算句子的鄰近度,再依據(jù)馬爾科夫隨機游走模型,完成中小學(xué)作文的句子排序。為了評價排序結(jié)果與真實排序是否一致,選擇使用ROUGE-L作為評價指標,模型排序結(jié)果與待評語料的真實排序順序比較,若評價指標值大于等于0.6,則認為模型排序結(jié)果較接近語料的真實排序,排序是一致且可接受的,否則排序結(jié)果不可接受。通過在測試集上統(tǒng)計經(jīng)模型得到的可接受排序比例,驗證文中提出的句子排序方法是否能與真實排序一致,從而輔助評測作文句間邏輯是否合理。具體模型如圖2 所示。
圖1 段落邏輯合理性等級評測模型
信息熵描述信源的不確定度,信息越有序熵越低,而信息越混亂熵較高,包含的不確定信息更多。從句子排序的角度來說,兩個句子之間的連接越緊密,關(guān)聯(lián)程度越強,而熵值就越小,依此為依據(jù),依靠條件熵衡量不同句子間的連貫性強度。在本文中,條件熵作為評價兩個變量,即兩個句子之間信息關(guān)聯(lián)程度的評價基礎(chǔ),其計算公式如下:
(1)
式中:X、Y是兩個變量的集合,xi∈X,yj∈Y,p(xiyj)是xi、yj共同出現(xiàn)的概率,p(yj|xi)是條件概率,表示在xi出現(xiàn)的情況下,yj出現(xiàn)的概率。
在句子排序的研究中,句子作為單獨的語義單元,出現(xiàn)相同表達的可能性幾乎為零,詞作為構(gòu)成句子語義的最小單元,可重復(fù)出現(xiàn)在不同的句子中。因此,本文選擇以句對間的單詞搭配信息,來計算句間連貫性,對應(yīng)的計算公式如下:
(2)
式中:Sm與Sm-1為相鄰的兩句話,wi為Sm-1中出現(xiàn)的詞,wj為Sm中出現(xiàn)的詞。考慮到語料詞性中名詞、動詞、形容詞在中文中表達意義比較豐富,因此在研究過程中,同樣僅考慮了以上三種詞性。p(wiwj)以及p(wj|wi)均可從語料中統(tǒng)計得出,計算公式如下:
(3)
(4)
式中:wi為前導(dǎo)句中出現(xiàn)的單詞,wx為其后面句子中出現(xiàn)的單詞,frequency(wxwy)計算兩個單詞共同出現(xiàn)的頻次,frequency(wywi)計算wi與其他任意詞搭配的頻次。
由于統(tǒng)計語料中句對之間的詞語搭配,參數(shù)空間大,且容易出現(xiàn)數(shù)據(jù)稀疏的問題,本文將借助語義詞典,如詞向量、《哈工大信息檢索研究室同義詞詞林擴展版》,在語義上對詞語進行劃分與聚類,以降低不良影響[19]。
Google在2013年開源了一款用于詞向量計算的工具word2vec[20], 該工具能夠在上億的數(shù)據(jù)集上進行高效訓(xùn)練,并且得到詞向量可以度量詞與詞的相似度。本文根據(jù)十萬篇不同類型的中小學(xué)作文語料,得到詞向量字典,并將其按照相似程度聚類,每類下的單詞可以認為其語義是相似的。
梅家駒等編輯完成的《同義詞詞林》為創(chuàng)作和翻譯工作提供了較多的同義詞語。《同義詞詞林》著作時間為1983年,較為久遠,內(nèi)容對當今所處的時代差距較遠,因此《哈工大信息檢索研究室同義詞詞林擴展版》應(yīng)運而生,其中包含了更加豐富和符合當代背景的語義信息。但是能夠共享的僅僅是其中的詞典文件,其完整版并沒有共享。詞典內(nèi)容的缺失必然會導(dǎo)致作文中未出現(xiàn)在詞林中的不相干詞匯劃分為同一類別。因此,本文在同義詞林(cilin)的基礎(chǔ)上,加入word2vec對詞典文件缺失的詞匯進行近義詞、同義詞自動聚類,以降低因cilin內(nèi)容缺失而帶來的不良影響。
在確定句間的鄰近關(guān)系后,本文在眾多排序算法中,選擇馬爾科夫隨機游走模型(Markov Random Walk)對句子進行最終排序。隨機游走(Random Walk)矩陣對應(yīng)一個遍歷的馬爾科夫鏈,任意兩個狀態(tài)之間通過不斷轉(zhuǎn)移可以互相到達。如圖2所示,每個狀態(tài)節(jié)點之間可以以一定的概率p連接轉(zhuǎn)移。
圖2 馬爾科夫隨機游走模型
排序模型定義了圖G=(V,E),V是頂點集,即待排序句子集合,E是邊集,即待排序句子集合中兩個句子的鄰近度,其值即為通過條件熵公式計算得到的句子vi→vj的概率。m個待排序句子可得到游走矩陣模型M=Mi,j|m×m,其中:
(5)
基于矩陣模型M,某個句子在排序中的分值可通過與其他句子得到,其計算公式如下:
(6)
圖G=(V,E) 按照以上計算直至收斂,選取其中分值最高的句子優(yōu)先排序,將剩余句子重新組成新圖G′ 重新執(zhí)行操作,直至待排序句子V為空。句子的排序順序即為最終的排序結(jié)果。
因為本文所使用的語料數(shù)據(jù)量較大,人工評價模型不適合評估排序結(jié)果的合理性。因此,考慮自動的句間合理性評測方法,由于自動文摘的連貫性與作文段落句間連貫性評估標準非常相似,在自動文摘中使用ROUGE系統(tǒng)對自動生成的摘要與參考摘要進行比較計算得到相應(yīng)分值,通過衡量二者相似度來分析文摘的連貫性。在本文中考慮模型排序結(jié)果與真實排序結(jié)果的相似度來分析段落句間的連貫性,所以采用ROUGE系統(tǒng)進行句間邏輯合理性評估。ROUGE系統(tǒng)中的ROUGE-L從兩個序列的最長公共子串的角度考慮,進行相似度的打分。計算公式如下:
LSC=lsc(stand_order,sorted_order)
(7)
(8)
(9)
(10)
(11)
式中:stand_order是段落中句子集合真實的排序結(jié)果,sorted_order是排序模型生成的結(jié)果,LSC為兩個排序的最長公共子串的長度,R、P分別指的是召回率和準確率,標準排序和模型排序結(jié)果的長度是一致的,公式經(jīng)過化簡,最終ROUGE-L的評分由公共子串在序列長度中的比例決定。本文通過實驗將閾值設(shè)置為0.6,真實排序序列同模型排序序列比較,若評價分數(shù)大于或等于閾值,則兩者排序結(jié)果是相似的,將模型排序的排序結(jié)果是可接受的,否則不接受模型排序。
本文從互聯(lián)網(wǎng)上優(yōu)秀的作文網(wǎng)站中使用爬蟲工具獲取中小學(xué)漢語作文語料16 329篇,其中,訓(xùn)練數(shù)據(jù)11 766篇,測試數(shù)據(jù)為4 563篇。并且將上述所有作文語料作為word2vec的訓(xùn)練語料,獲得最終的詞向量字典,共計79 770個詞。
本文使用條件熵預(yù)測句子排序結(jié)果。由于句中語義信息缺失,本文在此基礎(chǔ)上,提出的應(yīng)用word2vec,從數(shù)據(jù)集中訓(xùn)練得到的詞向量字典,將所有單詞聚類為500類與1 500類效果較優(yōu)。此外,考慮到單詞自動聚類不如人工聚類準確,本文考慮并加入了《哈工大信息檢索研究室同義詞詞林擴展版》涉及的11 769類同義詞,融合基礎(chǔ)模型條件熵,通過馬爾科夫隨機游走模型預(yù)測句子排序。實驗結(jié)果如圖3 所示。
圖3 ROUGE-L評測結(jié)果
由實驗結(jié)果可知,針對句子數(shù)量相同的段落:采用原始詞語的字典編號取得的效果很差;詞向量能夠優(yōu)化條件熵的排序結(jié)果,且單詞分類越多,各個類別下單詞的語義相似,模型排序與原始排序通過ROUGE評分,可接受部分越多,最高能達89%左右,且實驗中無論段落內(nèi)部句子的數(shù)量,通過評價,可接受比例均在50%以上;cilin的使用能夠在一定程度上優(yōu)化排序結(jié)果,雖然效果優(yōu)于采用聚類為500類的詞向量模型,但遠遠不如將單詞聚為1 500類的模型。然而,隨著段落內(nèi)句子數(shù)量的增多,模型越難以對段落的邏輯做出合理排序。
在上述實驗中,cilin與word2vec聚類均能提升條件熵的排序效果,且word2vec聚類1 500類之后取得了最優(yōu)的效果,遠遠高于應(yīng)用cilin的模型。本部分將cilin與word2vec聚類1 500類的方法融合,在此基礎(chǔ)上加入條件熵,通過馬爾科夫隨機游走模型預(yù)測句子排序。結(jié)果如圖4所示。
圖4 ROUGE-L評測結(jié)果
由實驗結(jié)果可知,cilin與word2vec聚類相結(jié)合的方式與單獨cilin模型排序的效果相比,總體上稍有提升。但是仍不及單獨用word2vec聚類1 500類的模型排序效果。分析其具體原因,word2vec用高維特征表示單詞語義,詞向量不僅能夠包含單詞的語義,還包含更多諸如語法結(jié)構(gòu)等方面的信息,對其表征的詞語進行聚類,相比cilin中詞語僅依靠相近的語義聚類在一起,前者能從多角度多維度考慮詞語的類別,更為合理。而兩者融合,cilin對w2v_1500造成了不良影響,由ROUGE評分后,排序結(jié)果的可接受比例出現(xiàn)了明顯下降;w2v_1500則一定程度上彌補了cilin不完整的缺陷,排序結(jié)果可接受比例稍有提高。
從實驗結(jié)果可知,隨著段落長度的增加,模型排序結(jié)果經(jīng)ROUGE系統(tǒng)評分,可接受的排序在所有排序中的比例越來越低,這主要是由模型算法自身缺陷導(dǎo)致的。RPM模型在對句子數(shù)量為2或3的段落排序,可接受的排序結(jié)果占的比例較高,取得了不錯的效果,但是即使假設(shè)2句話的排序可接受占比達到0.9,隨著句子數(shù)量越來越多, 在段落內(nèi)句子數(shù)量為n的情況下,可接受的排序結(jié)果占比最高僅能達到0.9n,呈指數(shù)級別下降。
即使算法能夠具有一定的通用性,在句子數(shù)量較少的段落情況下,RPM模型排序結(jié)果取得了不錯的效果,但是隨著段落內(nèi)部句子數(shù)量的增多,排序結(jié)果的可接受比例指數(shù)下降,在實際評測中存在缺陷,因此本節(jié)對以上提出的條件熵模型進行改進。
經(jīng)實驗分析可知,段落內(nèi)句子數(shù)量為2或3的情況下,RPM模型排序的結(jié)果比較令人滿意。因此,本節(jié)擬通過對句子數(shù)量較多的段落首先進行拆分分塊,以保證RPM模型僅處理句子數(shù)量為2或3的句子塊。若段落內(nèi)句子數(shù)量較多,段落可以被認為是包含很多葉子(段落內(nèi)的句子)的樹,段落整體作文根節(jié)點,對段落的每次劃分,相當于對子節(jié)點的生成。在保證RPM僅處理句子數(shù)量為2或3的句子塊的前提下,每個節(jié)點下的子節(jié)點數(shù)量應(yīng)在2~3范圍內(nèi)。但是,本文實驗僅考慮了句子數(shù)量為2~7的段落,可以通過簡單的拆分表,對段落進行劃分。表1為拆分表,圖5展示了拆分過程。
表1 段落拆分表
圖5 拆分排序過程
圖5 展示了句子數(shù)量為5的段落的拆分排序過程。首先對段落內(nèi)句子按照拆分表進行分塊劃分,每種不同的拆分情況內(nèi),每塊段落片段代表不同的類別,將相同塊內(nèi)的句子當作一個整體,從而能夠應(yīng)用RPM模型進行評分,完成塊之間的排序。之后比較每種拆分的取得的ROUGE分值,取最高得分的塊排序結(jié)果作為第一次的排序。然后每塊內(nèi)部再進行拆分或排序,同樣取分值最高的排序結(jié)果作為當前排序結(jié)果。如此層次拆分,最終得到段落句子的最終排序。
分析上一節(jié)中的實驗結(jié)果,RPM融入經(jīng)詞向量聚類1 500類的語義相似詞,在段落內(nèi)句子數(shù)量為2~3的情況下,取得了不錯的效果。本次實驗以此為基礎(chǔ),建立OPT_RPM評測模型,驗證優(yōu)化策略的可行性。
由圖6可以看出,優(yōu)化策略能夠減緩RPM隨著段落內(nèi)句子數(shù)量增多而存在的可接受排序結(jié)果占比指數(shù)下降的情況,對長度為4~5的段落句子排序結(jié)果的可接受比例有了較大的提高,從而驗證本文提出的帶優(yōu)化策略的RPM,即OPT_RPM是可行的。
圖6 OPT_RPM的ROUGE-L評測結(jié)果
本文擴展可接受與不可接受兩種評測結(jié)果,擬將段落的邏輯劃分為4個等級:優(yōu)秀、良好、及格以及不及格。為了能夠在實踐中應(yīng)用,本節(jié)通過一系列的統(tǒng)計分析建立段落邏輯等級與ROUGE分值的對應(yīng)關(guān)系。
本文選取1 000條段落,每個等級的段落均為250條,其評判等級均有專家參與,保證語料的準確性。使用OPT_RPM對句集排序得到機器排序結(jié)果,ROUGE-L對其進行評分。通過分析每個邏輯等級內(nèi)ROUGE分數(shù)的范圍,從而確定模型在實際應(yīng)用中所使用的閾值。
OPT_RPM對每條段落進行句子排序,而ROUGE-L對排序結(jié)果進行了評分,本文將評分與人工真實評價等級對應(yīng)起來,除去離散點,取分布最集中的分值作為ROUGE-L對段落邏輯等級劃分的邊界。其中,相鄰等級之間存在交叉,本文考慮到劃分邊界模糊,為了激勵使用者,將交叉沖突部分取等級較高的一方,最終得到表2 關(guān)于段落邏輯等級對應(yīng)的ROUGE-L分值區(qū)域。由該表可知,1 000條段落通過ROUGE-L評分,判斷分值散落在的區(qū)間對應(yīng)得到段落評測等級,各個等級的評測準確率均在72%以上。
表2 段落邏輯等級與ROUGE-L評分對應(yīng)關(guān)系
本文從句子排序角度提出評測句間邏輯合理性,對其進行定量分析。通過判定句子集合的排序與人工排序的相近程度,驗證排序模型的有效性。在研究的排序方法中,應(yīng)用word2vec、cilin以及兩者相結(jié)合的條件熵句子排序方法均優(yōu)于僅僅使用條件熵進行排序的方法。其中,詞向量詞典用高維特征表示單詞語義,不僅能夠包含單詞的語義,還包含更多諸如語法結(jié)構(gòu)等方面的信息,對其表征的詞語進行聚類,相比cilin中詞語僅依靠相近的語義聚類在一起,前者能從多角度多維度考慮詞語的類別,在聚類為1 500類時,表現(xiàn)最佳;另外,本文提出了帶優(yōu)化的句間邏輯合理性評測模型OPT_RPM,經(jīng)過實驗證明,OPT_RPM對相同的實驗數(shù)據(jù)進行了排序,由同一評測標準評測,取得了最優(yōu)的效果;本文還對OPT_RPM在實際中的使用做了探究工作,通過統(tǒng)計分析了OPT_RPM對段落排序結(jié)果的ROUGE-L分值與由專家評判的段落邏輯合理性等級的對應(yīng)關(guān)系,確定了ROUGE-L與邏輯合理性等級判定的分類邊界,取得了不錯的效果,為輔助中文作文智能評測提供了新思路。在未來的研究工作中,將計劃進一步優(yōu)化條件熵算法以及馬爾科夫游走模型,從模型結(jié)構(gòu)上改進提高算法評測效果,探索更多評估作文段落邏輯合理性的方法,努力推進中文作文智能評測研究的發(fā)展。