本發(fā)明屬于人工智能音樂生成,具體涉及一種基于用戶通俗口語表達(dá)的端到端歌曲生成方法和系統(tǒng)。
背景技術(shù):
1、文本到歌曲生成旨在根據(jù)描述性文本創(chuàng)建歌曲。先前研究通常側(cè)重于歌曲創(chuàng)作的特定方面,例如文本到音樂、歌詞到旋律和樂譜到歌曲,但并未涵蓋整個歌曲創(chuàng)作過程。在文本到音樂生成方面,諸如musiclm和musicgen等模型利用基于采用單階段transformer語言模型通過基于量化的音頻編解碼器,進(jìn)行文本到音樂的生成,并采用高效的碼本交織模式,并采用大語言模型和擴(kuò)散模型來生成高質(zhì)量的音頻。對于歌詞到旋律生成,songmass,telemelody,和songglm以歌詞為輸入并輸出旋律,確保歌詞與旋律關(guān)聯(lián)。對于樂譜到歌曲生成,melodist采用了兩階段方法,包括從給定樂譜生成歌聲以及基于歌聲和自然語言提示生成伴奏。文本到歌曲生成平臺,如suno,skymusic,和songr,其能力受到廣泛關(guān)注。然而,這些平臺通常不提供其數(shù)據(jù)集和方法的訪問權(quán)限,這可能會限制可重復(fù)性并給未來的研究帶來挑戰(zhàn),同時它可能遇到諸如對輸入文本描述的理解不佳以及生成的歌曲缺乏結(jié)構(gòu)等問題。
2、在音樂生成領(lǐng)域,盡管迄今為止已經(jīng)提出了許多數(shù)據(jù)集,包括使用音樂信息檢索(mir)算法或大型語言模型(llm)的自動注釋以及手動注釋得出的數(shù)據(jù)集,自動標(biāo)注數(shù)據(jù)集采用現(xiàn)有的音樂信息檢索算法,從符號音樂或音頻音樂中提取音樂屬性。然后,將提取的屬性合并到完整的描述性文本中,或者視為描述性標(biāo)簽。msd收集了大量的音樂數(shù)據(jù),包括通過echo?nest?analyze?api(mir工具包)獲取的音頻、midi和標(biāo)簽。pop909提供了一個包含音頻、主旋律譜和其他音樂屬性(如調(diào)和節(jié)拍)的數(shù)據(jù)集。musecoco和mustango從原始音頻中提取特征,然后利用chatgpt將這些特征整合成描述文本。noise2music中的mulamcap利用大型語言模型生成一組音樂描述文本,然后采用mulan(一種文本-音樂嵌入模型)將這些文本與數(shù)據(jù)集中的音樂音頻進(jìn)行匹配。盡管如此,通過自動標(biāo)注獲得的數(shù)據(jù)集與復(fù)雜的人類描述之間仍存在顯著的語義差距,這會降低數(shù)據(jù)集的準(zhǔn)確性并限制模型的性能。
3、手動標(biāo)注數(shù)據(jù)集收集來自音樂網(wǎng)站的描述或標(biāo)簽,或者包括專業(yè)音樂人標(biāo)注的數(shù)據(jù)。hooktheory是一個音樂網(wǎng)站,用戶在上面上傳帶有諸如旋律、和弦和節(jié)拍等標(biāo)注的音頻。mtg和mousai使用音樂網(wǎng)站上的相應(yīng)標(biāo)簽作為描述標(biāo)簽,而erniemusic則使用音樂評論作為音樂描述,并據(jù)此建立數(shù)據(jù)集。musiclm提供了一個由專業(yè)音樂人標(biāo)注的音樂描述數(shù)據(jù)集musiccaps。然而,目前的手動標(biāo)注數(shù)據(jù)集受限于專家的標(biāo)注和有限的描述范圍,這與普通大眾提供的描述顯著不同。此外,現(xiàn)有的手動標(biāo)注數(shù)據(jù)集通常每條記錄僅由一個人標(biāo)注,這也可能導(dǎo)致由于人為錯誤或偏見而產(chǎn)生的不準(zhǔn)確性。
技術(shù)實(shí)現(xiàn)思路
1、鑒于上述,本發(fā)明的目的是提供一種基于用戶通俗口語表達(dá)的端到端歌曲生成方法和系統(tǒng),在充分理解的口語化表達(dá)的基礎(chǔ)上創(chuàng)建歌曲,并將用戶的通俗口語表達(dá)與創(chuàng)建的歌曲進(jìn)行匹配。
2、為實(shí)現(xiàn)上述發(fā)明目的,實(shí)施例提供的一種基于用戶通俗口語表達(dá)的端到端歌曲生成系統(tǒng),包括:
3、獲取模塊,其用于獲取用戶輸入的通俗口語表達(dá)文本并將其作為描述文本提示詞;
4、歌詞生成模塊,其用于采用大語言模型根據(jù)描述文本提示詞生成具有樂段結(jié)構(gòu)的歌詞序列;
5、音頻生成模塊,其用于采用生成模型基于具有樂段結(jié)構(gòu)的歌詞序列進(jìn)行去噪處理來生成表示音樂的潛在概率分布,并基于潛在概率分布在vae模型的音頻數(shù)據(jù)空間中進(jìn)行搜索得到歌詞序列對應(yīng)的音頻分布,音頻分布中的每個點(diǎn)表示一段音頻,將音頻分布轉(zhuǎn)換成頻譜圖后,將頻譜圖轉(zhuǎn)換為歌曲的音頻數(shù)據(jù)。
6、優(yōu)選地,所述具有樂段結(jié)構(gòu)的歌詞序列包括由歌詞組成的序列,在序列中歌詞帶有標(biāo)簽,其中標(biāo)簽包括音色、樂器、音效、風(fēng)格、以及樂段結(jié)構(gòu)標(biāo)簽,樂段結(jié)構(gòu)標(biāo)簽包括前奏、主歌、預(yù)副歌、副歌、橋段或間奏、以及結(jié)語;
7、在忽略歌詞情況下,將樂段結(jié)構(gòu)標(biāo)簽通過分隔標(biāo)簽分隔排列,形成樂段結(jié)構(gòu)。
8、優(yōu)選地,所述采用生成模型基于具有樂段結(jié)構(gòu)的歌詞序列進(jìn)行去噪處理來生成表示音樂的潛在概率分布,包括:
9、初始化連續(xù)的多個時間窗口,針對每個時間窗口,從具有樂段結(jié)構(gòu)的歌詞序列中提取與時間窗口長度匹配的至少部分歌詞序列作為當(dāng)前輸入歌詞序列,基于當(dāng)前輸入歌詞序列和前一時間窗口對應(yīng)的生成音頻數(shù)據(jù)通過生成模型進(jìn)行連續(xù)去噪,生成當(dāng)前時間窗口對應(yīng)的表示音樂的潛在概率分布。
10、優(yōu)選地,所述對基于當(dāng)前輸入歌詞序列和前一時間窗口對應(yīng)的生成音頻數(shù)據(jù)通過生成模型進(jìn)行連續(xù)去噪,生成當(dāng)前時間窗口對應(yīng)的表示音樂的潛在概率分布,包括:
11、針對當(dāng)前時間窗口,將前一時間窗口對應(yīng)的生成音頻數(shù)據(jù)、描述文本提示詞通過clap處理形成嵌入向量后與當(dāng)前噪聲拼接形成拼接向量并輸入至生成模型,同時將當(dāng)前輸入歌詞序列也輸入到生成模型,在生成模型中進(jìn)行時間步t的去噪處理得到時間步t對應(yīng)的去噪結(jié)果,該去噪結(jié)果作為時間步t-1的當(dāng)前噪聲;
12、其中,t取值為[0,t],當(dāng)t取t時,時間步t對應(yīng)的當(dāng)前噪聲為初始隨機(jī)噪聲,時間步t對應(yīng)的前一時間窗口對應(yīng)的生成音頻數(shù)據(jù)為空向量;當(dāng)t取0時,時間步0對應(yīng)的去噪結(jié)果認(rèn)為是無噪聲結(jié)果,作為表示音樂的潛在概率分布。
13、優(yōu)選地,所述生成模型包括用于基于拼接向量和歌詞序列進(jìn)行噪聲生成的dit子模型、和基于生成噪聲進(jìn)行去噪計(jì)算的ddpm子模型;
14、在dit模型中,輸入的拼接向量作為噪聲潛在向量經(jīng)過塊劃分和第一層歸一化處理后,通過多頭自注意力處理來關(guān)注第一重要特征,并將第一重要特征和多頭自注意力處理的輸入向量通過第一殘差連接拼接后再經(jīng)過第二層歸一化處理得到輸入的拼接向量對應(yīng)處理后第一向量;
15、當(dāng)前輸入歌詞序列經(jīng)過嵌入處理得到嵌入向量后與第一向量進(jìn)行多頭交叉注意力處理來關(guān)注第二重要特征,并將第二重要特征與第一殘差連接拼接結(jié)果通過第二殘差連接拼接后得到第二向量;
16、第二向量經(jīng)過第三層歸一化和逐點(diǎn)前饋處理后與第二向量再拼接,拼接后結(jié)果通過第四層歸一化、線性映射和形狀調(diào)整后得到噪聲分布。
17、優(yōu)選地,所述dit子模型替換為sit子模型,sit子模型中,在形狀調(diào)整過程中,通過采樣器的選擇進(jìn)行隨機(jī)性采樣,基于隨機(jī)采樣結(jié)果來生成噪聲分布;
18、dit子模型的插值框架中通過選擇的插值參數(shù)在生成模型輸出的潛在概率分布和vae的高維正態(tài)分布空間找到一個映射關(guān)系,基于映射關(guān)系來搜索確定歌詞序列對應(yīng)的音頻分布。
19、優(yōu)選地,所述vae模型包括vae編碼器和vae解碼器,基于自監(jiān)督訓(xùn)練得到,其中vae編碼器用于將輸入的音頻數(shù)據(jù)壓縮編碼到音頻數(shù)據(jù)空間的音頻分布,vae解碼器用于將音頻數(shù)據(jù)空間的音頻分布解碼生成頻譜圖;
20、訓(xùn)練后的vae編碼器對應(yīng)的音頻數(shù)據(jù)空間的音頻分布被采樣作為訓(xùn)練生成模型的樣本數(shù)據(jù);
21、訓(xùn)練后的vae解碼器用于在應(yīng)用時將音頻分布轉(zhuǎn)換成頻譜圖。
22、優(yōu)選地,所述生成模型在被應(yīng)用之前需要經(jīng)過參數(shù)優(yōu)化,參數(shù)優(yōu)化時,對vae模型的音頻數(shù)據(jù)空間的音頻分布進(jìn)行采樣得到樣本數(shù)據(jù),并以音頻數(shù)據(jù)作為標(biāo)簽,對生成模型進(jìn)行基于樣本數(shù)據(jù)在標(biāo)簽下的監(jiān)督訓(xùn)練,以優(yōu)化生成模型參數(shù)。
23、優(yōu)選地,所述大語言模型在被應(yīng)用之前經(jīng)過微調(diào),微調(diào)時采用的文本數(shù)據(jù)包括:采用專業(yè)人士和業(yè)務(wù)愛好者對音樂進(jìn)行標(biāo)注的音樂注釋,其中音樂注釋采用專業(yè)化描述和通俗口語化描述,并且專業(yè)化描述與通俗口語化描述形成數(shù)據(jù)對,利用數(shù)據(jù)對對大語言模型進(jìn)行微調(diào),使其能夠基于通俗口語化描述文本轉(zhuǎn)換為具有樂段結(jié)構(gòu)的歌詞序列。
24、為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明實(shí)施例還提供了一種基于用戶通俗口語表達(dá)的端到端歌曲生成方法,采用上述端到端歌曲生成系統(tǒng),所述方法包括以下步驟:
25、利用獲取模塊獲取用戶輸入的通俗口語表達(dá)文本并將其作為描述文本提示詞;
26、利用歌詞生成模塊采用大語言模型根據(jù)描述文本提示詞生成具有樂段結(jié)構(gòu)的歌詞序列;
27、利用音樂生成模塊基于歌詞序列生成音頻數(shù)據(jù),具體包括:在每個時間窗口內(nèi),采用生成模型基于具有樂段結(jié)構(gòu)的歌詞序列進(jìn)行去噪處理來生成表示音樂的潛在概率分布,并基于潛在概率分布在vae模型的音頻數(shù)據(jù)空間中進(jìn)行搜索得到歌詞序列對應(yīng)的高維音頻分布,音頻分布中的每個點(diǎn)表示一段音頻,將高維音頻分布轉(zhuǎn)換成頻譜圖后,將頻譜圖轉(zhuǎn)換為歌曲的音頻數(shù)據(jù),多個時間窗口按序生成的音頻數(shù)據(jù)組成最終音頻數(shù)據(jù)。
28、為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明實(shí)施例還提供了一種計(jì)算設(shè)備,包括存儲器和一個或多個處理器,所述存儲器中存儲有可執(zhí)行代碼,所述一個或多個處理器執(zhí)行所述可執(zhí)行代碼時,用于實(shí)現(xiàn)上述基于用戶通俗口語表達(dá)的端到端歌曲生成方法。
29、與現(xiàn)有技術(shù)相比,本發(fā)明具有的有益效果至少包括:
30、本發(fā)明采用大語言模型將通俗口語表達(dá)文本轉(zhuǎn)換為具有樂段結(jié)構(gòu)的歌詞序列,這樣能夠充分理解口語表達(dá),歌曲創(chuàng)作的普適性更強(qiáng),且能夠充分捕捉歌曲的音樂結(jié)構(gòu),包括樂句結(jié)構(gòu)和押韻格式。在此基礎(chǔ)上,通過生成模型生成音樂的潛在概率分布,通過vae模型來搜索聚類高維音頻分布,通過將高維音頻分布轉(zhuǎn)換成頻譜圖再轉(zhuǎn)換為歌曲的音頻數(shù)據(jù),這樣自動生成歌曲更豐富,且創(chuàng)作的歌曲能夠高度與通俗口語表達(dá)匹配和對齊。