[發明專利]自動生成文本的方法和裝置在審
| 申請號: | 201810119213.4 | 申請日: | 2018-02-06 |
| 公開(公告)號: | CN108334497A | 公開(公告)日: | 2018-07-27 |
| 發明(設計)人: | 秦曾昌;萬濤;王恒 | 申請(專利權)人: | 北京航空航天大學 |
| 主分類號: | G06F17/27 | 分類號: | G06F17/27;G06N3/04;G06N3/08 |
| 代理公司: | 北京匯捷知識產權代理事務所(普通合伙) 11531 | 代理人: | 于鵬 |
| 地址: | 100191*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 文本 自動生成 循環神經網絡 編碼器 卷積神經網絡 自然語言處理 方法和裝置 數據預處理 對抗訓練 模型構建 模型驗證 強化學習 數據獲取 網絡訓練 文本生成 判別器 對抗 變差 融合 全局 網絡 學習 | ||
本發明公開了一種自動生成文本的方法,包括以下步驟:數據獲取;數據預處理;模型構建;損失定義;模型預訓練;模型對抗訓練模型驗證。本發明結合循環神經網絡和變分自編碼器,以及加上對抗網絡訓練模式,使得生成的文本既避免了隨著長度變長,文本質量變差的問題,也避免文本生成單一的問題。該方法應用了在自然語言處理領域常用的循環神經網絡作為基礎,在上面融合了變分自編碼器,能夠更好地學習到文本的分布。后期的效果提升,使用了生成對抗網絡的思想,運用卷積神經網絡作為判別器,使用了強化學習來進行訓練,在全局上對模型進行訓練,達到更好的效果。本發明還公開了一種自動生成文本的裝置。
技術領域
本發明涉及計算機自然語言處理技術領域,特別是涉及一種自動生成文本的方法和裝置。
背景技術
文本自動生成是自然語言處理領域的一個重要研究方向,實現文本自動生成也是人工智能走向成熟的一個重要標志。我們期待未來有一天計算機能夠像人類一樣會寫作,能夠撰寫出高質量的自然語言文本。對于文本生成的應用,在生活中十分廣泛,首先可以分成監督式和無監督式的文本生成。對于監督的文本生成,例如機器翻譯、智能問答系統、對話系統以及文本摘要。對于無監督的文本生成,通過學習到數據的原本分布,然后可以生成與原本數據類似的樣本,例如詩歌創作、音樂創作等。利用文本生成,我們可以實現更加智能和自然的人機交互,我們也可以通過文本自動生成系統替代編輯實現新聞的自動撰寫與發布。
開始,使用循環神經網絡語言模型來進行文本生成,使用的是最大似然估計來進行訓練的,生成的文本會有一個問題,就是在文本生成的過程中,句子長度越長,句子質量越差。后面就有使用強化學習和對抗網絡來進行文本生成的問題,解決了這個問題,雖然改進之后,可以生成質量比較高的文本,但是生成的文本比較單一。有鑒于此,有必要針對文本生成單一的問題,研發一種新的文本生成的方法。
發明內容
基于此,有必要針對傳統技術存在的問題,提供一種自動生成文本的方法和裝置,該方法應用了在自然語言處理領域常用的循環神經網絡作為基礎,在上面融合了變分自編碼器,能夠更好地學習到文本的分布。后期的效果提升,使用了生成對抗網絡的思想,運用卷積神經網絡作為判別器,使用了強化學習來進行訓練,在全局上對模型進行訓練,達到更好的效果。
第一方面,本發明實施例提供了一種自動生成文本的方法,所述方法包括:對獲取的文本數據集基于構建模型的應用階段進行劃分;根據訓練目標信息構造出帶潛變量的生成對抗網絡模型,并對所述生成對抗網絡模型中的損失函數進行定義;對所述生成對抗網絡模型進行預訓練;使用預訓練好的參數進行模型初始化,并對所述生成對抗網絡模型進行對抗訓練;通過對所述生成對抗網絡模型進行對抗訓練后獲取訓練完成的生成器中的大數據樣本,計算生成的所述大數據樣本與測試集之間的bleu分數。
在其中一個實施例中,還包括:調用多個自然語言文本數據集,將多個所述自然語言文本數據集定義為所述文本數據集,以及將多個所述自然語言文本數據集中的文本通過預處理轉化為訓練帶潛變量的生成對抗網絡的所需要的形式。
在其中一個實施例中,還包括:對原始的文本進行分詞;對所有詞進行統計,按照詞頻由高到低進行排序,建立詞表;對所有句子的長度進行統計,選擇一個合適的句子的最大長度L1,以實現預設部分的文本信息到達預設完整度;對輸入的數據進行長度調整,對于長度大于L1的句子,進行截取為長度L1,于長度小于最大長度的句子,進行填充符的填充操作,其中,所述填充符為預先設定,在整個文本處理過程中,每句句首和句尾都添加有開始符和結束符,若長度小于預設最大長度,則在所述結束符前填充所述填充符;對所有的句子進行隨機打亂,然后按照9:1劃分成訓練集和測試集,其中,所述訓練集為參與訓練的樣本,所述測試集用于作為模型的評測數據集;根據所述詞表,將訓練數據中的所有的詞替換成數字形式;其中,所述詞表中設置有一個預設詞表大小v1,所有數字大于v1的詞,通過unk符號來進行替代,所述unk符號為預設符號,用于替換超過詞表大小的詞。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京航空航天大學,未經北京航空航天大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810119213.4/2.html,轉載請聲明來源鉆瓜專利網。





