趙琳玲,王素格,2,陳 鑫,王 典,張兆濱
(1. 山西大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,山西 太原 030006;2. 山西大學(xué) 計(jì)算智能與中文信息處理教育部重點(diǎn)實(shí)驗(yàn)室,山西 太原 030006)
比喻是用于與其相似的事物、道理打比方的修辭格,使用比喻辭格的句子稱為比喻句。利用比喻對(duì)事物的特征進(jìn)行描述,可以使事物形象、生動(dòng)、具體,給人留下深刻印象。在文學(xué)類作品中,利用比喻可增強(qiáng)語(yǔ)言的表現(xiàn)力,在近年的高考語(yǔ)文散文類鑒賞題中,多有涉及明喻句的考查。以2016年北京市高考語(yǔ)文第24題為例:
原文: 我在這腔調(diào)里沉迷且陷入遐想,這是發(fā)自雄渾的關(guān)中大地深處的聲響,抑或是渭水波浪的濤聲,也像是驟雨拍擊無(wú)邊秋禾的嘯響,亦不知無(wú)時(shí)節(jié)的好雨潤(rùn)澤秦川初春返青麥苗的細(xì)近于無(wú)的柔聲,甚至讓我想到柴煙彌漫的村巷里牛哞馬叫的聲音……
問題: 文章第四段運(yùn)用了多種手法,表達(dá)了作者對(duì)老腔的感受。請(qǐng)結(jié)合具體語(yǔ)句加以賞析。
部分參考答案: 比喻,將老腔的腔調(diào)比喻為驟雨拍擊秋禾的嘯響、雨潤(rùn)麥苗的柔聲等,既寫出了……,又寫出了……。
如果能自動(dòng)識(shí)別明喻句并抽取句子中的本體和喻體,不僅可以解答鑒賞類問題,還可以進(jìn)一步了解作者所表達(dá)的思想感情。
比喻句中相關(guān)要素定義[1]如下:
本體: 被描寫和說(shuō)明的事物,即被比方的事物。
喻詞/連接詞: 連接本體和喻體的詞語(yǔ),在明喻中稱為 “喻詞”,例如,“像、如、好像”等,暗喻中為“連接詞”,總稱為“觸發(fā)詞”。
喻體: 與本體相對(duì),即用來(lái)打比方的事物。
喻解/喻底: 使本體和喻體構(gòu)成比喻關(guān)系的兩者的相似點(diǎn)。
現(xiàn)代修辭學(xué)將比喻分為明喻、暗喻、借喻,將暗喻和借喻視為隱喻[2]。明喻就是直接打比方,有明顯的喻詞指引本體和喻體之間的關(guān)系[3]。通過研究明喻[4],分析和闡釋明喻現(xiàn)象,了解明喻建立的意義和推理機(jī)制,探究明喻背后的認(rèn)知過程,可以了解人的認(rèn)知手段與過程。雖然與隱喻相比明喻研究相對(duì)容易,但由于數(shù)據(jù)的缺乏和相關(guān)研究較少,給研究也帶來(lái)了挑戰(zhàn)。
現(xiàn)代漢語(yǔ)明喻句的典型句式為“A像B”,此句中本體是A、喻體為B、喻詞是像。針對(duì)此類明喻句,本文主要研究基于詞性特征的明喻識(shí)別及要素抽取方法。由于雙向的長(zhǎng)短期記憶(BiLSTM)[5]能夠充分利用上下文信息,而條件隨機(jī)場(chǎng)(CRF)模型可以用來(lái)輸出標(biāo)簽之間的前后依賴關(guān)系,因此,將詞性特征融合到BiLSTM與CRF連接對(duì)序列化數(shù)據(jù)進(jìn)行建模(BiLSTM-CRF)。在Chinese-Simile-Recognition[6]數(shù)據(jù)集上進(jìn)行驗(yàn)證,實(shí)驗(yàn)結(jié)果表明,本文方法優(yōu)于Liu等人[6]提出的單任務(wù)明喻識(shí)別和要素抽取方法。
目前針對(duì)比喻句的已有研究主要是利用句法結(jié)構(gòu)和深度學(xué)習(xí)的方法。
基于句法模式的分析方法是利用句子的句法結(jié)構(gòu)(主謂賓結(jié)構(gòu))和詞匯間的依存關(guān)系(并列,從屬等)進(jìn)行建模的方法。Niculae等人[7]提出了一種使用句法模式進(jìn)行比較識(shí)別的方法,用于比喻句中的本體和喻體的抽取。該方法在處理明喻句中的短句時(shí)表現(xiàn)比較好,對(duì)于復(fù)雜或長(zhǎng)句有時(shí)會(huì)導(dǎo)致本體和喻體抽取的不完整。Niculae等人[8]提出了在比較句中比喻的計(jì)算研究,探究了明喻的語(yǔ)言模式,發(fā)現(xiàn)領(lǐng)域知識(shí)是識(shí)別明喻的主要因素。
基于深度學(xué)習(xí)的比喻句識(shí)別,穆婉青[1]采用詞和詞性作為特征,提出了基于CNN_C的比喻句識(shí)別,正確率已達(dá)到94.7%,然而,并沒有對(duì)要素進(jìn)行抽取。對(duì)于要素抽取,研究者們利用多任務(wù)學(xué)習(xí)方法,通過在相關(guān)任務(wù)間共享表示信息,提升模型在原始任務(wù)上的泛化性能。Liu等人[6]提出了神經(jīng)網(wǎng)絡(luò)框架聯(lián)合優(yōu)化的三個(gè)任務(wù)。將明喻要素抽取看成序列標(biāo)記問題,使用不同的前綴標(biāo)簽區(qū)分本體和喻體要素。CRF[9]能有效學(xué)習(xí)輸出標(biāo)簽之間的前后依賴關(guān)系,近些年在自然語(yǔ)言處理領(lǐng)域中得到廣泛應(yīng)用。Huang等人[10]提出了一系列基于長(zhǎng)短期記憶(LSTM)的序列標(biāo)注模型,首次將BiLSTM-CRF模型應(yīng)用于NLP基準(zhǔn)序列標(biāo)記數(shù)據(jù)集,并證明 BiLSTM 模型可以有效地利用過去和未來(lái)的輸入特征。對(duì)于CRF層,它還可以使用句子級(jí)的標(biāo)記信息,使方法具有較強(qiáng)的魯棒性,而且對(duì)嵌入詞的依賴性也較小。
本文將明喻識(shí)別和要素抽取作為序列標(biāo)注任務(wù)。嵌入層將詞性特征向量化得到的向量與詞向量進(jìn)行融合,采用BiLSTM學(xué)習(xí)文本中前向和后向距離特征來(lái)得到全局特征,在輸出層添加CRF層得到文本的最優(yōu)標(biāo)注序列。
為了對(duì)比喻句中本體和喻體準(zhǔn)確的識(shí)別,本文選取兩個(gè)數(shù)據(jù)集進(jìn)行考察。
Chinese-Simile-Recognition(CSR)[6]: 該數(shù)據(jù)集是由首都師范大學(xué)、科大訊飛等提供(1)https://github.com/cnunlp/Chinese-Simile-Recognition-Dataset,訓(xùn)練集共有7 262條句子,其中比喻句(明喻句)有3 315條,非比喻句有3 947條。
Simile-Recognition-SXU(SRS)[1]: 該數(shù)據(jù)集是由山西大學(xué)研究團(tuán)隊(duì)構(gòu)建,數(shù)據(jù)來(lái)源于高中語(yǔ)文課文、查字典網(wǎng)(2)https://www.Chazidian.com、散文吧網(wǎng)站(3)https://www.sanwen8.cn和BCC網(wǎng)站(4)http://bcc.blcu.edu.cn。該數(shù)據(jù)集共有3 207條,其中訓(xùn)練集有1 925條,開發(fā)集有641條,測(cè)試集有641條。人工標(biāo)注明喻句中的本體和喻體是最簡(jiǎn)短的,且不帶修飾語(yǔ)。
對(duì)于CSR,明喻句中喻詞均為“像”,而明喻句中的喻詞不僅只有“像”,還有“如,好似,仿佛,若,似乎”等。對(duì)SRS中不同喻詞的句子進(jìn)行統(tǒng)計(jì),結(jié)果如表1所示。人工校對(duì)部分分詞,標(biāo)注的本體和喻體是不帶修飾語(yǔ)的名詞短語(yǔ)。
表1 SRS中不同喻詞統(tǒng)計(jì)
通過對(duì)CSR和SRS兩個(gè)數(shù)據(jù)集的統(tǒng)計(jì),發(fā)現(xiàn)CSR中比喻句標(biāo)出的本體與喻體包含多詞的僅占0.38%,而SRS本體與喻體中包含多詞的僅占1.07%,因此,本文只對(duì)CSR和SRS中本體和喻體為單個(gè)詞的開展研究。再對(duì)CSR和SRS的本體與喻體按照詞性進(jìn)行統(tǒng)計(jì),發(fā)現(xiàn)CSR和SRS中名詞分別占80.3%和85.9%。而動(dòng)詞在句子中扮演著重要角色,它表征概念實(shí)體間的相互關(guān)系,是句子中名詞實(shí)體的概念依存體。因此,詞性特征對(duì)于識(shí)別明喻句中的本體和喻體可以提供更準(zhǔn)確的信息。
通過第2節(jié)對(duì)比喻句特征的分析可以發(fā)現(xiàn),本體和喻體的詞性對(duì)比喻句的識(shí)別具有重要的作用。因此,將詞性特征融合到詞的表示中。由于BiLSTM-CRF模型在BiLSTM輸出后增加了CRF層,所以它能夠加強(qiáng)文本間信息的相關(guān)性,并同時(shí)考慮過去的與未來(lái)的特征。因此,本文將明喻識(shí)別及要素抽取問題看作序列標(biāo)注問題。利用每個(gè)句子中的詞表示和詞性表示的聯(lián)合特征,學(xué)習(xí)特征到標(biāo)注結(jié)果的映射,得到特征到任意標(biāo)簽的概率,通過這些概率,得到最優(yōu)序列結(jié)果,根據(jù)最后序列結(jié)果對(duì)明喻識(shí)別及要素抽取,整體框架如圖1所示。
圖 1 基于詞性特征的明喻識(shí)別及要素抽取框架
圖1中標(biāo)注的實(shí)體有本體和喻體,分別用Tenor和Vehicle表示,將已標(biāo)注的數(shù)據(jù)集轉(zhuǎn)變?yōu)镮OBES模式(O: 既不是本體,也不是喻體,S: 單獨(dú)構(gòu)成實(shí)體,B: 實(shí)體的開始,I: 實(shí)體的中間,E: 實(shí)體的結(jié)尾),共得到九種標(biāo)簽,具體的標(biāo)簽類型Typeset={O,S-Tenor,B-Tenor,I-Tenor,E-Tenor,S-Vehicle,B-Vehicle,I-Vehicle,E-Vehicle}。例如,S-Tenor表示單獨(dú)一個(gè)詞構(gòu)成本體。對(duì)于明喻句的識(shí)別問題,當(dāng)一個(gè)句子中所有詞的標(biāo)簽都為“O”時(shí),則判定此句為非明喻句,否則此句為明喻句。
由于明喻句中的語(yǔ)言表達(dá)比較含蓄、委婉,直接從字面上對(duì)其識(shí)別比較困難。例如,圖1中的例句,“氣球像梨子”,之所以能這樣說(shuō),主要原因是氣球和梨子在形狀上有某些相似之處,人們?cè)谑褂脮r(shí)將“氣球”比喻成“梨子”,也就是將有類似特征的詞語(yǔ)放到一起使用。雖然它們?cè)谧置嫔蠈儆诓煌I(lǐng)域的事物,但在上下文中又有一定的語(yǔ)義一致性,另外,它們所具有的詞性都為名詞。因此,可以建立詞語(yǔ)和詞性的深層語(yǔ)義表示。
3.1.1 詞語(yǔ)的初始化表示[6]
為了刻畫句子中詞語(yǔ)深層語(yǔ)義表示,Word2Vec可以作為其初始化表示工具,其原因是Word2Vec是在大規(guī)模的語(yǔ)料庫(kù)上進(jìn)行訓(xùn)練所得,能使詞語(yǔ)表達(dá)的深層語(yǔ)義更加豐富。
設(shè)給定一個(gè)句子Sentence={w1,w2,…,wn},wi為句子Sentence中的第i個(gè)詞語(yǔ),利用Word2Vec工具獲得wi的初始化嵌入表示為ci,得到句子的嵌入表示為Sentence={c1,c2,…,cn},其中,ci∈Rd(i=1,2,…,n)。
對(duì)于比喻句中的詞性特征,直接利用結(jié)巴工具進(jìn)行獲取,其中名詞用“1”表示,代詞用“2”表示,動(dòng)詞用“3”表示,其他詞性用“0”表示。詞性特征也可使用Word2Vec工具獲得,pi代表詞性特征向量,其中pi∈Rd(i=1,2,…,n)。 將詞語(yǔ)嵌入和詞性特征向量進(jìn)行拼接,如式(1)所示。
其中,“;”表示拼接操作,xi∈R2d,代表拼接后的向量表示。
利用式(1)可得到句子表示為Sentence=(x1,x2,…,xn)。
3.1.2 基于BiLSTM的詞語(yǔ)上下文表示
由于BiLSTM-CRF模型是在BiLSTM輸出后增加CRF[13]層,可以增強(qiáng)詞語(yǔ)間上下文信息相關(guān)性的特征,同時(shí)考慮當(dāng)前每個(gè)詞的隱層狀態(tài)的特征。因此,為了對(duì)句子進(jìn)行序列標(biāo)注,將第3.1節(jié)得到的嵌入式表示,經(jīng)過一個(gè)線性變換獲得隱藏層每個(gè)詞的新表示,這個(gè)新表示一方面作為CRF[13]的輸入,另一方面作為該詞在序列標(biāo)注時(shí)標(biāo)簽的得分。
對(duì)于嵌入層表示后的句子Sentence=(h1,h2,…,hn),再使用一個(gè)線性變換層,得到句子中每個(gè)詞wi隱藏狀態(tài)的嵌入表示pi,將句子中的詞語(yǔ)從4d維映射到q維空間,q為標(biāo)注序列中標(biāo)簽的個(gè)數(shù),如式(4)所示。
其中,W∈Rq×4d,pi∈Rq。
由式(4)獲得句子Sentence輸入CRF層的嵌入式表示為P=(p1,p2,…,pn),其中,P∈Rn×q,pi中的每一個(gè)元素pi,j表示句子中第i個(gè)詞語(yǔ)xi得到第j個(gè)標(biāo)簽的得分。
在序列標(biāo)注任務(wù)中,需要利用詞的標(biāo)簽與周圍詞標(biāo)簽存在的依賴關(guān)系,然后解碼出全局最優(yōu)的標(biāo)簽序列,CRF正是針對(duì)這項(xiàng)工作的。因此,在 BiLSTM 網(wǎng)絡(luò)輸出層后加入CRF。
對(duì)于預(yù)測(cè)句子Sentence的標(biāo)簽序列,由softmax計(jì)算獲得,如式(6)所示。
在訓(xùn)練過程中,最大化正確標(biāo)簽序列的對(duì)數(shù)概率[15],如式(7)所示。
log(p(Y|Sentence))=s(Sentence,Y)-
(7)
從式(7)中能夠獲得模型生成概率中最大的標(biāo)簽序列。在解碼階段,最后預(yù)測(cè)的輸出序列是根據(jù)最高得分的標(biāo)簽序列所獲得的,如式(8)所示。
通過式(8),可以獲得句子Sentence中詞的每個(gè)標(biāo)簽,其標(biāo)簽類型為第3節(jié)介紹的九種標(biāo)簽之一。
本文實(shí)驗(yàn)中詞向量維度是50,字向量維度是100,均采用Word2Vec訓(xùn)練得到的向量。特征向量的維度設(shè)置為50,LSTM隱藏層的維度設(shè)置為100,dropout設(shè)置為0.6。梯度下降優(yōu)化算法采用Adam[16],學(xué)習(xí)率設(shè)置為0.001。
本文采用第2節(jié)介紹的CSR和SRS作為實(shí)驗(yàn)數(shù)據(jù)集。對(duì)于一個(gè)明喻句,只有本體和喻體的邊界和標(biāo)簽都標(biāo)記正確時(shí),才判定此明喻句要素抽取正確。因此,實(shí)驗(yàn)結(jié)果采用成對(duì)的評(píng)價(jià)指標(biāo)(5)https://github.com/cnunlp/Chinese-Simile-Recognition-Dataset,精確率P(precision)、召回率R(recall)和F1值。
為驗(yàn)證本文方法的有效性,設(shè)置如下方法對(duì)比實(shí)驗(yàn)。
CRF: 直接利用分詞特征,設(shè)計(jì)CRF的特征模板,窗口大小為5。
RNN: 以字向量作為輸入的循環(huán)神經(jīng)網(wǎng)絡(luò)。
CNN: 以字向量作為輸入的卷積神經(jīng)網(wǎng)絡(luò)。
下面的方法僅說(shuō)明其輸入向量的方式,在此基礎(chǔ)上采用BiLSTM-CRF。
C: Embedding層為每個(gè)字的字向量。
C+J: Embedding層為每個(gè)字向量和位置信息的拼接,位置信息的表示是通過結(jié)巴分詞得到分詞信息特征。1表示詞的開始;2表示詞的中間;3表示詞的結(jié)尾;0表示單個(gè)詞。
Singletask(CE): 由Liu等人[6]提出的Embedding層為每個(gè)詞的詞向量。
W+T: Embedding層為每個(gè)詞的詞向量和主題信息的拼接,主題信息是利用LDA聚類方法得到的。
W+F: Embedding層為每個(gè)詞的詞向量和詞性特征的拼接。
W+F+T: Embedding層為每個(gè)詞的詞向量、詞性特征和主題信息拼接。
實(shí)驗(yàn)1七種方法的明喻要素抽取比較
為了驗(yàn)證本文提出方法的有效性,在CSR和SRS上設(shè)置了如下對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果分別如表2、表3所示。
表2 七種抽取方法在CSR上明喻要素抽取的實(shí)驗(yàn)結(jié)果比較(%)
表3 七種抽取方法在SRS上明喻要素抽取的實(shí)驗(yàn)結(jié)果比較(%)
由表2和表3可以看出:
(1) 以CRF方法作為基準(zhǔn)方法,可以解決序列標(biāo)注問題,但是與其他深度學(xué)習(xí)的方法相比,需要自定義特征模板,并沒有學(xué)習(xí)到文本深層次的特征,因此抽取效果不及其他深度學(xué)習(xí)方法。
(2) 詞向量表示優(yōu)于字向量表示,主要原因是明喻句中的本體和喻體多數(shù)是一個(gè)詞而不是一個(gè)字,而且詞比字包含更多的語(yǔ)義信息。
(3) 喻體的抽取效果均比本體的抽取效果好。為了展示其原因,圖2和圖3給出了本體—喻詞的相對(duì)距離以及喻體—喻詞的相對(duì)距離,可以看出,相對(duì)于本體來(lái)說(shuō),喻體大多數(shù)分布在喻詞的后面,比較集中,而本體的分布相對(duì)比較分散。
(4) 在七種方法的比較中,W+F在明喻要素抽取中整體效果最好。
圖2 在CSR中本體—喻詞的相對(duì)距離
圖3 在CSR中喻體—喻詞的相對(duì)距離
實(shí)驗(yàn)2九種方法在CSR上的明喻識(shí)別
為了與文獻(xiàn)[6]中的單任務(wù)方法進(jìn)行對(duì)比,僅在CSR上進(jìn)行明喻識(shí)別對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表4所示。
表4 各類識(shí)別方法在CSR上的實(shí)驗(yàn)結(jié)果比較(%)
由表4可以看出:
(1) CRF、RNN、CNN三類方法作為基準(zhǔn)方法,識(shí)別效果均不及BiLSTM-CRF方法。這是因?yàn)镃RF、RNN、CNN都無(wú)法充分考慮文本上下文信息,因此難以得到深層次的語(yǔ)義信息,不能較好地對(duì)文本語(yǔ)義進(jìn)行特征建模。
(2) 對(duì)于Embedding層分別僅用字向量和詞向量表示,在Recall指標(biāo)下,Singletask > C,而在F1指標(biāo)下,C > Singletask,這是因?yàn)榕袛嗍欠駷槊饔骶渲皇峭ㄟ^判斷句中是否有本體或喻體的標(biāo)注,而不能判斷明喻要素抽取是否正確。
(3) 對(duì)于Embedding層都包含詞向量的,在F1指標(biāo)下,識(shí)別效果Singletask < W+F+T < W+F < W+T,W+T的識(shí)別效果最好,而W+F+T不如W+T,這是因?yàn)閃+F+T中Embedding層融合了比較多的信息,而本文的數(shù)據(jù)集較小。
實(shí)驗(yàn)3W+F方法應(yīng)用實(shí)驗(yàn)
為了驗(yàn)證W+F方法的應(yīng)用能力,對(duì)引言中高考鑒賞題進(jìn)行實(shí)驗(yàn),其結(jié)果如表5所示。
表5 本文方法解答高考題示例
由表5可以看出,本文提出的方法可以抽取到本體和喻體最簡(jiǎn)潔的名詞短語(yǔ),并能識(shí)別出明喻句。抽取到的本體和喻體與參考答案相比不夠完整,因此,需要根據(jù)抽取的本體和喻體,再與原文中抽取相關(guān)的修飾語(yǔ)相結(jié)合,形成最終的完整答案。完整答案與參考答案相比,可知本文方法能為解答散文類鑒賞題提供支持,以提升答題的準(zhǔn)確率。
針對(duì)明喻句的識(shí)別及明喻句中本體和喻體的抽取問題,本文采用明喻句中本體和喻體的詞性特征,設(shè)計(jì)了基于詞性特征的明喻識(shí)別及要素抽取方法,并與現(xiàn)有的方法進(jìn)行了對(duì)比,證明了本文所提方法的有效性。針對(duì)高考散文類鑒賞題,將本文所提的方法應(yīng)用到答題中,可以獲取部分答案信息。
由于在實(shí)際數(shù)據(jù)中句子比較復(fù)雜,而本文實(shí)驗(yàn)的數(shù)據(jù)集中大多數(shù)是句式簡(jiǎn)單的句子,并且其數(shù)據(jù)集中標(biāo)注的本體和喻體均為不帶修飾語(yǔ)的名詞短語(yǔ),訓(xùn)練集的數(shù)據(jù)集也比較小,所以深度學(xué)習(xí)學(xué)習(xí)到相應(yīng)特征有限。在未來(lái)的工作里,將考慮加入注意力機(jī)制來(lái)識(shí)別帶有修飾語(yǔ)的本體和喻體,并且從更深層次挖掘比喻句的特征來(lái)對(duì)隱喻進(jìn)行研究。此外,創(chuàng)建更豐富的語(yǔ)料庫(kù)也是我們下一步重點(diǎn)的工作方向。