穆婉青,廖 健,王素格,2
(1.山西大學(xué) 計算機與信息技術(shù)學(xué)院,山西 太原 030006;2.山西大學(xué) 計算智能與中文信息處理教育部重點實驗室,山西 太原 030006)
修辭格[1]是通過修飾、調(diào)整語句,運用特定的表達形式以提高語言表達作用的方式和方法。在文學(xué)類文本中恰當?shù)厥褂眯揶o,可使語言表達更加準確、生動,富有感染力。在眾多修辭格中,排比作為一種使用頻率較高的修辭格,受到了語言學(xué)家的廣泛關(guān)注。典型的排比句[2-3]一般由三至五項組成,排比項[4]之間內(nèi)容相關(guān)[5]、結(jié)構(gòu)相似,詞匯之間相互呼應(yīng),增強了文章的語篇連貫性,使行文豐滿有力[6],廣泛地應(yīng)用在政論、藝術(shù)[7]等語體中,在近十年的高考語文鑒賞題中也多有考察,以2016年北京市高考語文卷第24題為例:
問題:文章第四段運用了多種手法,表達了作者對老腔的感受。請結(jié)合具體語句加以賞析。
部分參考答案:排比?!斑@是……”、“抑或是……”、“也像是……”等句子使用了排比的手法,多角度表現(xiàn)老腔不同的腔調(diào),充分表現(xiàn)老腔藝術(shù)魅力和我對老腔的沉迷。
若能自動識別文學(xué)類文本中的排比句,不僅可求解閱讀理解部分的鑒賞類問題,還可以進一步挖掘文本中的隱式情感,為計算機對文本的思想感情、語言風格等方面的自動賞析奠定基礎(chǔ)。
排比句具有特征突出、節(jié)奏感強[5]、增強文章的表達效果的作用,引起不少語言學(xué)家的關(guān)注。高婉瑜[8]對對偶和排比兩種辭格進行了詳細的對比分析,認為二者僅在語法結(jié)構(gòu)和語義上具有相似點,而在平仄相對、字面重復(fù)度等特征上不具有一致性。葉定國等人[9]對中文的對偶、排比辭格與英語的Antithesis、Parallelism辭格進行了分析對比,發(fā)現(xiàn)中文和英文的辭格并非完全對應(yīng),Antithesis和Parallelism有包孕關(guān)系,而對偶和排比卻相互獨立,具有不同的語用功能。呂敬華[10]以《大堰河——我的保姆》為例,分析了排比在其中的藝術(shù)特色,認為使用排比使文章更有纏綿的韻味。何佳利[11]以《蝸居》的經(jīng)典臺詞為例,研究了排比句在影視作品中的作用,認為使用排比增強了語言氣勢,更好地表達了人物的思想感情。皮晨曦[7]研究了排比辭格在政論和藝術(shù)兩種語體中的差異,認為排比在政論語體中常用來舉例說明,而在藝術(shù)語體中常用來抒發(fā)情感。張璐璐[12]分析了排比句在微博中的使用情況,認為使用排比使語言的表達更有感染力,并根據(jù)排比項的不同,將排比分為成分排比、分句排比、單句排比。張曉[13]從結(jié)構(gòu)、詞語重復(fù)度、排比項的數(shù)量出發(fā)對排比進行了再分類。上述文獻僅僅從語言學(xué)層面對排比句進行了研究分析,而在自動識別方面的研究較少。梁社會等人[14]對《孟子》《論語》中的排比句進行分析,聯(lián)系排比句的結(jié)構(gòu)、詞語重復(fù)等特點設(shè)計了相應(yīng)的排比句自動識別算法。該算法填補了對古漢語排比句自動識別的空白,但由于其只考慮了排比句結(jié)構(gòu)類似和詞語重復(fù)的表層特點,忽略了語義信息,且對語料本身有較高的依賴性,無法應(yīng)用到現(xiàn)代漢語的語料中。
近年來,文本表示和句子分類方面的研究工作一直開展得如火如荼。相比之前經(jīng)典的布爾模型和向量空間模型等文本表示模型,Word2Vec[15-17]可以利用上下文語義信息對詞語進行分布式表示,基本思想是通過Skip-gram和Continuous Bag of Words(CBOW)模型將每個詞映射成n維特征向量,通過詞向量之間的距離獲取詞語之間的語義相似度,將其應(yīng)用到文本的聚類、分類等自然語言處理領(lǐng)域的研究工作中。卷積神經(jīng)網(wǎng)絡(luò)[18-19](convolutional neural network,CNN)是一種前饋神經(jīng)網(wǎng)絡(luò),由輸入層、卷積層、池化層、全連接層、輸出層組成,由于其良好的自學(xué)習能力和泛化能力,在短文本的表示和句子分類上也取得了一系列進展。Kim等人[20]在預(yù)訓(xùn)練好的詞向量的基礎(chǔ)上,構(gòu)造了一個雙通道的CNN模型解決句子級別的分類問題,并取得了較好的效果。Kalchbrenner等人[21]提出了一種使用動態(tài)pooling方法的dynamic convolutional neural network(DCNN)模型對句子語義進行建模,該模型在一定程度上保留了詞序信息。Hu等人[22]也在CNN的基礎(chǔ)上提出了一種解決句子建模的網(wǎng)絡(luò)結(jié)構(gòu),主要用于解決句子匹配的問題。
本文依據(jù)排比句的定義[2-5],概括了排比句的三個特點:(1)至少由三條相互銜接的排比項組成;(2)各排比項之間具有語義相關(guān)性;(3)各排比項之間具有結(jié)構(gòu)相似性。例如,下面的兩個排比句:
例1:燭光柔,月光靜,電光更靜,正如做事迅速的人,來去無聲。
例2:一粒種子,可以無聲無息地在泥土里腐爛掉,也可以長成參天的大樹;一塊鈾塊,可以平庸無奇地在石頭里沉睡下去,也可以產(chǎn)生驚天動地的力量;一個人,可以碌碌無為地在世上廝混日子,也可以讓生命發(fā)出耀眼的光芒。
為了識別具有上述三個特點的排比句,本文結(jié)合文本的內(nèi)容和結(jié)構(gòu),設(shè)計了基于CNN和結(jié)構(gòu)相似度計算融合的排比識別方法,該方法不僅可以用于識別排比修辭,還可以為其他修辭格的自動識別、衡量文本的相似度、解答鑒賞類等問題提供參考。
對于排比句的自動識別,首先對一個句子進行結(jié)構(gòu)化表示,然后對其是否為排比句進行判斷。根據(jù)排比句中的排比項具有內(nèi)容相關(guān)、結(jié)構(gòu)相似的特點,本文以文本的詞性、詞語作為基本特征,同時考慮文本內(nèi)部的語義相關(guān)性和結(jié)構(gòu)相似性,設(shè)計了基于CNN和結(jié)構(gòu)相似度計算的排比句融合識別方法。設(shè)P1、P2分別為利用CNN模型和結(jié)構(gòu)相似度計算得到的該句子為排比句的概率,PY是由P1和P2共同作用決定的排比句的最終概率,模型的框架如圖1所示。
圖1 融合CNN和結(jié)構(gòu)相似度計算的排比句識別框架圖
圖1中對文本進行分詞等預(yù)處理操作后,以詞語、詞性為特征對文本內(nèi)容進行分布式[23-25]表示,在此基礎(chǔ)上,利用CNN對文本進行分類求得P1,利用LCS算法計算結(jié)構(gòu)相似度求得P2,最終對P1、P2進行加權(quán)求和得到PY?;贑NN排比句識別和基于結(jié)構(gòu)相似度計算排比句識別的詳細介紹見第1.1節(jié)和1.2節(jié)。
(1) 融合詞語信息和詞性信息的句子表示
由于文檔中的句子是非結(jié)構(gòu)化數(shù)據(jù),需要將其轉(zhuǎn)換成計算機可識別的結(jié)構(gòu)化數(shù)據(jù)。Word2Vec是利用詞語的上下文信息映射到K維向量空間上的一種方法,它可使詞語的語義表示信息更加豐富。本文利用Word2Vec對大規(guī)模的數(shù)據(jù)進行訓(xùn)練獲得詞的分布式表示,在此基礎(chǔ)上,加入句子的詞性信息對句子進行表示。
設(shè)一個句子S=(word1,word2,…,wordn),由n個詞構(gòu)成,其中第i個詞wordi的詞性為posi。利用Word2Vec模型對大規(guī)模的散文數(shù)據(jù)進行訓(xùn)練后,wordi可以生成kw維的向量xwi??紤]到排比句具有結(jié)構(gòu)相似的特點,本文視詞性信息為淺層結(jié)構(gòu)信息的刻畫,將詞語信息與詞性信息共同作用對句子進行表示。假設(shè)現(xiàn)有的詞類集為C,對|C|中每一個詞類posi(i=1,2,…,|C|)進行編碼,隨機產(chǎn)生互不相同的維度為kp的向量xpi。對于每個詞語與詞性對
(1)
這里Xi為句子S中
設(shè)句子S表示的向量矩陣為Senkn,融合語義信息和詞序信息的句子S可由n個Xi(i=1,2,…,n)進行拼接,其表示形式見式(2)。
(2)
(2) 基于多個卷積核的CNN的排比句識別
CNN是一種前饋式神經(jīng)網(wǎng)絡(luò),它利用反向傳播算法對網(wǎng)絡(luò)結(jié)構(gòu)進行優(yōu)化,對網(wǎng)絡(luò)中的未知參數(shù)進行估計,常用于處理圖像和時間序列等二維網(wǎng)格結(jié)構(gòu)數(shù)據(jù),容錯能力強,運行速度快,具有較強的自適應(yīng)能力,近期在句子表示和句子分類方面也獲得不錯的結(jié)果。本文利用大小不同的卷積窗口進行卷積操作,對獲取的特征集合利用最大池化方法進行池化,為了防止訓(xùn)練樣本過少造成的過擬合問題,在全連接層部分使用了Dropout技術(shù),即以一定的概率暫時丟棄網(wǎng)絡(luò)中的部分參數(shù),將池化后獲得的向量經(jīng)過全連接層后,連接到Softmax層,最終獲得該句子為排比句的概率。
基于CNN排比句識別算法:
輸入:句子S的表示Senkn;
Step2利用t(1≤t≤n)個卷積核分別對Senkn進行卷積操作,可獲得t個特征集合Fc1,Fc2,…,Fct。
Step5將FW最終連接到Softmax分類器,輸出S為排比句的概率P1;
Step6當P1>Φ1時,則句子S為排比句。
最長公共子序列(longest common subsequence,LCS)[26]算法可計算出兩個或多個序列中最長的公共子序列,該子序列中的元素在原序列中不一定是連續(xù)的,但是前后順序不發(fā)生改變,廣泛地用于計算圖形、文字之間的相似度。本文依據(jù)LCS算法的特性,在句子詞性串的基礎(chǔ)上,利用該算法對句子的結(jié)構(gòu)相似度進行度量。
由于排比句各排比項之間具有結(jié)構(gòu)相似性的特點,本文以逗號和分號作為分隔符對句子進行分句,以連續(xù)的三個分句為一個分句單元,對各分句分詞后生成詞性串。在此基礎(chǔ)上,利用LCS算法計算出兩兩分句之間的最長公共子序列;再利用相似度計算公式計算分句單元內(nèi)的兩兩分句間結(jié)構(gòu)相似度,并對其求平均值。最終將所有分句單元中句子間相似度平均值最高的認為是排比句。
設(shè)一個句子S=(s1,s2,…,st)由t(t>2)個分句組成,第i(i∈{1,…,t})個分句si的詞性串序列為pi,len(pi)為pi的詞性串長度,分句si和分句sj(j∈{1,…,t})的公共詞性串為pij、結(jié)構(gòu)相似度值為ssij,sim(si,sj)為相似度函數(shù)。假設(shè)連續(xù)的三個分句為一個分句單元,則第k(k∈{1,…,t-2})個分句單元SCK內(nèi)為ak,所有分句單元中句子間相似度平均值最大為amax、SCK={sk,sk+1,sk+2}。
基于結(jié)構(gòu)相似度計算的排比句識別算法(SSC):
輸入:句子S中的分句單元SC1,SC2,…,SCt-2;
Step1對每一個單元SCK,執(zhí)行Step1.1-Step1.3
Step1.1計算兩分句si、sj之間共同的詞性串pij=h(si,sj)=lcs(pi,pj);
Step1.2計算分句si、sj結(jié)構(gòu)相似度值[26]
ssij=sim(si,sj)=(2×len(pij))/(len(pi)+len(pj));
Step3當amax>Φ2時,則句子S為排比句。
排比句具有語義相關(guān)性、結(jié)構(gòu)相似性的特點。由于CNN考慮了文本的語義信息,而SSC算法考慮了文本的結(jié)構(gòu)信息,因此,將兩者的結(jié)果進行融合,用于判別一個句子是否為排比句。為了融合結(jié)構(gòu)信息,將第1.2節(jié)中獲得的分句單元中最大平均相似度值amax視作該句子為排比句的概率P2=amax。設(shè)α為權(quán)重,利用1.1節(jié)求得的概率P1,判斷句子S是否為排比句的最終概率為PY=αP1+(1-α)P2,這里的α是依據(jù)排比句的標簽信息確定的最優(yōu)值,當PY>Φ3時,則句子S為排比句。
實驗數(shù)據(jù)來源于高中語文課文、全國歷年語文高考題的散文文本、查字典網(wǎng)(https://www.chazidian.com/)和散文吧網(wǎng)站(https://www.sanwen8.cn/),經(jīng)過人工標注的排比句2 000條,非排比句2 000條,共計4 000條,其中非排比句來源于排比句的上下文。為了訓(xùn)練Word2Vec模型,采用1946—2006年近3.5GB的《人民日報》語料、散文吧網(wǎng)站上獲取的散文71 460篇、全國歷年語文高考題的散文文本184篇。所有的實驗數(shù)據(jù)均經(jīng)過去噪、去重、分詞等預(yù)處理操作。
實驗結(jié)果采用的評價指標為精確率(precision)、召回率(recall)、F1值和正確率(accuracy)。
使用第1.1節(jié)CNN模型對排比句識別時,訓(xùn)練過程中參數(shù)的更新采用隨機梯度下降方法。通過多次實驗,選取性能最優(yōu)參數(shù)如下:kw=200,kp=200,t=3,C1、C2、C3的卷積窗口大小分別為300×3、300×4、300×5,學(xué)習率為0.01,dropout的概率為0.5,Φ1=0.5,Φ2=0.65,Φ3=0.6,α=0.3。
實驗結(jié)果均采用五折交叉驗證,即每次取全部數(shù)據(jù)的80%為訓(xùn)練集,其余20%為測試集,各評價指標均重復(fù)五次實驗取平均值。
實驗1不同權(quán)重α下融合CNN和SSC的排比句識別結(jié)果
為了分析權(quán)重α對第1.3節(jié)提出的融合CNN和SSC方法判別排比句的影響,本實驗選取α∈{0.1,0.2,…,0.8,0.9},進行了九組對比實驗,實驗結(jié)果如圖2所示,其中,橫坐標為權(quán)重α的取值,縱坐標為實驗結(jié)果。
由圖2可看出:隨著α的變化,各評價指標均有所波動,說明內(nèi)容和結(jié)構(gòu)對于排比句識別均有一定的影響。當α值為0.3時,F(xiàn)1值和accuracy取得了最優(yōu)結(jié)果,說明結(jié)構(gòu)相似度(SSC方法)在排比句識別中起著重要的作用。在后續(xù)實驗中均選取α=0.3。
實驗2不同特征、分類方法進行排比句識別比較
為了驗證本文提出方法的有效性,我們設(shè)置了如下對比實驗:
SVM[w]:以wordi為特征的基于SVM分類器的排比句識別;
SVM[pos]:以posi為特征的基于SVM分類器的排比句識別;
SVM[w+pos]:以wordi和posi為特征的基于SVM分類器的排比句識別;
CNN[w]:僅以wordi為輸入特征,利用1.1節(jié)提出的基于CNN的排比句識別方法;
CNN[pos]:僅以posi為輸入特征,利用1.1節(jié)提出的基于CNN的排比句識別方法;
CNN[w+pos]:利用1.1節(jié)提出的基于CNN的排比句識別方法;
圖2 不同權(quán)重α下融合CNN和SSC的排比句識別結(jié)果
SSC[w]:利用1.2節(jié)基于SSC的排比句識別方法,僅以wordi為輸入特征,且令sim(si,sj)為cosine相似度simcos(si,sj),計算內(nèi)容相似度;
SSC [pos]:利用1.2節(jié)基于結(jié)構(gòu)相似度計算的排比句識別方法;
SSC [w+pos]:利用1.2節(jié)基于結(jié)構(gòu)相似度計算的排比句識別方法,以wordi和posi為輸入特征,且令sim(si,sj)=βsimlcs(si,sj)+(1-β)simcos(si,sj),計算內(nèi)容相似度和結(jié)構(gòu)相似度,其中β取最優(yōu)值為0.6。
CNN[w+pos]+ SSC [pos]:利用本文第1.3節(jié)提出的排比句識別方法。
各分類方法的實驗結(jié)果如表1所示。
表1 各類排比句識別方法的實驗結(jié)果比較
由表1可以看出:
(1) 從分類器的角度,在三種不同的特征表示下,三種分類方法識別排比句的結(jié)果分別為SVM[w] (2) 對于CNN算法,在precision、F1和accuracy 三種評價指標下,CNN[pos] (3) 對于SSC算法,在precision、recall、F1和accuracy四種評價指標下,SSC[w] (4) 從綜合詞語與詞性作為特征的角度,SVM[w+pos] (5) 從方法融合的角度,CNN[w+pos]+SSC[pos]在所有方法中識別排比句的效果最好,說明融合后的方法充分地考慮了句子的內(nèi)容相關(guān)性和結(jié)構(gòu)相似信息。 對于引言中例1和例2,CNN[w+pos]、SSC[pos]、CNN[w+pos]+SSC[pos]的概率如表2所示。 表2 方法融合前后的概率值對比 由表2可知,例1中使用SSC[pos] 得到排比句的概率值為0.53,判斷為非排比句。例2中使用CNN[w+pos]得到的概率值為0.34,也判斷為非排比句。然而,兩個例子若使用融合后的方法,其概率值分別為0.63和0.69,均可正確地判斷為排比句。由此,對于排比句來說,有些句子側(cè)重結(jié)構(gòu)上的相似,有些句子側(cè)重語義上的相關(guān),將兩個方法融合是必要的。 實驗3CNN[w+pos]+SSC[pos]在高考鑒賞題中的應(yīng)用實驗 將本文所提的方法應(yīng)用在高考題解答中,選取2017、2016和2007年北京高考題中文學(xué)類閱讀材料進行排比句識別,獲得排比句識別的概率如表3所示。 表3 文學(xué)類文本中排比句識別的概率值 由表3可看出,三個例句的概率值均大于Φ3,說明對排比句識別均正確,由此可知本文提出的方法可以有效地對排比句進行識別,進而為高考閱讀理解部分的鑒賞題解答和文本的自動賞析服務(wù)。 本文針對文學(xué)類文本中的排比句,依據(jù)其內(nèi)容相關(guān)、結(jié)構(gòu)相似的特點,設(shè)計了融合CNN和結(jié)構(gòu)相似度計算的排比句識別方法,并與其他方法做了比較實驗。針對高考題內(nèi)的文學(xué)類閱讀理解的問題,將本文所提方法應(yīng)用到閱讀材料中的排比句識別中,取得了不錯的效果,從而進一步證明了本文所提出的方法和特征選擇的有效性。但本文仍有不足,例如數(shù)據(jù)量較小,沒有在政論、新聞等其他語體上進行對比實驗。今后的工作可以考慮如何更好地將文本的結(jié)構(gòu)相似性信息嵌入到CNN的輸入層中,并將其應(yīng)用到更為廣泛的語體語料之中。 備注:為了便于更多的研究者開展排比句識別方面的研究,我們將本文所用的數(shù)據(jù)共享到山西大學(xué)文本情感分析技術(shù)資源開放與服務(wù)平臺(http://115.24.12.5/)。 [1]張宗正.修辭格位、修辭格變體和修辭格作品——關(guān)于修辭格本質(zhì)即同一性的再思考[J].修辭學(xué)習,2003,(2):24-25. [2]李勝梅.排比的篇章特點[J].南昌大學(xué)學(xué)報(人文社會科學(xué)版),2005,36(5):127-133. [3]陳永敬.排比的構(gòu)成特征及排比項數(shù)限制的心理機制[D].武漢:華中師范大學(xué),2008. [4]夏麗芳.排比的語篇銜接功能[J].牡丹江教育學(xué)院學(xué)報,2008(1):51-52,85. [5]范俊.排比的語用修辭研究[D].重慶:四川外國語大學(xué),2013. [6]聶仁海.排比辭格:語言本質(zhì)的典型體現(xiàn)[J].現(xiàn)代企業(yè)教育,2006(9):160-161. [7]皮晨曦.政論語體與藝術(shù)語體排比差異研究[D].廣州:暨南大學(xué),2011. [8]高婉瑜.談對偶與排比[J].修辭學(xué)習,2008(5):58-60. [9]葉定國.Parallelism與對偶、排比[J].外語與外語教學(xué),1999(2):53-55. [10]呂敬華.排比和反復(fù)的妙用[J].長沙電力學(xué)院學(xué)報(社會科學(xué)版),2000,15(2):96-98. [11]何佳利.《蝸居》比喻和排比辭格探析[J].大眾文藝,2011(4):125-126. [12]張璐璐.淺析微博語言中的排比修辭格[J].青春歲月,2012(24):120-121. [13]張曉.排比的再探討[J].昭烏達蒙族師專學(xué)報(漢文哲學(xué)社會科學(xué)版),2004,25(8):17-18,11. [14]梁社會,陳小荷,劉瀏.先秦漢語排比句自動識別研究:以《孟子》《論語》中的排比句自動識別為例[J].計算機工程與應(yīng)用,2013,49(19):222-226. [15]Mikolov T,Sutskever I,Chen K,et al.Distributed representations of words and phrases and their compositionality[C]// Proceedings of the International Conference on Neural Information Processing Systems.USA:Curran Associates Inc,2013:3111-3119. [16]Mikolov T,Chen K,Corrado G,et al.Efficient estimation of word representations in vector space[J].arXiv preprint arXiv:1301.3781,2014. [17]Le Q V,Mikolov T.Distributed representations of sentences and documents[J].arXiv preprint arXiv:1405.4053,2014. [18]周飛燕,金林鵬,董軍.卷積神經(jīng)網(wǎng)絡(luò)研究綜述[J].計算機學(xué)報,2017,6(40):1-23. [19]李彥冬,郝宗波,雷航.卷積神經(jīng)網(wǎng)絡(luò)研究綜述[J].計算機應(yīng)用,2016,39(09):2508-2515,2565. [20]Kim Y.Convolutional neural networks for sentence classification[J].arXiv preprint arXiv:1408.5882,2014. [21]Kalchbrenner N,Grefenstette E,Blunsom P.A convolutional neural network for modelling sentences[J].arXiv preprint arXiv:1404.2188,2014. [22]Hu B,Lu Z,Li H,et al.Convolutional neural network architectures for matching natural language sentences[C]// Proceedings of Advances in Neural Information Processing Systems.USA:MIT Press,2014:2042-2050. [23]Bengio Y,Schwenk H,Senécal J,et al.Neural probabilistic language models[J].Journal of Machine Learning Research,2003,3(6):1137-1155. [24]Collobert R,Weston J,Bottou L,et al.Natural language processing(almost)from scratch[J].Journal of Machine Learning Research,2011,12(1):2493-2537. [25]Kiros R,Zhu Y,Salakhutdinov R,et al.Skip-thought vectors[C]// Proceedings of International Conference on Neural Information Processing Systems.USA:MIT Press,2015:3294-3302. [26]Lin C Y,Och F J.Automatic evaluation of machine translation quality using longest common subsequence and skip-bigram statistics[C]// Proceedings of the 42nd Annual Meeting on Association for Computational Linguistics,USA:Stroudsburg ,2004. 穆婉青(1993—),碩士研究生,主要研究領(lǐng)域為自然語言處理。E-mail:948611255@qq.com 廖健(1990—),博士研究生,主要研究領(lǐng)域為文本情感分析。E-mail:liaojian_iter@163.com 王素格(1964—),通信作者,博士,教授,主要研究領(lǐng)域為自然語言處理,文本情感分析。E-mail:wsg@sxu.edu.cn3 總結(jié)