999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于生成對抗網絡的事件描述生成

2021-07-02 00:35:22孫鶴立孫玉柱張曉云
計算機應用 2021年5期
關鍵詞:文本模型

孫鶴立,孫玉柱,2*,張曉云

(1.西安交通大學計算機科學與技術學院,西安 710049;2.西安交通大學外國語學院,西安 710049)

(*通信作者電子郵箱sunyuzhu12@xjtu.edu.cn)

0 引言

社交事件是基于事件的社會網絡(Event-Based Social Network,EBSN)[1]的核心要素,驅動了線上和線下網絡的整體運行。事件描述是事件的重要屬性,可綜合包含事件意義、安排、特點等多種信息,不但可輔助用戶決策是否參加該事件,而且給了組織者最大的自由度來使事件更有吸引力。目前,主流社交平臺如Meetup、豆瓣中的事件描述均為人工生成,由于受到語言描述能力和對事件描述認知層次的影響,事件描述出現了描述貧乏或描述過度、要素覆蓋不全、語言吸引力不強的現象,導致事件參與人數不符合預期,且人工生成事件描述工作量較大,為事件組織者增加負擔。本文采用自然語言處理模型生成高質量的事件描述供組織者參考,以幫助組織者快速形成豐富、準確、高吸引力的事件描述。

事件描述的生成算法最終會應用到EBSN 平臺中,優秀的算法不但可以生成高質量文本,同時還需要滿足無監督的特點。為了滿足以上特點,本文中研究了多種語言生成模型。

2011 年,文獻[2]中提出了循環神經網絡語言模型(Recurrent Neural Network Language Modeling,RNNLM)被廣泛應用,并多次被應用在文本生成實踐中。文獻[3]中對RNNLM 做了改進,使用單個字符而非單個單詞作為輸入,在RNNLM 前加入了卷積層和highway 層,使得模型從字符的角度,而非單詞的角度學會了如何表達自然語言。實驗證明他們的改進模型能大幅減少參數數量,并且在學習富詞法語言中,表現優于傳統的以詞為最小單位的語言模型。

為了令RNNLM 在生成文本時不但依賴當前狀態,而且依賴某個全局表達,Seq2Seq 模型被提出,生成文本的過程變為編碼-解碼的過程。編碼器首先將某段文本表示為一個隱向量,再通過解碼器解碼,以控制輸出文本的效果。在編碼器的選擇上,有許多不同方案,文獻[4]率先將變分自編碼器引入文本生成中,利用變分自編碼器采樣得到編碼的特性,令隱編碼能夠服從特定分布,從而保證了編碼的連續性和局部相關性。文獻[5]同樣利用變分自編碼器編碼空間連續的特性,通過對特定文本編碼進行梯度上升操作來最大化某個目標函數,從而達到改進某段文本的目的。

基于RNNLM 的生成方法多基于極大似然估計,在模型訓練時能夠很好地通過反向轉播更新參數,并獲得跟訓練集極為相似的結果,然而這些方法又易于過擬合,導致生成文本質量不高,文本多樣性低。

為了令生成的文本更接近真實文本,并且滿足無監督的條件,生成對抗網絡(Generative Adversarial Net,GAN)成為最佳選擇。生成對抗網絡2014 年誕生于計算機視覺領域,是近年來迅速發展的一種無監督深度學習技術。GAN 的本質是尋找兩個不同分布之間的映射,這兩個分布通常為先驗噪聲分布和真實數據樣本分布,這種特質導致它在圖像生成領域具有天然的優勢,不過把它應用到文本生成時卻遇到了困難,主要因為生成器生成的文本數據是離散的、不可微的,因此判別器無法將信息反向傳播給生成器,導致生成器無法更新[6]。

鑒于以上問題,目前主流的解決辦法是將GAN 與強化學習中策略梯度的思想結合起來,把文本生成構建為一個連續的決策過程,通過策略梯度算法來估計生成器的梯度。使用這個方法的突出代表主要有文獻[7]提出的SeqGAN,SeqGAN使用RNNLM 作為生成模型,同時使用帶卷積層的神經網絡作為判別模型來訓練生成模型,很好地解決了文本的離散性問題,并且性能較高。文獻[8]也采用了類似的結構,通過訓練生成模型生成評分勝過真實訓練數據的文本,生成了足夠真實的文本序列。

目前生成對抗網絡已經用于法律文本生成[9]、醫療文本生成[10]等多個場景,但鮮有學者將生成對抗網絡用于EBSN平臺,尤其是生成事件描述。本文設計了生成對抗網絡GAN_PG,以無監督地生成高質量的事件描述。為了保證編碼的連續性和局部相關性,采用帶變分編碼器的網絡作為事件描述生成模型,為了對文本有良好的分類效果,采用帶控循環單元(Gated Recurrent Unit,GRU)的神經網絡作為判別模型。實驗結果表明,通過大量訓練后,設計的生成對抗網絡生成事件描述的BLEU-4 值達到了0.67,證明了提出的事件描述生成模型GAN_PG 可以無監督地產生與自然語言足夠相似的事件描述。

1 相關模型原理

為了更清楚地表現模型的計算過程,本章簡要介紹生成對抗網絡、變分自編碼器和帶GRU的神經網絡的原理。

1.1 生成對抗網絡

生成對抗網絡是Goodfellow 等[11]于2014 年提出的,已經成為主流生成模型框架之一。它包含生成模型和判別模型,通過生成模型和判別模型的反復博弈來提高生成質量。在訓練過程中,生成模型的目標是生成能夠讓判別模型無法分辨出其和真實數據區別的樣本,而判別模型的訓練目標則是將生成模型生成的假樣本從真實樣本中區分開來。標準的生成對抗網絡最大化判別模型正確分類的概率,同時最小化生成模型所生成的樣本被判別器正確分類的概率:

其中:D、G分別表示判別和生成模型,data表示真實數據集,Gθ表示生成模型產生的假數據。

1.2 變分自編碼器

循環神經網絡(Recurrent Neural Network,RNN)是一種對序列數據建模的神經網絡,可以很好地刻畫詞匯的前后關聯,它十分強大,幾乎可以擬合任何分布。循環神經網絡語言模型(RNNLM)是利用RNN 對語言建模,用來描述語言序列的產生過程,與RNN 相比,多了詞向量層(embedding)和softmax層[12]。

變分自編碼器(Variational Auto-Encoder,VAE)于2013 年由Kingma 等[13]提出,2016 年Doersch[14]對VAE 做了更詳細的介紹。變分自編碼器是傳統的RNN 編碼器的改進型,對隱空間中的z→編碼加入了先驗分布,并在目標函數中通過KL(Kullback-Leibler)散度來縮小實際分布和先驗分布的距離,以此來強迫編碼器學到合適的編碼方式;同時,它通過采樣來生成編碼,這也就保證了隱編碼周圍的點也都是有意義的。變分自編碼器的損失函數Li(θ,φ)如式(2):

可以看出,其損失函數由兩部分構成:第一部分是負對數似然損失函數NLL(Negative Log Likelihood),用來縮小輸入序列和輸出序列的差異;第二個部分則是KL 散度,其中qθ為編碼器,p(z)為對隱編碼z的先驗分布。

1.3 門控循環單元

門控循環單元(GRU)是為了克服傳統RNN 無法很好處理遠距離依賴而提出的長短期記憶(Long Short-Term Memory,LSTM)網絡的一個變體,解決了傳統RNN 中出現的梯度彌散問題,在保留了LSTM 網絡很好的記憶功能的同時,較少的參數也使得GRU 的訓練過程能夠更快一些。它可以很好地將文本上下文特征的關聯進行有效地整合,對文本有良好的分類效果[15]。基于上述特性,結合事件描述的文本特點,本文采用帶GRU的神經網絡作為判別模型。

門控循環單元神經網絡在處理序列文本的同時,更好地保留了事件描述中原始文本信息,尤其是長文本中的信息,相較于卷積神經網絡,能夠捕捉更多文本信息,從而提高判斷的準確率。本文使用文獻[16]中的GRU結構,如圖1所示。

圖1 GRU的結構Fig.1 Structure of GRU

圖中:z[t]為更新門,r[t]為重置門,h[t]為當前t時刻的隱含狀態,橢圓中為算符,方框表示非線性函數。

GRU的前向傳播函數如下:

其中:W、U、b為參數;xt為輸入向量,ht為輸出向量,zt、rt為更新門和重置門向量。同樣地,根據鏈式法則,可以得到其反向傳播公式。

2 生成對抗網絡GAN_PG

由于本文設計的生成對抗網絡在訓練時借鑒了強化學習中的策略梯度(Policy Gradient,PG)下降,因此本文將其命名為GAN_PG。

2.1 事件描述生成模型

本文參考了文獻[4]中的VAE 結構,在編碼器和解碼器的選擇上,使用了單層GRU。在實現過程中,使用0-1 高斯分布作為隱編碼的先驗問題定義分布。同時基于文獻[13]中的重采樣技術,用反向傳播來訓練網絡。抽樣時,本文并不直接對隱編碼進行采樣,而是通過兩個線性神經網絡獲得當前編碼的平均值標準差然后通過式(6)獲得隱編碼,其中~Normal(0,1)。

圖2 為事件描述生成模型的核心結構,其中z為向量,其他部分為神經網絡,輸入為預先訓練的詞向量。在編碼環節完成后,LSTM 的隱狀態將分別輸入到兩個線性網絡中,得到隱編碼分布的平均值ū和方差,然后通過采樣獲得隱編碼,并將其輸入到解碼環節。

圖2 生成模型核心結構Fig.2 Core structure of generator

本文將隱編碼連接在解碼器的輸入詞向量最后,以初始化解碼器中的隱狀態。在實際的訓練過程中,為了防止損失函數中KL 散度降為0,本文還參考了文獻[4]所采用的策略:在訓練剛開始時設置KL 散度項的權重為0,然后慢慢升到1。訓練過程分為兩個階段:第一階段,編碼器從文本序列中學到盡可能多的信息,但不保證分布符合先驗分布;第二階段,通過增加KL散度項的權重,強迫編碼器編得的隱編碼盡可能接近先驗分布。

通過事件描述生成器,可以生成讀上去通順的事件描述。本文有兩種方式可以獲得事件描述:一是在隱編碼空間里面隨機采樣,這樣生成的事件描述文法通順,但無法保證語義上的一致;二是在已知事件描述的隱編碼周圍采樣,由于采用了變分自編碼器,相似的文本序列的隱編碼在隱空間中也是相近的。本文采用第二種方法,僅在已知事件描述的隱編碼周圍采樣,便可獲得與已知事件描述在文法上相似的新事件描述。生成事件描述后,為了判別事件描述的質量,需要引入判別模型。

2.2 GAN_PG的結構

GAN_PG 的生成模型在上一節中進行了介紹,判別模型為帶GRU的神經網絡,其損失函數如下:

生成模型的損失函數為最大化式(8),即最大化生成模型在生成序列的每一步中所獲得的評分。其中G、D分別為生成模型和判別模型,式(8)的前半部分為在隱編碼z和已生成的序列y0:t-1下,生成當前yt的概率。式(8)的后半部分為生成模型生成yt在判別模型所獲得的評分。

接下來度量生成模型所生成的每一步獲得的評分。因為判別模型只有在生成模型生成完整個序列以后,才能對該序列評分,而式(8)所要求的是對生成序列中每一步行為的評分。本文使用策略梯度來設計損失函數:對于t時刻所生成的序列yt,使用策略網絡Gθ(即當前生成模型)通過蒙特卡洛搜索算法對接下來T-t項(T為序列長)使用式(9)進行采樣:

其中:y0:t為當前狀態,yt+1:T為基于當前生成器狀態采樣的結果。為了獲得更準確的結果,可以將上述過程重復數次取平均。經過改進的生成模型目標函數如式(10):

從而可以將pg_loss改寫為式(11)的形式。?pg_loss可以通過式(12)求得。由于計算?pg_loss時,判別模型的參數無變化,所以只需要對生成模型Gθ(yt|z,y0:t-1)進行求導并僅更新參數即可。本文使用式(13)來更新判別模型的參數。

在確定了判別器、生成器和其分別的目標函數后,本文通過以下算法來訓練GAN_PG。

算法1 訓練GAN_PG。

Require:生成模型Gθ;判別模型Dσ;數據集X。

3 訓練事件描述生成模型的優化技巧

差分自編碼器的目標是學會如何在隱空間中表達已有的事件描述。通過觀察式(2)可判斷編碼質量:一個高質量的編碼會有相對較小的NLL 和非零的KL 散度。較小的NLL 確保了生成結果和訓練數據相似,而非零的KL散度確保了編碼的相異性。但如果直接使用式(2)訓練,KL 散度會很快降為0,即編碼和先驗分布完全相同,失去了編碼器的意義。

當KL 散度降為0 時,本文提出的變分自編碼器從某種程度上便與RNNLM 完全相同了,RNN 可以擬合任意分布,所以在這種情況下,NLL也能降到接近0。但這樣并不是本文期望的,如果這種情況發生,解碼器會完全忽略編碼器的結果,即無論輸入何種文本序列,輸出的文本序列都相同。

訓練事件描述生成器時,為了避免上述情況,式(2)的兩部分需處在平衡狀態:NLL 部分較小且KL 散度較小但不為零。本文使用了兩種方式來達到此目標。

首先,在訓練過程中,將后半項的系數置為0,以訓練前半項;再慢慢將后半項的系數增加,至1 為止,以訓練后半項。在實現過程中,使用式(14)來調整后半項的權重,同時為了使后半項的值穩定在合適范圍,本文將前半項的系數設置為79。

第二是使用dropout 層,即隨機地將輸入文本的某些詞替換為“_”。采用這種方式的初衷是弱化編碼器對上一步生成文本序列的依賴,以迫使其使用之前編碼器得到的編碼結果來恢復輸入的文本序列。

4 實驗結果和分析

本文首先用短文本單獨訓練事件描述生成器,以考察變分自編碼器的訓練過程及在處理自然語言中的表現;然后使用GAN_PG 進行正式訓練,并考察生成的文本和真實的事件描述的接近程度;最后用訓練好的GAN_PG 生成新的事件描述,以此證明GAN_PG 生成的事件描述在文法和語義上都是一致連貫的。

4.1 數據集及評估指標

本次實驗使用的語料來自Meetup 平臺洛杉磯市的真實事件,具體語料信息如表1 所示。在進行訓練前,本文對語料庫進行了如下預處理:1)去除非英文單詞;2)將數字替換成“#”;3)將出現次數少于5次的詞替換為“<ukn>”。

表1 數據集信息Tab.1 Information of dataset

衡量生成的事件描述質量時,采用文獻[17]提出的BLEU文本評估方法和文獻[18]的用法。BLEU 起初被用于衡量機器翻譯的質量,其設計思想是翻譯后得到的文本與參考文本越接近越好,所以適合衡量生成的文本與現實事件描述的接近程度。BLEU 采用一種n-gram 的匹配規則,即比較譯文和參考譯文之間n組詞的相似的占比。BLEU的計算公式如下:

其中:BP為長度懲罰因子,Wn=1/n,Pn為各階n-gram 的精度。

在實驗中,本文使用了BLEU-4,即采用4-gram 作為采集窗口的BLEU 值。BLEU 值在[0,1),越接近1,則表示生成文本和參考文本越接近。

同時,為了衡量GAN_PG 的質量,本文使用評分分布作為衡量指標,即比較生成文本在判別模型的評分分布與真實文本評分分布。由于生成模型和判別模型都處于理想狀態下的GAN_PG,為了滿足納什均衡的條件,其生成模型的評分分布一定是無限接近于真實文本的評分分布的。因此,本文選擇使用評分分布的差異來衡量GAN_PG的質量。

4.2 訓練事件描述生成模型

本文使用第3 章的技巧,使用分句后的事件描述來訓練事件描述生成模型,訓練過程中的損失函數變化如圖3 所示。在經歷了大約120 000 輪的訓練后,NLL 和KL 值都趨于穩定,最后NLL值停留在1.3附近,而KL散度停留在7附近。

圖3 NLL和KL值的變化Fig.3 Change of NLL and KL values

1)在已知樣本周圍采樣。

將對已知樣本的隱編碼z~p(z|x)進行采樣,其中x為已知的文本序列,即事件描述。p(z|x)為編碼過程,本文通過式(3)進行采樣。通過此舉,可以對生成器認為相似的句子作總體了解。實驗結果如表2所示。

表2 已知樣本采樣結果Tab.2 Sampling results of known samples

2)隨機采樣。

對未知的隱編碼進行采樣,同時檢驗在編碼空間中相鄰點的編碼結果的語義一致性和文法一致性。先在隱空間中進行采樣,獲得隱編碼z1、z2~Normal(0,1),然后在兩點之間進行線性插值,獲得編碼集合{zi}=t*z1+(1-t)*z2,0 ≤t≤1。隨后再對集合{zi}進行采樣,采樣結果見表3。

表3 隨機采樣結果(加粗為起點和終點)Tab.3 Random sampling results(sentences in bold as start and end)

從采樣的結果可以看出,這些句子在文法上都是通暢的,且相鄰的句子的語義也保持連貫性。例如“the event is free,but donations will be greatly appreciated.”和“the event is free,but you must rsvp on meetup.”。這也證明文本生成器的編碼器已學到如何在編碼的同時保持文本間語義和文法的連貫和一致性。

4.3 訓練GAN_PG

按照第3 章的方法來對生成模型進行預訓練,并使用最小化均方誤差來預訓練判別模型。正式訓練時,設置g-step為5,d-step 為1。使用的語料庫與前文幾乎相同,唯一差異是未將事件描述拆分成句子,而是將整個事件描述輸入。為了控制文本序列的長度,本文只使用了長度小于500 的事件描述。

圖4 為分別訓練了1,2,4 個epoch 后,生成模型隨機采樣1 000 次產生的文本序列在評價模型獲得的評價分布與真實數據獲得評價分布的對比。可以看到,多輪訓練后,生成文本的評價分布更接近真實文本,這也表明GAN_PG 的生成模型已學到如何生成高評價的文本序列,同時判別模型也學會如何分辨生成文本,并且g-step和d-step的設置也相對合理。

圖4 多輪訓練后的評分分布Fig.4 Score distribution after multiple rounds of training

采用真實文本作為參考語料庫,針對隨機采樣所生成的1 000 個樣本,預訓練結束后的BLEU 值為0.64,訓練4 個epoch后的BLEU 值為0.67,訓練后的BLEU 有所提高,說明生成的文本更接近真實文本。

4.4 生成新的事件描述

在完成訓練后,本文采用GAN_PG 中的生成模型來生成新的事件描述。由于使用了變分自編碼器,只需在隱空間中進行服從0-1 高斯分布的隨機采樣便可借助解碼器來獲得新的事件描述。為了減少隨機性,本文還使用束搜索來最大化當前文本序列出現的概率。表4 為部分隨機采樣下生成的新事件描述,其文法通順,語義連貫。

表4 隨機采樣下生成的新事件描述Tab.4 New event descriptions generated under random sampling

5 結語

本文采用了變分自編碼器作為生成模型,采用帶GRU 的神經網絡作為判別模型,組成了生成對抗網絡GAN_PG。對從Meetup平臺采集的數據進行多輪訓練,實驗證明,GAN_PG可以無監督地生成高質量的事件描述,并且生成事件描述的評價分布也與真實的事件描述類似,且BLEU-4 值為0.67,表明生成的事件描述與真實事件描述是相似的。本次研究探索了英文事件描述的生成方法,此方法進一步完備后可轉化為EBSN 平臺的事件描述自動生成功能,促進平臺智能化發展。后續的研究中,擬借助類似方法嘗試生成中文事件描述。

猜你喜歡
文本模型
一半模型
重要模型『一線三等角』
初中群文閱讀的文本選擇及組織
甘肅教育(2020年8期)2020-06-11 06:10:02
重尾非線性自回歸模型自加權M-估計的漸近分布
在808DA上文本顯示的改善
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
3D打印中的模型分割與打包
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學隱喻
論《柳毅傳》對前代文本的繼承與轉化
人間(2015年20期)2016-01-04 12:47:10
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
主站蜘蛛池模板: 全色黄大色大片免费久久老太| 久久99热66这里只有精品一| 色老头综合网| 日韩欧美中文| 丁香婷婷久久| 99成人在线观看| 99精品这里只有精品高清视频| 无码免费的亚洲视频| 手机在线免费毛片| 亚洲第一区在线| 老司机精品久久| 国产青青操| 国产精品主播| 最新国产午夜精品视频成人| 亚洲AV永久无码精品古装片| 亚洲最新地址| 亚洲人成色在线观看| 免费在线不卡视频| 最近最新中文字幕在线第一页| 99视频免费观看| 亚洲国产天堂久久综合| 亚洲AV成人一区二区三区AV| 国产精品30p| 亚洲精品成人福利在线电影| 亚洲人网站| 国产探花在线视频| 成年A级毛片| 无码国产伊人| 亚洲二区视频| 热这里只有精品国产热门精品| 国产99视频精品免费观看9e| 色综合a怡红院怡红院首页| 伊人色综合久久天天| 欧美www在线观看| 亚洲男人天堂久久| 日韩不卡免费视频| 国产精品原创不卡在线| 久久香蕉国产线看观看精品蕉| 2020久久国产综合精品swag| 九九久久99精品| 日韩在线欧美在线| 呦系列视频一区二区三区| 伊人久久久久久久| 国产欧美日韩va| 69免费在线视频| 亚洲电影天堂在线国语对白| 天天躁夜夜躁狠狠躁图片| 女人毛片a级大学毛片免费| 亚洲第一福利视频导航| 99热这里只有免费国产精品| 欧美黄网站免费观看| 幺女国产一级毛片| 巨熟乳波霸若妻中文观看免费| 欧美午夜在线播放| 国产特级毛片| 四虎在线观看视频高清无码| 国产精品jizz在线观看软件| 午夜精品久久久久久久99热下载| 国产日韩欧美精品区性色| 午夜精品影院| 日本免费福利视频| 亚洲欧洲国产成人综合不卡| 波多野结衣无码AV在线| 亚洲男人的天堂视频| 亚洲日韩AV无码一区二区三区人| 一级成人a毛片免费播放| 亚洲福利一区二区三区| 亚洲有码在线播放| 精品国产成人a在线观看| 色哟哟国产成人精品| 免费Aⅴ片在线观看蜜芽Tⅴ| 国产精品制服| 日本人妻一区二区三区不卡影院| 中文字幕亚洲另类天堂| 亚洲第一精品福利| 四虎精品国产AV二区| 丰满少妇αⅴ无码区| 福利在线不卡一区| 免费 国产 无码久久久| 最新国产精品第1页| 91视频青青草| 国内老司机精品视频在线播出|