寧丹丹
文章編號(hào): 2095-2163(2018)03-0061-04中圖分類號(hào): 文獻(xiàn)標(biāo)志碼: A
摘要: 關(guān)鍵詞: (School of Computer Science and Technology, Harbin Institute of Technology, Harbin 150001, China)
Abstract: Paraphrase is to change a sentence into another expression, meaning the same as before. Paraphrase is widely used in Natural Language Processing, for example, it is used in information retrieval, automatic abstracting, information extraction, sentence translation and so on. This paper focuses on the generation of sentence level paraphrase. In the research, first try the basic seq2seq model for sentence paraphrasing, then use bidirectional LSTM in encoder stage and join the attention mechanism, by comparing the generation results of sentences,demonstrate that the model with attention is better. In addition, further propose the copy mechanism and the coverage mechanism to improve the model. Among them, introduce the copy mechanism to solve special condition when names and places are present in original sentence. Under this condition, design to realize that the model can copy words without change. Experimental results show that the copy mechanism can improve the situation and generate better sentences. Finally, to address the common repetition problem of seq2seq, coverage mechanism is added on the basis of copy mechanism, which effectively improves this problem in sentences generation. And BLEU is used to evaluate the model results.
Key words:
作者簡(jiǎn)介:
通訊作者: 收稿日期: 引言
復(fù)述(Paraphrase)是自然語(yǔ)言中普遍存在的一種現(xiàn)象,體現(xiàn)了自然語(yǔ)言的多樣性。隨著深度學(xué)習(xí)的發(fā)展以及自然語(yǔ)言處理各項(xiàng)技術(shù)的提高,對(duì)復(fù)述技術(shù)的需求也日趨強(qiáng)烈,因此,各大研究機(jī)構(gòu)及高校等對(duì)復(fù)述任務(wù)的研究也越來(lái)越關(guān)注。復(fù)述研究的對(duì)象主要是有關(guān)短語(yǔ)或者句子的同義現(xiàn)象?,F(xiàn)在已在信息檢索、自動(dòng)問(wèn)答、信息抽取、自動(dòng)文摘和機(jī)器翻譯等方面應(yīng)用廣泛。在復(fù)述的研究前期,研究主要利用句子中詞語(yǔ)之間的關(guān)系,句子的依存句法關(guān)系等進(jìn)行復(fù)述生成,隨著深度學(xué)習(xí)的發(fā)展,很多研究機(jī)構(gòu)將深度學(xué)習(xí)技術(shù)應(yīng)用到復(fù)述生成的任務(wù)中,并且具有顯著的效果。本文采用序列到序列模型的方法,對(duì)句子級(jí)復(fù)述進(jìn)行生成,在基本seq2seq模型上嘗試3種改進(jìn)方法,分別是雙向LSTM 注意力機(jī)制的改進(jìn)方法、加入復(fù)制(copy)以及加入 (coverage)機(jī)制的方法。其中,復(fù)制機(jī)制主要解決句子中詞頻比較低的詞語(yǔ)的生成,例如在句子中會(huì)存在人名、地名等詞頻較低的詞,在復(fù)述過(guò)程中,目標(biāo)設(shè)定在生成的句子將這些名稱進(jìn)行復(fù)制,不進(jìn)行改變,因此即有針對(duì)性地提出了復(fù)制機(jī)制。另外,seq2seq模型存在重復(fù)這一共性問(wèn)題,本文采用覆蓋機(jī)制對(duì)這一現(xiàn)象進(jìn)行改進(jìn)。經(jīng)過(guò)如上3種改進(jìn)方法,句子生成結(jié)果則獲得了明顯改進(jìn)。
1基于序列到序列的句子級(jí)復(fù)述生成模型
在國(guó)內(nèi),句子級(jí)復(fù)述生成的研究也主要圍繞seq2seq模型進(jìn)行改進(jìn)。2016年,Gu等人\[1\]提出CopyNet方法,在Attention-based Encoder-Decoder模型的基礎(chǔ)上引入了一些改進(jìn),在decoder過(guò)程中,詞的概率由generate-mode和copy-mode共同決定,其中后者表示該詞來(lái)自原句。例如,在生成對(duì)話的過(guò)程中,就可以將人名這樣的特殊詞匯拷貝到回復(fù)句中。Cao等人\[2\]在句子級(jí)復(fù)述生成中借鑒CopyNet方法,提出了基于copy機(jī)制的復(fù)述生成模型,將該模型應(yīng)用到文本簡(jiǎn)化、摘要生成等任務(wù)上,取得了較好的結(jié)果。相比Gu等人提出的CopyNet模型,該模型的優(yōu)勢(shì)是簡(jiǎn)單、易懂。國(guó)外研究人員在句子級(jí)復(fù)述任務(wù)上也開(kāi)展了很多的研究工作,Prakash\[3\]等人在2016年提出了Stacked Residual LSTM networks用于復(fù)述生成問(wèn)題上,通過(guò)利用基本seq2seq 的encoder-decoder模型,采用多層結(jié)構(gòu),在層與層之間加入殘差來(lái)改善多層網(wǎng)絡(luò)存在的梯度消失問(wèn)題。Hasan\[4\]等人提出Neural Clinical Paraphrase Generation方法,用于臨床醫(yī)學(xué)術(shù)語(yǔ)等的復(fù)述問(wèn)題上,目的是用通俗易懂的詞代替一些專業(yè)醫(yī)學(xué)術(shù)語(yǔ),讓患者更加容易理解,并且采用attention-based Bi-direction RNN的端到端結(jié)構(gòu)進(jìn)行復(fù)述生成,得到了較好的結(jié)果。另外,2017年,See\[5\]等人提出一種基于seq2seq模型的改進(jìn)方法——Pointer-Generator Networks,并將其利用到文本摘要生成的任務(wù)當(dāng)中,展現(xiàn)了較好的效果優(yōu)勢(shì),其中seq2seq+Attention模型作為baseline,在此基礎(chǔ)上加入Pointer-Gen機(jī)制,即加入一個(gè)參數(shù),該參數(shù)決定當(dāng)前詞進(jìn)行生成還是進(jìn)行復(fù)制,隨后在Pointer-Gen基礎(chǔ)上加入覆蓋機(jī)制,改善生成過(guò)程中出現(xiàn)的重復(fù)問(wèn)題。
在本文中,在研究嘗試了3種序列到序列模型的改進(jìn)方法進(jìn)行句子級(jí)復(fù)述生成,首先在基本seq2seq模型上加入注意力機(jī)制,在encoder階段采用雙向LSTM模型,用于提高seq2seq模型效果,模型結(jié)構(gòu)設(shè)計(jì)如圖1所示。
上述模型也存在一定的問(wèn)題,當(dāng)原句長(zhǎng)度較長(zhǎng)時(shí),生成句子結(jié)果也并未呈現(xiàn)良好實(shí)效,當(dāng)原句中存在一些人名、地名等詞頻較低和不在詞表中存在的詞時(shí),期望的結(jié)果是生成的句子中也存在這些詞,但是基本seq2seq模型和加入注意力機(jī)制的模型對(duì)這一問(wèn)題沒(méi)有提供特別的處理,導(dǎo)致生成的句子中人名、地名的特殊詞語(yǔ)生成結(jié)果不好。所以,關(guān)于這一問(wèn)題本文提出復(fù)制的思想,在注意力機(jī)制的模型上進(jìn)行改進(jìn),一定程度上解決像人名、地名等OOV(out of vocabulary)的詞語(yǔ)的生成情況。另一方面,seq2seq模型和加入注意力機(jī)制的模型生成的句子存在重復(fù)的問(wèn)題,這個(gè)問(wèn)題是seq2seq模型的一個(gè)通病。生成的句子越長(zhǎng),重復(fù)問(wèn)題越明顯,針對(duì)這一問(wèn)題,本文提出覆蓋機(jī)制來(lái)對(duì)這一問(wèn)題進(jìn)行改善,模型結(jié)構(gòu)如圖2所示。
2語(yǔ)料獲取及處理
目前自然語(yǔ)言處理研究中,沒(méi)有大規(guī)模現(xiàn)成的復(fù)述語(yǔ)料資源,需要采取一定的方法獲取復(fù)述語(yǔ)料。例如英文詞語(yǔ)級(jí)復(fù)述資源用WordNet\[6\]、MindNet\[7\]等獲取,中文可以采用同義詞詞林、知網(wǎng)等。2001年,Barzilay\[8\]提出了一種基于外文翻譯獲取句子級(jí)復(fù)述語(yǔ)料庫(kù)的方法。Shinyama\[9\]等人提出了利用同一個(gè)新聞事件的不同描述來(lái)獲取復(fù)述語(yǔ)料,因而假定若2個(gè)句子中共同包含的命名實(shí)體超過(guò)一定的數(shù)量,那么這2個(gè)句子可以組成一個(gè)復(fù)述實(shí)例。
本課題借鑒前人Barzilay\[8\]及哈爾濱工業(yè)大學(xué)李維剛\[10\]等人的方法,從單語(yǔ)平行語(yǔ)料庫(kù)中,也就是外文名著的不同譯本獲取復(fù)述實(shí)例。由于待處理的平行譯文文本大多數(shù)是從網(wǎng)絡(luò)上得到的 ,這些文本具有很多不規(guī)范的特征,例如這些文本一般是篇章對(duì)齊的,其中的段落沒(méi)有嚴(yán)格對(duì)齊,并且在翻譯時(shí),為了保證翻譯后的語(yǔ)句通順,源語(yǔ)言的一句話可能被翻譯成多句話?;谝陨蠁?wèn)題,首先需要將文本整合為一篇文章消除段落界限,利用二分圖最優(yōu)匹配的過(guò)程,對(duì)句子進(jìn)行對(duì)齊,獲取復(fù)述實(shí)例。
本文研究利用《百年孤獨(dú)》和《呼嘯山莊》兩部外文名著的不同翻譯版本獲取復(fù)述語(yǔ)料,語(yǔ)料規(guī)模為:10 159句對(duì)。對(duì)抽取出的復(fù)述句對(duì)再次進(jìn)行過(guò)濾處理,過(guò)濾規(guī)則是相對(duì)應(yīng)的2句長(zhǎng)度差超過(guò)一定的值則將該句對(duì)進(jìn)行過(guò)濾,過(guò)濾處理后的語(yǔ)料規(guī)模為8 022句。
3評(píng)價(jià)指標(biāo)與實(shí)驗(yàn)結(jié)果
3.1評(píng)價(jià)指標(biāo)
本文采用機(jī)器翻譯的一種評(píng)價(jià)方式——BLEU值對(duì)句子級(jí)復(fù)述生成的結(jié)果進(jìn)行評(píng)價(jià)。該評(píng)價(jià)方式最先由IBM\[11\]在2002年提出,在機(jī)器翻譯任務(wù)中,該評(píng)價(jià)方式的主要思想是若由模型翻譯得到的句子越接近人工翻譯的結(jié)果,則證明該模型效果越好,那么定義模型翻譯得到的句子與人工翻譯得到句子之間的相似度成為BLEU評(píng)價(jià)的核心內(nèi)容。
首先,BLEU評(píng)價(jià)需要參考譯文,對(duì)于本文句子級(jí)復(fù)述生成任務(wù),這里的“參考譯文”為復(fù)述后的句子。BLEU值通過(guò)比較并統(tǒng)計(jì)模型生成句子和復(fù)述句中共現(xiàn)的n-gram個(gè)數(shù),最后把匹配到的n-gram的數(shù)目除以模型生成句子中詞語(yǔ)的數(shù)目,得到評(píng)測(cè)結(jié)果。之后BLEU做了修正,首先計(jì)算出n-gram在一個(gè)句子中最大可能出現(xiàn)的次數(shù),然后跟“參考譯文”中n-gram出現(xiàn)的次數(shù)作比較,取兩者之間最小值作為n-gram的最終匹配個(gè)數(shù)。首先,研究定義模型生成的句子為ci,“參考譯文”即復(fù)述句表示為Si={si1, si2, …, sim}∈S,計(jì)算過(guò)程如下。
首先,計(jì)算句對(duì)中語(yǔ)料庫(kù)層面上的重合精度CPnC,S:
CPnC,S=∑i∑kmin (hkci, maxj∈mhk(sij))∑i∑khk(ci) (1)
其中,wk表示第k組可能的n-grams,式(1)中hkci表示wk在模型生成句ci中出現(xiàn)的次數(shù),hk(sij)表示wk在“參考譯文”sij中出現(xiàn)的次數(shù)。
可以看出CPnC,S是個(gè)精確度度量,在語(yǔ)句較短時(shí)表現(xiàn)更好,所以BLEU加入懲罰因子BP。這里給出數(shù)學(xué)公式如下:bC,S=1 iflc>ls
e1-lslciflc
4結(jié)束語(yǔ)
本文主要提出了3種基于序列到序列模型的改進(jìn)方法應(yīng)用到句子級(jí)復(fù)述生成任務(wù)中,首先研究嘗試了基本seq2seq模型用于句子復(fù)述,并嘗試在encoder階段采用雙向LSTM,而后在雙向LSTM基礎(chǔ)上加入注意力機(jī)制,比較句子生成結(jié)果,可以得出加入注意力機(jī)制的模型生成結(jié)果效果要好。接著本課題提出復(fù)制機(jī)制和覆蓋機(jī)制對(duì)模型進(jìn)行改進(jìn),其中復(fù)制機(jī)制旨在解決原句中出現(xiàn)人名、地名等特殊詞匯的情況,這樣情況下將致力于模型可以對(duì)詞進(jìn)行復(fù)制,不進(jìn)行改變,實(shí)驗(yàn)結(jié)果證明,復(fù)制機(jī)制對(duì)這一情況有所改善,句子生成效果較好,此外,針對(duì)seq2seq普遍存在的重復(fù)問(wèn)題,研究還在復(fù)制機(jī)制的基礎(chǔ)上加入覆蓋機(jī)制,有效改善了生成句子的重復(fù)問(wèn)題。
參考文獻(xiàn)
[1] GU Jiatao, LU Zhengdong, LI Hang, et al. Incorporating copying mechanism in sequencetosequence learning[J]. arXiv preprint arXiv:1603.06393, 2016.
[2] CAO Ziqiang, LUO Chuwei, LI Wenjie, et al. Joint copying and restricted generation for paraphrase[J]. arXiv preprint arXiv:1611.09235, 2016.
[3] PRAKASH A, HASAN S A, LEE K, et al. Neural paraphrase generation with stacked residual LSTM networks[J]. arXiv preprint arXiv:1610.03098,2016.
[4] HASAN S A, LIU B, LIU J, et al. Neural clinical paraphrase generation with attention[C]//Proceedings of the Clinical Natural Language Processing Workshop. Osaka, Japan:[s.n.], 2016: 42-53.
[5] SEE A, LIU P J, MANNING C D. Get to the point: Summarization with pointergenerator networks[J]. arXiv preprint arXiv:1704.04368, 2017.
[6] MILLER G A, BECKWITH R, FELLBAUM C, et al. Introduction to wordnet: An online lexical database[J]. International Journal of Lexicography, 1990,3(4): 235-244.
[7] RICHARDSON S D, DOLAN W B, WANDERWENDE L. Mindnet: Acquiring and structuring semantic information from text[C]//COLING '98 Proceedings of the 17th international conference on Computational linguistics.Montreal, Quebec, Canada:ACM, 1998:1098-1102 .
[8] BARZILAY R, MCKEOWN K R. Extracting paraphrases from a parallel corpus[C]//ACL '01 Proceedings of the 39th Annual Meeting on Association for Computational Linguistics. Toulouse, France:ACM, 2001:50-57.
[9] SHINYAMA Y, SEKINE S, SUDO K. Automatic paraphrase acquisition from news articles[C]//HLT '02 Proceedings of the second international conference on Human Language Technology Research. San Diego, California:ACM, 2002:313-318 .
[10]李維剛. 中文復(fù)述實(shí)例與復(fù)述模板抽取技術(shù)研究[D]. 哈爾濱: 哈爾濱工業(yè)大學(xué), 2008.
[11]PAPINENI K, ROUKOS S, WARD T, et al. BLEU: A method for automatic evaluation of machine translation[C]// ACL '02 Proceedings of the 40th Annual Meeting on Association for Computational Linguistics. Philadelphia, Pennsylvania: ACM,2002:311-318.