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