[發明專利]一種基于Word2Vec、LSTM和注意力機制的中文歌詞生成方法有效
| 申請號: | 202010880446.3 | 申請日: | 2020-08-27 |
| 公開(公告)號: | CN112163414B | 公開(公告)日: | 2022-09-20 |
| 發明(設計)人: | 陳啟軍;何宗濤;劉成菊 | 申請(專利權)人: | 同濟大學 |
| 主分類號: | G06F40/211 | 分類號: | G06F40/211;G06F40/289;G06F40/30;G06F40/242;G06N3/04;G06N3/08 |
| 代理公司: | 上海科盛知識產權代理有限公司 31225 | 代理人: | 楊宏泰 |
| 地址: | 200092 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 word2vec lstm 注意力 機制 中文歌詞 生成 方法 | ||
1.一種基于Word2Vec、LSTM和注意力機制的中文歌詞生成方法,其特征在于,包括以下步驟:
1)獲取關鍵詞進行預處理,所述的關鍵詞包括控制關鍵詞和上一句歌詞;
當生成的歌詞為首句歌詞時,所述的輸入關鍵詞為控制關鍵詞;當生成的歌詞為后續歌詞時,所述的輸入關鍵詞為上一句歌詞,所述的控制關鍵詞包括歌詞風格、歌詞劇場、歌詞韻腳;
2)輸入關鍵詞,基于LSTM和注意力機制的歌詞生成模型并結合后處理操作,依次生成句中詞和結尾詞,完成一句歌詞的生成,所述的歌詞生成模型包括編碼器和解碼器,所述的編碼器為雙向LSTM編碼器,所述的解碼器為單向LSTM加注意力機制解碼器;
所述的歌詞生成模型生成歌詞的步驟具體包括:
201)雙向LSTM編碼器將輸入的關鍵詞編碼成語義編碼向量;
202)注意力機制計算狀態向量和語義編碼向量的匹配程度,獲取注意力權值,加權求得語義向量;
203)將上一時刻狀態、上一時刻輸出和當前語義向量作為輸入,解碼得到當前時刻輸出詞的概率分布;
所述的注意力機制為Bahdanau注意力算法,所述的狀態向量包括解碼器狀態向量和編碼器狀態向量;
所述的后處理操作包括類束搜索、添加結束位置符、添加情緒引導詞和多元啟發搜索,所述的類束搜索將當前輸出詞中概率高于設定閾值的詞語劃入可行集,并從中通過隨機數挑選一個詞語作為句中詞,所述的歌詞生成模型生成歌詞時添加情緒引導詞,用于控制生成歌詞的情緒,所述的情緒引導詞包括“樂”、“好”、“怒”、“哀”、“懼”和“驚”,當遇到結束位置符時,通過多源啟發算法生成結尾詞,所述的多源啟發算法從可行集中選取韻腳符合且概率最大的詞語作為結尾詞輸出;
3)重復執行步驟1)-步驟2),直至生成一篇完整的歌詞,所述的歌詞生成模型的訓練步驟包括:
211)通過爬蟲算法獲取網絡公開中文歌詞資源;
212)預先建立一個詞典,使用詞典加條件隨機場的方法對已登錄詞進行分割,使用隱馬爾科夫模型對未登錄詞進行分割方式,并去除停用詞,形成詞匯表;
213)使用Word2Vec方法將歌詞轉換為Word2Vec向量,并將該歌詞對應的下一句歌詞轉換成數字序列,再拼接位置結束符,所述的Word2Vec方法將歌詞轉換為Word2Vec向量具體包括:
2131)構建包括CBOW模型和Skip-gram模型的訓練模型并利用詞匯表進行訓練;
2132)訓練結束后分別取出CBOW模型和Skip-gram模型的隱層權重并拼接起來,形成Word2Vec矩陣;
2133)Word2Vec矩陣的第i行對應為詞匯表中第i個詞語的Word2Vec向量;
214)利用交叉熵損失與Adam優化器進行模型訓練,根據訓練過程中的損失曲線與豐富度曲線選取最優的模型作為歌詞生成模型;
所述的已登錄詞為詞典范圍內的詞,所述的未登錄詞為詞典范圍外的詞。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于同濟大學,未經同濟大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010880446.3/1.html,轉載請聲明來源鉆瓜專利網。





