當前位置:
首頁 > 科技 > 谷歌大腦提出MaskGAN,可更好地實現文本生成

谷歌大腦提出MaskGAN,可更好地實現文本生成

圖:pixabay

原文來源:arXiv

作者:William Fedus、Ian Goodfellow、Andrew M. Dai

「雷克世界」編譯:嗯~是阿童木呀

可以這樣說,神經文本生成模型通常是自回歸語言模型或seq2seq模型。這些模型通過序列性對單詞進行採樣從而生成文本,且每個單詞是以前一個單詞為條件產生的,並且是若干種機器翻譯和總結基準的最新技術。這些基準通常由驗證複雜度(validation perplexity)進行定義的,儘管這不是對生成文本質量的直接度量標準。另外,這些模型通常是通過最大似然法(maximum likelihood)和teacher forcing訓練的。這些方法非常適合於優化複雜度,但是由於生成文本是基於那些可能在訓練期間從未觀察到的單詞序列生成的,因此可能導致樣本的質量較差。我們提出使用生成對抗網路(GAN)改善樣本質量,它能夠明確地對生成器進行訓練以生成高質量的樣本,並在圖像生成方面取得了很大的成功。實際上,GAN最初設計的目的是用於輸出微分值(differentiable values),所以離散的語言生成對它們來說也是具有挑戰性的。我們認為,驗證複雜度本身並不能真正代表模型生成的文本的質量。因此,我們引入了一個演員評論家條件生成對抗網路(actor-critic conditional GAN),它填補了根據周圍上下文生成的缺失文本。我們進行了大量的定性和定量分析,結果表明,相較於用最大似然法訓練的模型,該方法能夠產生更真實的有條件和無條件的文本樣本。

seq2seq 生成器架構。藍色方塊代表已知標記,紫色方塊代表已輸出的標記。我們通過虛線展示了一個採樣過程。編碼器在掩碼序列中讀取,其中,掩碼標記用下劃線表示,然後解碼器通過使用編碼器隱藏狀態生成缺失標記。在這個例子中,生成器應該按照字母表順序進行填充(a,b,c,d,e)

循環神經網路(RNNs)是序列以及序列標記任務中最常見的生成模型。它們在語言建模、機器翻譯和文本分類任務中顯示出了令人印象深刻的結果。文本通常是從這些模型中生成的,通過對基於前一個單詞的分布和一個隱藏狀態進行採樣實現這一點,其中,該這隱藏狀態是由截止目前為止所生成的所有單詞的表示組成。這些模型通常是由最大似然法以一種被稱為teacher forcing的方法進行訓練的,其中要將對照單詞(round-truth words)反向饋到模型中以便生成句子的後續部分。但是在樣本生成過程中,這通常會存在一些問題,即模型經常被迫要以那些在訓練時間從未使用過的序列為基準進行相關操作,這往往會導致在RNN隱藏狀態中出現一些不可預測的動態。而專家已經提出諸如Professor Forcing和定期採樣(Scheduled Sampling)等方法以解決這個問題。這些方法通過使隱藏狀態的動態變為可預測的(Professor Forcing),或通過在訓練時間隨機以採樣單詞為基準進行相關操作,從而間接地起作用。然而,它們並不直接在RNN的輸出上指定一個成本函數以鼓勵高採樣質量。而我們提出的方法是可以實現這一點的。

用於 MaskGAN 和 MaskMLE 模型的PTB 數據集中的條件樣本

生成對抗網路(GANs)是一個用於在對抗設置中訓練生成模型的框架,其中,生成器生成試圖欺騙鑒別器的圖片,而鑒別器被訓練用以進行真實圖像和合成圖像的區分。相較於其他方法,GAN在生成更為真實的圖像方面已經取得了很大的成功,但是它們在文本序列的使用中存在一定的局限性。這是由於文本的離散性,使得在標準GAN訓練中,將梯度從鑒別器反向傳播回生成器是不可行的。我們通過使用強化學習(RL)對生成器進行訓練,同時仍使用最大似然法和隨機梯度下降(stochastic gradient descent)對鑒別器進行訓練,從而克服了這個問題。另外,GAN也經常面臨著諸如訓練不穩定和模式下降(Mode dropping)等問題,且這兩個問題在文本環境中都加劇了。當生成器幾乎沒有生成訓練集中的某些模式時,就會出現模式下降的問題,例如,使火山的所有生成圖像都變為同一火山的多個變體。這變成了文本生成中一個很重要的問題,因為在數據中存在許多複雜的模式,從二元語法(bigram)到短語再到較長的習語等。訓練穩定性也是一個問題,因為與圖像生成不同的是,文本是自回歸生成的,因此只有生成完整的句子後才能從鑒別器中觀察到具體的損失。當生成越來越長的句子時,這個問題久會更加複雜化了。

用於MaskGAN模型的PTB中的語言模型(無條件)樣本

我們通過在一個填充空白(fill-in-the-blank)或填充(in-filling)任務中訓練我們的模型,從而減少這些問題所帶來的影響。這與Bowman等人(於2016年)提出的任務相似,但我們所使用的環境具有更強的魯棒性。在這個任務中,一部分文本被刪除或編輯。該模型的目標是填充文本的缺失部分,從而使其與原始數據無法區分。在填充文本的過程中,模型自回歸地對截至目前為止已填充的標記(token)進行操作,就如同在標準語言建模中一樣,同時基於真實的已知上下文進行操作。如果整個文本的主體都被編輯,那麼問題就簡化為語言建模了。

在以往的自然語言GAN研究中,人們已經注意到設計每個時間步的誤差歸因(error attribution)的重要性了。文本填充任務自然而然地將這個問題考慮在內了,因為我們的鑒別器將對每個標記進行評估,並且因此向生成器提供細粒度的監督信號。考慮一下,例如,如果生成器在前 t-1 時間步生成一個與數據分布完美匹配的序列,隨後生成了一個異常標記yt(x1:t-1yt)。儘管現在整個序列由於錯誤標記的原因而明顯是合成的,但是對於在異常標記處而非其他處產生很高損失信號的鑒別模型來說,將可能產生一個具有更多信息的錯誤信號發送給生成器。

可以說,這一研究也為自然語言環境下的條件GAN模型提供了進一步的研究。

我們的研究進一步支持了與訓練和推理過程相匹配的情況,以產生更高質量的語言樣本。 通過GAN訓練,MaskGAN演算法直接實現了這一過程,並像人類評估人員的評估那樣,進一步提升了生成樣本的質量。

Mechanical Turk 平台對在 IMDB 評論中訓練的兩個模型的盲評估。來自每一個模型的 100 條評價(每條 40 個單詞長度)為無條件隨機採樣。評估者被詢問更喜歡每對樣本中的哪一個。對每個模型對的比較中進行了 300 次評分

在我們的實驗中,我們通常會發現,在那些連續單詞塊被掩碼的地方所進行的訓練,往往能夠產生更好的樣本。一個猜想是,這使得生成器組可以在自由運行模式下探索更長的序列。而相比之下,隨機掩碼通常具有較短的空白序列需要填充,所以GAN訓練的增益並不是很大。我們發現策略梯度方法與已學習評論家(learned critic)聯合起來的結果是非常有效的,但是對離散節點訓練的高度活躍的研究可能會呈現更為穩定的訓練過程。

我們還發現,注意力(attention)的使用對於所填充的單詞能夠充分基於輸入上下文來說是非常重要的。如果沒有注意力,填充將會填充合理的子序列,這些子序列在相鄰的周圍單詞的上下文中變得難以置信。考慮到這一點,我們猜想另一個有前景的途徑就是像Vaswani等人(於2017年)所考慮的那樣,採用只有注意力模型的GAN訓練。

總的來說,我們認為所提出的連續填充任務是減少模式崩潰的好方法,並且有助於文本GAN的訓練穩定性。我們的結果顯示,在較大的數據集(IMDB評論)上,MaskGAN樣本的表現比由人類評估所展示的相應的調優MaskMLE模型要好得多。我們還表明,儘管MaskGAN模型在對照值測試集上存在更高的複雜度,但我們仍然可以生產出高質量的樣本。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雷克世界 的精彩文章:

多國相繼出台政策法規:為自動駕駛的創新發展保駕護航
紐約大學指出AlphaZero被誇大,強調重視人工智慧先天因素

TAG:雷克世界 |