本技術(shù)涉及人工智能和大數(shù)據(jù),尤其涉及一種基于流模型的圖片生成方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、業(yè)內(nèi)在圖片生成的應(yīng)用中一般使用對(duì)抗神經(jīng)網(wǎng)絡(luò)gan的模型算法,gan的算法模型可解釋性較差:gan不是概率模型,是通過網(wǎng)絡(luò)完成的,是隱式的,所以不知道它到底學(xué)到了什么,不知道其遵循了什么分布訓(xùn)練時(shí)不穩(wěn)定:因?yàn)橐瑫r(shí)訓(xùn)練兩個(gè)網(wǎng)絡(luò),就有需要平衡的問題,訓(xùn)練不好的話容易模型坍塌,生成圖片時(shí)候的多樣性較差。后續(xù)雖然有改進(jìn)的版本,例如cgan,帶條件輸入的對(duì)抗神經(jīng)網(wǎng)絡(luò),可以通過輸入來控制輸出的風(fēng)格類型或者圖片內(nèi)容,但同樣面臨訓(xùn)練不穩(wěn)定的問題。
2、近年來,擴(kuò)散模型(stab?l?e?d?i?ffus?i?on)比較流行,這個(gè)模型通過對(duì)輸入圖片正向加噪再反向去噪還原輸入圖片來訓(xùn)練網(wǎng)絡(luò)參數(shù)。擴(kuò)散模型的缺點(diǎn)是速度慢,擴(kuò)散模型本身其實(shí)是基于馬爾科夫過程,在訓(xùn)練和推理的時(shí)候都需要進(jìn)行很多步驟導(dǎo)致速度效率低。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)實(shí)施例的目的在于提出一種基于流模型的圖片生成方法、裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì),其主要目的可以提高圖片的生成效率。
2、為了解決上述技術(shù)問題,本技術(shù)實(shí)施例提供一種基于流模型的圖片生成方法,采用了如下所述的技術(shù)方案:
3、一種基于流模型的圖片生成方法,包括下述步驟:
4、響應(yīng)于接收的有關(guān)圖片類型的標(biāo)簽文本,生成所述標(biāo)簽文本的文本向量;
5、獲取滿足先驗(yàn)分布的向量樣本集,從所述向量樣本集中隨機(jī)提取第一特征向量;
6、將所述文本向量與所述第一特征向量結(jié)合,并輸入預(yù)訓(xùn)練的流模型中,生成與所述第一特征向量對(duì)應(yīng)的第二特征向量;
7、基于所述第二特征向量生成對(duì)應(yīng)的圖片。
8、進(jìn)一步的,所述將所述文本向量與所述第一特征向量結(jié)合,并輸入預(yù)訓(xùn)練的流模型中,生成與所述第一特征向量對(duì)應(yīng)的第二特征向量包括下述步驟:
9、將所述文本向量作為一個(gè)塊向量;
10、將所述文本向量對(duì)應(yīng)的所述塊向量與包括n個(gè)塊特征向量的所述第一特征向量結(jié)合,得到包括n+1個(gè)塊向量的結(jié)合向量;
11、將所述結(jié)合向量輸入所述預(yù)訓(xùn)練的流模型中,生成與所述第一特征向量對(duì)應(yīng)的所述第二特征向量。
12、進(jìn)一步的,所述生成所述標(biāo)簽文本的文本向量的步驟,具體包括下述步驟:
13、獲取預(yù)訓(xùn)練的one?hot模型;
14、將所述標(biāo)簽文本輸入所述預(yù)訓(xùn)練的one?hot模型中,生成基于one-hot向量表示的所述文本向量;其中,所述文本向量與每個(gè)所述塊特征向量的維度相同。
15、進(jìn)一步的,所述將所述文本向量與所述第一特征向量結(jié)合,并輸入預(yù)訓(xùn)練的流模型中,生成與所述第一特征向量對(duì)應(yīng)的第二特征向量之前,還包括下述步驟:
16、從圖片訓(xùn)練樣本集中抽取當(dāng)前樣本圖片;
17、對(duì)所述當(dāng)前樣本圖片進(jìn)行特征編碼,得到當(dāng)前第二特征向量樣本;
18、將所述當(dāng)前第二特征向量樣本反向輸入流模型中,生成當(dāng)前第一特征向量樣本;
19、以所述當(dāng)前第一特征向量樣本滿足所述先驗(yàn)分布為基準(zhǔn),調(diào)整所述流模型的當(dāng)前參數(shù),直到滿足預(yù)設(shè)終止條件,以得到所述預(yù)訓(xùn)練的流模型。
20、進(jìn)一步的,所述對(duì)所述當(dāng)前樣本圖片進(jìn)行特征編碼包括下述步驟:
21、將所述當(dāng)前樣本圖片分割成大小相等的n個(gè)圖像塊;其中,n為大于等于2的整數(shù);
22、將所述n個(gè)圖像塊依序連接,并輸入預(yù)訓(xùn)練的塊向量生成模型,生成包括n個(gè)塊特征向量的所述當(dāng)前第二特征向量樣本;
23、基于最大池化法,將所有的所述塊特征向量的每個(gè)維度的最大值作為所述當(dāng)前第二特征向量樣本對(duì)應(yīng)的各維度的值;
24、將表征所述當(dāng)前樣本圖片的圖像類型的樣本標(biāo)簽文本對(duì)應(yīng)的樣本文本向量作為所述當(dāng)前第二特征向量樣本的第一個(gè)塊特征向量。
25、進(jìn)一步的,所述以所述當(dāng)前第一特征向量樣本滿足所述先驗(yàn)分布為基準(zhǔn),調(diào)整所述流模型的當(dāng)前參數(shù)包括下述步驟:
26、將所述第一特征向量的每個(gè)維度的值作為先驗(yàn)分布函數(shù)的輸入,得到每個(gè)維度對(duì)應(yīng)的輸出值;
27、計(jì)算每個(gè)所述輸出值相對(duì)于標(biāo)準(zhǔn)值的損失值;
28、對(duì)所有的所述損失值求和,得到總損失值;
29、基于所述總損失值,調(diào)整所述流模型的參數(shù);或,
30、當(dāng)所述先驗(yàn)分布為高斯分布,所述以所述當(dāng)前第一特征向量樣本滿足所述先驗(yàn)分布為基準(zhǔn),調(diào)整所述流模型的當(dāng)前參數(shù)包括下述步驟:
31、將所述第一特征向量的每個(gè)維度的值作為高斯分布函數(shù)(1)的輸入,得到每個(gè)維度對(duì)應(yīng)的輸出值;
32、
33、其中,μ為均值,σ為標(biāo)準(zhǔn)差,標(biāo)準(zhǔn)高斯分布的均值為0,標(biāo)準(zhǔn)差為1;
34、用1減去所述輸出值,得到每個(gè)所述輸出值對(duì)應(yīng)的損失值;
35、對(duì)所有的所述損失值求和,得到總損失值;
36、基于所述總損失值,調(diào)整所述流模型的參數(shù)。
37、進(jìn)一步的,所述將所述文本向量與所述第一特征向量結(jié)合,并輸入預(yù)訓(xùn)練的流模型中,生成與所述第一特征向量對(duì)應(yīng)的第二特征向量包括下述步驟:
38、將所述第一特征向量輸入所述流模型的耦合層,以將所述第一特征向量分為前d個(gè)向量和后d個(gè)向量;
39、復(fù)制所述第一特征向量中的前d個(gè)向量作為第二特征向量的前d個(gè)向量;
40、將所述第一特征向量的前d個(gè)向量經(jīng)過第一轉(zhuǎn)換層,得到第一轉(zhuǎn)換向量;
41、將所述第一特征向量的前d個(gè)向量經(jīng)過第二轉(zhuǎn)換層,得到第二轉(zhuǎn)換向量;
42、將所述第一特征向量的后d個(gè)向量與所述第一轉(zhuǎn)換向量做點(diǎn)積,再加上所述第二轉(zhuǎn)換向量,生成第二特征向量的后d個(gè)向量;
43、將所述第二特征向量的前d個(gè)向量與所述第二特征向量的后d個(gè)向量結(jié)拼接,得到所述的第二特征向量。
44、為了解決上述技術(shù)問題,本技術(shù)實(shí)施例還提供一種基于流模型的圖片生成裝置,采用了如下所述的技術(shù)方案:
45、一種基于流模型的圖片生成裝置,包括:
46、文本生成模塊,用于響應(yīng)于接收的有關(guān)圖片類型的標(biāo)簽文本,生成所述標(biāo)簽文本的文本向量;
47、向量提取模塊,用于獲取滿足先驗(yàn)分布的向量樣本集,從所述向量樣本集中隨機(jī)提取第一特征向量;
48、向量生成模塊,用于將所述文本向量與所述第一特征向量結(jié)合,并輸入預(yù)訓(xùn)練的流模型中,生成與所述第一特征向量對(duì)應(yīng)的第二特征向量;
49、圖片生成模塊,用于生成基于所述第二特征向量生成對(duì)應(yīng)的圖片。
50、為了解決上述技術(shù)問題,本技術(shù)實(shí)施例還提供一種計(jì)算機(jī)設(shè)備,采用了如下所述的技術(shù)方案:
51、一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器中存儲(chǔ)有計(jì)算機(jī)可讀指令,所述處理器執(zhí)行所述計(jì)算機(jī)可讀指令時(shí)實(shí)現(xiàn)如上面任一項(xiàng)所述的基于流模型的圖片生成方法的步驟。
52、為了解決上述技術(shù)問題,本技術(shù)實(shí)施例還提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),采用了如下所述的技術(shù)方案:
53、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)可讀指令,所述計(jì)算機(jī)可讀指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上面任一項(xiàng)所述的基于流模型的圖片生成方法的步驟。
54、與現(xiàn)有技術(shù)相比,本技術(shù)實(shí)施例主要有以下有益效果:
55、本技術(shù)實(shí)施例通過采用流模型生成圖片,由于流模型具有可逆性和精確推斷的優(yōu)點(diǎn),也就是流模型的生成過程是可逆的,可以精確地計(jì)算樣本的對(duì)數(shù)似然和梯度,這使得模型的訓(xùn)練和推斷過程更加穩(wěn)定和高效;另外,由于圖片生成過程是通過一系列可逆變換進(jìn)行的,流模型在生成圖片時(shí)可以快速進(jìn)行,不需要迭代采樣或優(yōu)化過程;
56、另外,用戶可以只輸入想要圖片類型的文本,以及從標(biāo)準(zhǔn)高斯分布中隨機(jī)采樣第一特征向量作為流模型的輸入,可以生成想要類型的圖片,因此圖片生成更高效,且符合用戶需求。