“用于无监督图像生成解耦的正交雅可比正则化”论文解读

Tikhonov regularization terms https://blog.csdn.net/jiejinquanil/article/details/50411617
本文是对博客https://baijiahao.baidu.com/s?id=1710942953471566583&wfr=spider&for=pc的重写。

1 简介

本文是对发表于计算机视觉和模式识别领域的顶级会议 ICCV 2021 的论文“ Orthogonal Jacobian Regularization for Unsupervised Disentanglement in Image Generation(用于无监督图像生成解耦的正交雅可比正则化)”的解读。
在这里插入图片描述

该论文由哈尔滨工业大学与好未来合作,针对图像生成中无监督解耦问题,提出了一种正交雅可比正则化(Orthogonal Jacobian Regularization, OroJaR)用于学习解耦的生成模型。OroJaR 通过约束输入各维在输出引起的变化之间的正交特性来实现模型的解耦,并使用输出对输入的雅可比矩阵表示这种变化。与之前的方法相比,OroJaR 可以应用于模型的多层,并以整体方式对输出进行约束,使得其可以更好的解耦空间相关的变化。

论文链接:https://arxiv.org/abs/2108.07668
代码地址:https://github.com/csyxwei/OroJaR
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2 研究背景

近年来,无监督解耦学习受到了广泛的关注,不仅因为其对理解生成模型的重要性,也因为其对其他计算机视觉任务也有所帮助,如可控图像生成、图像编辑等。对于一个解耦的特征,其各维控制了输出中不相关的变化,从给定的数据集中无监督学习到解耦的特征仍是当前人工智能领域的一个重要挑战。

现有的无监督解耦方法主要基于两种主流的生成模型:变分自编码器(Variational Autoencoder, VAE)和生成式对抗网络(Generative Adversarial Networks, GAN)。基于 VAE 的方法如 -VAE [ 1 ] ,FactorVAE [ 2 ] 等主要通过约束隐变量之间的独立性来实现解耦,但受限于 VAE,这些方法生成图像的质量往往有限。随着 GAN 在图像生成领域取得的成功,许多基于 GAN 的无监督解耦方法被提出。SeFa [ 3 ] 通过对 pretrain 的 GAN 的第一层全连接层参数分解得到一系列解耦的隐空间方向向量。但 SeFa 只能作用于第一层且是后处理的方式,限制了其解耦性能。Hessian Penalty [ 4 ] 通过约束输出对输入的 Hessian 矩阵是对角的来实现解耦。但其使用 max 函数将约束从标量函数推广到向量函数,独立的约束输出的各个值使得其不能很好的解耦一些空间相关的变化(如,形状、大小、旋转等)。

受上述方法的启发,论文提出了一个用于无监督图像生成解耦的正交雅可比正则化(OroJaR),用于更好的解耦生成模型。

3 方法介绍

3.1 正交雅可比正则化 ( OroJaR )

G:X=G(z)G:X = G(\mathbf{z})G:X=G(z)是一个生成模型,其中z=[z1,…,zi,…,zm]T∈R\mathbf{z}=[z_1, \dots, z_i, \dots, z_m]^T \in \mathbb{R}z=[z1,,zi,,zm]TR是输入向量,ziz_izi表示输入的第iii维。x\mathbf{x}x是网络的输出,xd=Gd(z)x_d = G_d(\mathbf{z})xd=Gd(z)进一步用于表示GGG的第ddd层的输出。
论文基于一个非常直观的想法:当改变输入的其中一维时,其在输出中引起的变化应该与其他维引起的变化独立(不相关),即ziz_izizjz_jzj在输出中引起的变化是独立的。在论文中,作者使用雅可比向量∂Gd∂zi\frac{\partial G_d}{\partial z_i}ziGd表示输入第iii维在输出中引起的变化,同时为了实现解耦,作者约束输入各维对应的雅可比向量相互正交,
[∂Gd∂zi]T∂Gd∂zj=0.(1)[\frac{\partial G_d}{\partial z_i}]^T \frac{\partial G_d}{\partial z_j} = 0. \tag1[ziGd]TzjGd=0.(1)
两个向量的正交也意味着它们是不相关的,即输入各维所引起的变化是独立的。考虑所有输入维度,作者提出了正交雅可比正则化(OroJaR),来帮助模型学习到解耦的特征:
L(G)=∑d=1D∣∣JdTJd∘(1−I)∣∣=∑d=1D∑i=1m∑j≠i∣[∂Gd∂zi]T∂Gd∂zj∣2,(2)\mathcal{L}(G) = \sum_{d = 1} ^D||\mathbf{J}_d^T \mathbf{J}_d \circ ( \mathbf{1} - \mathbf{I})|| = \sum_{d = 1}^D \sum_{i = 1}^m \sum_{j \neq i}|[\frac{\partial G_d}{\partial z_i}]^T \frac{\partial G_d}{\partial z_j}|^2, \tag2L(G)=d=1DJdTJd(1I)=d=1Di=1mj=i[ziGd]TzjGd2,(2)
其中Jd={jd,1,…,jd,i,…,jd,m}\mathbf{J}_d = \{\mathbf{j}_{d, 1}, \dots, \mathbf{j}_{d, i}, \dots, \mathbf{j}_{d, m}\}Jd={jd,1,,jd,i,,jd,m}表示GdG_dGdzzz输入的雅可比矩阵,∘\circ表示逐元素乘积。I\mathbf{I}I 表示单位阵,1\mathbf{1}1表示全 1 的矩阵。OroJaR 以整体方式对输出进行约束,而不是像 Hessian Penalty 一样独立的约束输出的每一个元素,这使得 OroJaR 可以更好的解耦复杂的、空间相关的变化。

3.2 近似训练加速

实际训练时,公式 (2)中雅可比矩阵的计算是非常耗时的。为了加速运算,作者基于Hutchinson近似[4,7],将公式 (2)的计算重写为,
L(G)=∑d=1DVarv[vT(jdTjd)v]=∑d=1DVarv[(jdv)Tjdv],(3)\mathcal{L}(G) = \sum_{d = 1}^D \mathbf{Var_v}[\mathbf{v}^T (\mathbf{j_d}^T \mathbf{j_d}) \mathbf{v}] = \sum_{d = 1}^D \mathbf{Var_v}[(\mathbf{j_dv})^T\mathbf{j_dv}], \tag3L(G)=d=1DVarv[vT(jdTjd)v]=d=1DVarv[(jdv)Tjdv],(3)
其中v\mathbf{v}v是Rademacher向量(每维为-1或1的概率为0.5),Varv\mathbf{Var_v}Varv表示方差计算。jdv\mathbf{j_dv}jdvGdG_dGd沿着v\mathbf{v}v方向的一阶导数乘上∣v∣|\mathbf{v}|v,其可以进一步使用一阶差分近似[8]估计得到:
jdv=1ϵ[G(z+ϵv)−G(z)],(4)\mathbf{j_dv} = \frac{1}{\epsilon}[G(\mathbf{z}+ \epsilon \mathbf{v}) - G(\mathbf{z})], \tag4jdv=ϵ1[G(z+ϵv)G(z)],(4)

3.3 在GAN中的应用

OroJaR可以通过两种方式应用于GAN中,一种是在训练GAN时用作正则项,一种是用于寻找pretrain的GAN中一些解耦的方向向量。
GAN训练时,判别器DDD和生成器GGG迭代的使用LD\mathcal{L}_DLDLG\mathcal{L}_GLG更新:
LD=Ex[f(D(x))]+Ez[f(1−D(G(z)))],(5)\mathcal{L}_D = \mathbb{E}_\mathbf{x}[f(D(\mathbf{x}))] + \mathbb{E}_\mathbf{z}[f(1-D(G(\mathbf{z})))], \tag5LD=Ex[f(D(x))]+Ez[f(1D(G(z)))],(5)
LG=Ez[f(1−D(G(z)))],(6)\mathcal{L}_G = \mathbb{E}_\mathbf{z}[f(1 - D(G(\mathbf{z})))], \tag6LG=Ez[f(1D(G(z)))],(6)
其中f(⋅)f(\cdot)f()是某一个具体的GAN Loss。将OroJaR引入GAN的训练后,生成器的训练Loss调整为:
LGoro=Ez[f(1−D(G(z)))]+λEz[LJ(G(z))],(7)\mathcal{L}_G^{oro} = \mathbb{E}_\mathbf{z}[f(1 - D(G(\mathbf{z})))] + \lambda \mathbb{E}_\mathbf{z}[\mathcal{L}_J(G(\mathbf{z}))], \tag7LGoro=Ez[f(1D(G(z)))]+λEz[LJ(G(z))],(7)
其中λ\lambdaλ用于控制不同损失之间的权重。引入LJ(G)\mathcal{L}_J(G)LJ(G)到GAN的训练中可以帮模型学习到解耦的特征,从而实现可控的图像生成。
OroJaR也可以用于发现pretrain的GAN的隐空间中可解释的方向。具体地,作者引入一个可学习的正交矩阵A∈Rm×N\mathbf{A} \in \mathbb{R}^{m \times N}ARm×N,其中NNN是要学习的正交方向的个数,mmm是隐空间维度。A\mathbf{A}A的每列存储了要学习的正交方向。AAA的优化公式为:
A∗=arg⁡min⁡AEz,ωiLJ(G(z+ηAωi)),(8)A^* = \arg \min_\mathbf{A} \mathbb{E}_{\mathbf{z}, \omega_i}\mathcal{L}_J(G(\mathbf{z} + \eta \mathbf{A} \omega_i)), \tag8A=argAminEz,ωiLJ(G(z+ηAωi)),(8)
其中ωi∈{0,1}N\omega_i \in \{0, 1\}^Nωi{0,1}N是一个one-hot的向量,用于索引A\mathbf{A}A的某一列,η\etaη是一个标量用于控制z\mathbf{z}z应该沿着该方向移动多远。与公式 (7)不同的是,此时的OroJaR是对求的ωi\omega_iωi而不是z\mathbf{z}z。求得A\mathbf{A}A之后,就可以通过G(z+ηAωi)G(\mathbf{z} + \eta \mathbf{A} \omega_i)G(z+ηAωi)来对生成图像进行可控的编辑。

4 实验结果

论文使用了Edges+Shoes[9]、CLEVR[4]、Dsprites[10]等数据集对OroJaR进行了详细的定性和定量实验。

4.1 定性实验

作者首先在Edges+Shoes上进行了实验,该数据集是由5k张真实鞋子和5k张轮廓鞋子组成的真实数据集。从下图中可以看到,虽然没有其真实的变化因子,但SeFa[3]、Hessian Penalty[4]和OroJaR都学到了相同的变化,即鞋子的样式和形状,且论文提出的OroJaR具有更多样的形状变化。
在这里插入图片描述
下图给出了论文提出的OroJaR与对比方法在CLEVR-Complex数据集上的定性对比,该数据集包含2个物体的5个变化因子(x轴、y轴位置、形状、颜色、大小)。可以看到,SeFa[3]和Hessian Penalty[4]在改变一个物体的形状或颜色时另一个物体也会随之改变,而OroJaR可以独立的控制左右物体的形状和颜色,这说明OroJaR可以更好的解耦空间相关的变化。
在这里插入图片描述
下图给出了OroJaR与对比方法在Dsprites数据集上的定性对比,该数据集是常用的解耦数据集,包含了1个物体的5个变化因子(x轴、y轴位置、形状、角度、大小)。可以看到与SeFa[3]和GAN-VP[5]和Hessian Penalty[4]相比,OroJaR可以更好地解耦5个变化,同时成功抑制多余的维度(第6行)。
在这里插入图片描述
如上文中提到的,OroJaR同样可以用于寻找pretrain的GAN的隐空间中一些有意义的方向向量,作者在ImageNet上pretrain的BigGAN[6]的Golden Retrievers和Churches两个类上进行了实验。实验结果如下图所示,可以看到,OroJaR可以成功找到一些有意义的控制,如旋转,缩放,颜色等。
在这里插入图片描述
更多详细的实验结果请见论文。

4.2 定量实验

下表给出了OroJaR在Edges+Shoes和CLEVR数据集上的定量对比实验,其中FID[12]用于衡量图像的生成质量,PPL[11]用于衡量模型隐空间的连续性,VP[5]用于衡量模型的解耦性能。可以看到,与SeFa[3]、InfoGAN[13]和Hessian Penalty[4]相比, OroJaR具有更高的VP指标,说明其更有利于模型的解耦。同时OroJaR也具有更低的PPL指标,这是因为OroJaR与StyleGAN2中提出的感知路径正则项具有相似的约束,从而实现了更低PPL。
在这里插入图片描述
下表给出了OroJaR与对比方法在Dsprites上的VP指标对比,可以看到论文提出的OroJaR取得了更高的结果,说明了其在解耦上的优越性。
在这里插入图片描述

5 结语

论文提出了一种用于生成模型解耦的正交雅可比正则化 (OroJaR) ,其通过约束不同输入维度引起的输出变化(即雅可比向量)之间的正交性成功实现了模型的解耦。此外,OroJaR 可以应用于模型的多层,并以整体方式约束输出,使其可以有效地解耦空间相关的变化。

参考文献

[1] Irina Higgins, Loic Matthey, Arka Pal, Christopher Burgess, Xavier Glorot, Matthew Botvinick, Shakir Mohamed, and Alexander Lerchner. beta-vae: Learning basic visual concepts with a constrained variational framework. 2016.
[2] Hyunjik Kim and Andriy Mnih. Disentangling by factorising. In International Conference on Machine Learning, pages 2649–2658. PMLR, 2018.
[3] Yujun Shen and Bolei Zhou. Closed-form factorization of latent semantics in gans. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2021.
[4] William Peebles, John Peebles, Jun-Yan Zhu, Alexei A. Efros, and Antonio Torralba. The hessian penalty: A weak prior for unsupervised disentanglement. In Proceedings of the European Conference on Computer Vision, 2020
[5] Xinqi Zhu, Chang Xu, and Dacheng Tao. Learning disentangled representations with latent variation predictability. In Proceedings of the European Conference on Computer Vision, pages 684–700. Springer, 2020
[6] Andrew Brock, Jeff Donahue, and Karen Simonyan. Large scale gan training for high fidelity natural image synthesis. In International Conference on Learning Representations, 2018.
[7] Michael F Hutchinson. A stochastic estimator of the trace of the influence matrix for laplacian smoothing splines. Communications in Statistics-Simulation and Computation, 18(3):1059–1076, 1989.
[8] Clarence Hudson Richardson. An introduction to the calculus of finite differences. Van Nostrand, 1954.
[9] Aron Yu and Kristen Grauman. Fine-grained visual comparisons with local learning. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 192–199, 2014.
[10] Loic Matthey, Irina Higgins, Demis Hassabis, and Alexander Lerchner. dsprites:
Disentanglement testing sprites dataset. https://github.com/deepmind/dsprites-dataset/, 2017.
[11] Tero Karras, Samuli Laine, and Timo Aila. A style-based generator architecture for generative adversarial networks. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 4401–4410, 2019.
[12] Martin Heusel, Hubert Ramsauer, Thomas Unterthiner, Bernhard Nessler, and Sepp Hochreiter. Gans trained by a two time-scale update rule converge to a local nash equilibrium. In Advances in Neural Information Processing Systems, pages 6629–6640, 2017.
[13] Xi Chen, Yan Duan, Rein Houthooft, John Schulman, Ilya Sutskever, and Pieter Abbeel. Infogan: interpretable representation learning by information maximizing generative adversarial nets. In Advances in Neural Information Processing Systems, 2016.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/507638.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html带正方形项目列表,5种简单实用的css列表样式实例,可以直接用到项目中。...

谁不希望有一个好看而又干净的列表?这篇文章中我们给出几个实用的例子,你可以把他们直接用到自己的工作中。我们从一个带有动画效果的垂直列表开始,接着是一个图文混排的例子,然后是一个只有图片的list例子跟一个水平菜单的例子&a…

pb 打印html页面,用PB开发WEB应用

用PB开发WEB应用用PB开发WEB应用烟台教育学院网络中心 孙连三一、PB Window plug -in 的用途PowerBuilder Window plug -in 的用途是在HTML 页面中插入PowerBuilder 中定义的窗口对象,此窗口对象上定义的功能在浏览器中一样被执行&#xff0…

html加上百度统计,vue单页面应用加入百度统计

版权声明:本文为CSDN博主「钟文辉」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/qq_39753974/article/details/80322643在单页面中,要是只加在head中的话那…

推荐系统:猜你喜欢

0 简介 网络的迅速发展带来了信息超载(information overload)问题。解决信息超载问题一个非常有潜力的办法是推荐系统,它根据用户的信息需求、兴趣等,将用户感兴趣的信息、产品等推荐给用户。推荐系统最典型应用领域是电子商务领…

量子计算机九章能否预测未来,张礼立 : 中国 “九章”量子计算机到底厉害在哪?...

原标题:张礼立 : 中国 “九章”量子计算机到底厉害在哪?【背景信息】12月4日,《科学》杂志公布了 中国 “九章” 的重大突破。 这台由中国科学技术大学潘建伟、陆朝阳等学者研制的76个光子的量子计算原型机,推动全球量…

利用GAN实现QR Code超分辨率的研究

文章目录1 传统方案2 基于CNN的实现方案2.1 SRCNN2.2 WeChat AI3 基于GAN的实现方案3.1 SRGAN3.2 ESRGAN3.3 Real-ESRGAN4 基于GAN的QR Code的实现方案1 传统方案 https://blog.csdn.net/caomin1hao/article/details/81092134?utm_mediumdistribute.pc_relevant.none-task-bl…

如何用计算机截部分屏,电脑如何长屏幕的截图?电脑截取长屏的方法

新手用户对windows系统截取长屏的方法比较陌生,正常情况下,我们截取屏幕内容是登录QQ,按ctrlalta来截取屏幕的,只能截取部分内容,无法截图整个页面。日常的工作生活中,截图是经常会用到的,如果你…

Audio-based snore detection using deep neural networks解读

0 摘要 Background and Objective: 打鼾是一种普遍现象。 它可能是良性的,但也可能是阻塞性睡眠呼吸暂停 (OSA) 一种普遍存在的睡眠障碍的症状。 准确检测打鼾可能有助于筛查和诊断 OSA。 Methods: 我们介绍了一种基于卷积神经网络 (CNN) 和循环神经网络 (RNN) 组合…

2018计算机专业考研报名人数,2018年全国考研报考人数、各省市考研报考人数、历年考研录取率、全日制及非全日制硕士研究生比例及考研动机分析【图】...

一、考研报考人数、录取率及报录比分析从上世纪末开始,研究生和本科生招生数量一样在逐步增多。本科扩招的同时,研究生也在扩招。1999年,全国报考研究生人数31.9万,录取人数7.3万,录取率22.8%。2008年,报考…

用计算机怎样搜wifi网,笔记本电脑搜索不到无线网络(Wifi)怎么办

在使用Windows 10工作时会遇到形形色色的问题,比如笔记本电脑搜索不到无线网络。那么如何排除故障呢?下面小编与你分享具体步骤和方法。工具/材料Windows 10操作系统操作方法第1:启动Windows 10操作系统,如图所示。点击任务栏&quo…

怎么用计算机杀毒,电脑怎样查杀病毒

病毒往往会利用计算机操作系统的弱点进行传播,那么大家知道电脑怎样查杀病毒吗?接下来大家跟着学习啦小编一起来了解一下电脑查杀病毒的解决方法吧。电脑查杀病毒方法一一、使用杀毒软件进行杀毒1、首先进入“安全模式”2、进入方法:开机在进入Windows系…

将文件中所有数读到一个数组中_「数据结构与算法」将5个文件中的一千万年龄合并到一个新文件中...

现在有5个文件,文件里面分别存储着1千万个用户年龄,并且每个文件中的年龄都是有序的(从小到大),现在需要将这5个文件整合到一个文件中,新文件的内容依然要保持有序(从小到大)。初始化…

二维码编码规范解读

1 QR码符号的结构 QR 码符号的结构如下: 1.1 定位图案 Position Detection Pattern是定位图案,用于标记二维码的矩形大小。这三个定位图案有白边叫Separators for Postion Detection Patterns。之所以三个而不是四个意思就是三个就可以标识一个矩形了…

二维码的纠错码原理及如何纠错(1)

本文将通过例子来说明两个方面的内容: (1)如何构建纠错码? (2)有了纠错码之后如何纠错? 1 如何构建纠错码? 直接上例子,“hello world” 利用二维码的编码原理&#xf…

利用自己构建的网络进行鼾声识别

1 目前的工作 1.1 数据 5692条3s且采集率为8000hz的鼾声与6824条3s且采集率为8000hz的其他类音频。通过FFT频谱转换为300个(30,513,1)的矩阵。训练集与测试集的比例为9:1。数据集来源为google开源的数据集。 1.2 模型 图1. The proposed deep neural network arc…

企业微信加密消息体_用企业微信小程序发送消息

在企业开发中,经常会碰到一些消息要及时推送到企业员工的手中。so 下面来说怎么向企业微信中的员工发消息。本人只是记录下开发过程,详细参考https://work.weixin.qq.com/api/1.准备注册企业微信公司获取企业ID新开企业微信应用获取应用的Agentid&#x…

二维码的纠错码原理及如何纠错(2)

下面进一步介绍二维码纠错相关的编码矩阵 1 范德蒙德(Vandermonde)矩阵 1.1 定义及特性 法国数学家 Alexandre-Thophile Vandermonde 在十八世纪提出了行列式的概念, 用来解决线性方程组问题, 其中一个关键是范德蒙德(Vandermonde) 矩阵, Vandermonde…

NCCIP会议笔记

华南理工大学蔡毅:多智能体通信,识别边界。是否可以用于鼾声识别 天津大学张鹏教授 哈尔滨工业大学 HFUT:俞奎 张长青

计算机创新课,计算机教学课程模式与创新论文

计算机教学课程模式与创新论文摘要:作为大学生通识教育的重要组成部分,计算机基础课程是提高学生信息素养的关键途径。随着互联网技术的不断发展,大学计算机课程教学面临诸多新的挑战,因此需要创新、改革目前的教学模式&#xff0…

New directions in automated traffic analysis论文解读

1 论文主要idea 完整性:没有进行特征提取,保留原始数据包;固定大小:对不同类型的数据包进行统一格式编码,使得编码后的向量大小一致(见图3)将一些与目标任务不一致的字段去掉,如操作…