0
本文作者: 我在思考中 | 2021-09-15 11:01 |
作者 | 魏于翔
編輯 | 王曄
本文是對(duì)發(fā)表于計(jì)算機(jī)視覺和模式識(shí)別領(lǐng)域的頂級(jí)會(huì)議 ICCV 2021的論文“Orthogonal Jacobian Regularization for Unsupervised Disentanglement in Image Generation(用于無監(jiān)督圖像生成解耦的正交雅可比正則化)”的解讀。
該論文由哈爾濱工業(yè)大學(xué)與好未來合作,針對(duì)圖像生成中無監(jiān)督解耦問題,提出了一種正交雅可比正則化(Orthogonal Jacobian Regularization, OroJaR)用于學(xué)習(xí)解耦的生成模型。OroJaR通過約束輸入各維在輸出引起的變化之間的正交特性來實(shí)現(xiàn)模型的解耦,并使用輸出對(duì)輸入的雅可比矩陣表示這種變化。與之前的方法相比,OroJaR可以應(yīng)用于模型的多層,并以整體方式對(duì)輸出進(jìn)行約束,使得其可以更好的解耦空間相關(guān)的變化。
論文鏈接:https://arxiv.org/abs/2108.07668
代碼地址:https://github.com/csyxwei/OroJaR
近年來,無監(jiān)督解耦學(xué)習(xí)受到了廣泛的關(guān)注,不僅因?yàn)槠鋵?duì)理解生成模型的重要性,也因?yàn)槠鋵?duì)其他計(jì)算機(jī)視覺任務(wù)也有所幫助,如可控圖像生成、圖像編輯等。對(duì)于一個(gè)解耦的特征,其各維控制了輸出中不相關(guān)的變化,從給定的數(shù)據(jù)集中無監(jiān)督學(xué)習(xí)到解耦的特征仍是當(dāng)前人工智能領(lǐng)域的一個(gè)重要挑戰(zhàn)。
現(xiàn)有的無監(jiān)督解耦方法主要基于兩種主流的生成模型:變分自編碼器(Variational Autoencoder, VAE)和生成式對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Networks, GAN)。基于VAE的方法如-VAE[1],F(xiàn)actorVAE[2]等主要通過約束隱變量之間的獨(dú)立性來實(shí)現(xiàn)解耦,但受限于VAE,這些方法生成圖像的質(zhì)量往往有限。隨著GAN在圖像生成領(lǐng)域取得的成功,許多基于GAN的無監(jiān)督解耦方法被提出。SeFa[3]通過對(duì)pretrain的GAN的第一層全連接層參數(shù)分解得到一系列解耦的隱空間方向向量。但SeFa只能作用于第一層且是后處理的方式,限制了其解耦性能。Hessian Penalty[4]通過約束輸出對(duì)輸入的Hessian矩陣是對(duì)角的來實(shí)現(xiàn)解耦。但其使用max函數(shù)將約束從標(biāo)量函數(shù)推廣到向量函數(shù),獨(dú)立的約束輸出的各個(gè)值使得其不能很好的解耦一些空間相關(guān)的變化(如,形狀、大小、旋轉(zhuǎn)等)。
受上述方法的啟發(fā),論文提出了一個(gè)用于無監(jiān)督圖像生成解耦的正交雅可比正則化(OroJaR),用于更好的解耦生成模型。
2.1正交雅可比正則化(OroJaR)
令是一個(gè)生成模型,其中
是輸入向量,
表示輸入的第
維。
是網(wǎng)絡(luò)的輸出,
進(jìn)一步用于表示
的第
層的輸出。論文基于一個(gè)非常直觀的想法:當(dāng)改變輸入的其中一維時(shí),其在輸出中引起的變化應(yīng)該與其他維引起的變化獨(dú)立(不相關(guān)),即
和
在輸出中引起的變化是獨(dú)立的。在論文中,作者使用雅可比向量
表示輸入第維在輸出中引起的變化,同時(shí)為了實(shí)現(xiàn)解耦,作者約束輸入各維對(duì)應(yīng)的雅可比向量相互正交,
兩個(gè)向量的正交也意味著它們是不相關(guān)的,即輸入各維所引起的變化是獨(dú)立的。考慮所有輸入維度,作者提出了正交雅可比正則化(OroJaR),來幫助模型學(xué)習(xí)到解耦的特征:
其中表示
對(duì)z輸入的雅可比矩陣,
表示逐元素乘積。I表示單位陣,
表示全1的矩陣。OroJaR以整體方式對(duì)輸出進(jìn)行約束,而不是像Hessian Penalty一樣獨(dú)立的約束輸出的每一個(gè)元素,這使得OroJaR可以更好的解耦復(fù)雜的、空間相關(guān)的變化。
2.2近似訓(xùn)練加速
實(shí)際訓(xùn)練時(shí),公式 (2)中雅可比矩陣的計(jì)算是非常耗時(shí)的。為了加速運(yùn)算,作者基于Hutchinson近似[4,7],將公式 (2)的計(jì)算重寫為,
其中V是Rademacher向量(每維為-1或1的概率為0.5),表示方差計(jì)算。
是
沿著V方向的一階導(dǎo)數(shù)乘上
,其可以進(jìn)一步使用一階差分近似[8]估計(jì)得到:
2.3在GAN中的應(yīng)用
OroJaR可以通過兩種方式應(yīng)用于GAN中,一種是在訓(xùn)練GAN時(shí)用作正則項(xiàng),一種是用于尋找pretrain的GAN中一些解耦的方向向量。
GAN訓(xùn)練時(shí),判別器和生成器
迭代的使用
和
更新:
其中是某一個(gè)具體的GAN Loss。將OroJaR引入GAN的訓(xùn)練后,生成器的訓(xùn)練Loss調(diào)整為:
其中用于控制不同損失之間的權(quán)重。引入
到GAN的訓(xùn)練中可以幫模型學(xué)習(xí)到解耦的特征,從而實(shí)現(xiàn)可控的圖像生成。
OroJaR也可以用于發(fā)現(xiàn)pretrain的GAN的隱空間中可解釋的方向。具體地,作者引入一個(gè)可學(xué)習(xí)的正交矩陣,其中
是要學(xué)習(xí)的正交方向的個(gè)數(shù),
是隱空間維度。
的每列存儲(chǔ)了要學(xué)習(xí)的正交方向。
的優(yōu)化公式為:
其中是一個(gè)one-hot的向量,用于索引
的某一列,
是一個(gè)標(biāo)量用于控制
應(yīng)該沿著該方向移動(dòng)多遠(yuǎn)。與公式 (7)不同的是,此時(shí)的OroJaR是對(duì)求的
而不是
。求得
之后,就可以通過
來對(duì)生成圖像進(jìn)行可控的編輯。
論文使用了Edges+Shoes[9]、CLEVR[4]、Dsprites[10]等數(shù)據(jù)集對(duì)OroJaR進(jìn)行了詳細(xì)的定性和定量實(shí)驗(yàn)。
3.1定性實(shí)驗(yàn)
作者首先在Edges+Shoes上進(jìn)行了實(shí)驗(yàn),該數(shù)據(jù)集是由5k張真實(shí)鞋子和5k張輪廓鞋子組成的真實(shí)數(shù)據(jù)集。從下圖中可以看到,雖然沒有其真實(shí)的變化因子,但SeFa[3]、Hessian Penalty[4]和OroJaR都學(xué)到了相同的變化,即鞋子的樣式和形狀,且論文提出的OroJaR具有更多樣的形狀變化。
下圖給出了論文提出的OroJaR與對(duì)比方法在CLEVR-Complex數(shù)據(jù)集上的定性對(duì)比,該數(shù)據(jù)集包含2個(gè)物體的5個(gè)變化因子(x軸、y軸位置、形狀、顏色、大?。???梢钥吹剑琒eFa[3]和Hessian Penalty[4]在改變一個(gè)物體的形狀或顏色時(shí)另一個(gè)物體也會(huì)隨之改變,而OroJaR可以獨(dú)立的控制左右物體的形狀和顏色,這說明OroJaR可以更好的解耦空間相關(guān)的變化。
下圖給出了OroJaR與對(duì)比方法在Dsprites數(shù)據(jù)集上的定性對(duì)比,該數(shù)據(jù)集是常用的解耦數(shù)據(jù)集,包含了1個(gè)物體的5個(gè)變化因子(x軸、y軸位置、形狀、角度、大?。???梢钥吹脚cSeFa[3]和GAN-VP[5]和Hessian Penalty[4]相比,OroJaR可以更好地解耦5個(gè)變化,同時(shí)成功抑制多余的維度(第6行)。
如上文中提到的,OroJaR同樣可以用于尋找pretrain的GAN的隱空間中一些有意義的方向向量,作者在ImageNet上pretrain的BigGAN[6]的Golden Retrievers和Churches兩個(gè)類上進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如下圖所示,可以看到,OroJaR可以成功找到一些有意義的控制,如旋轉(zhuǎn),縮放,顏色等。
更多詳細(xì)的實(shí)驗(yàn)結(jié)果請(qǐng)見論文。
3.2定量實(shí)驗(yàn)
下表給出了OroJaR在Edges+Shoes和CLEVR數(shù)據(jù)集上的定量對(duì)比實(shí)驗(yàn),其中FID[12]用于衡量圖像的生成質(zhì)量,PPL[11]用于衡量模型隱空間的連續(xù)性,VP[5]用于衡量模型的解耦性能??梢钥吹?,與SeFa[3]、InfoGAN[13]和Hessian Penalty[4]相比, OroJaR具有更高的VP指標(biāo),說明其更有利于模型的解耦。同時(shí)OroJaR也具有更低的PPL指標(biāo),這是因?yàn)镺roJaR與StyleGAN2中提出的感知路徑正則項(xiàng)具有相似的約束,從而實(shí)現(xiàn)了更低PPL。
下表給出了OroJaR與對(duì)比方法在Dsprites上的VP指標(biāo)對(duì)比,可以看到論文提出的OroJaR取得了更高的結(jié)果,說明了其在解耦上的優(yōu)越性。
論文提出了一種用于生成模型解耦的正交雅可比正則化 (OroJaR) ,其通過約束不同輸入維度引起的輸出變化(即雅可比向量)之間的正交性成功實(shí)現(xiàn)了模型的解耦。此外,OroJaR 可以應(yīng)用于模型的多層,并以整體方式約束輸出,使其可以有效地解耦空間相關(guān)的變化。
雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。