GAN相关论文《Spectral Regularization for Combating Mode Collapse in GANs》
ICCV 2019的一篇论文,作者在出名的SN-GAN上进行改进。
SN-GAN介绍应该还是挺多的,随便找一篇https://zhuanlan.zhihu.com/p/65549312
谱归一化约束,通过约束 GAN 的 Discriminator 的每一层网络的权重矩阵(weight matrix)的谱范数来约束 Discriminator 的 Lipschitz 常数, 从而增强 GAN 在训练过程中的稳定性。
这篇文章呢,作者自称叫做SR-GAN,Spectrual Regularization 谱正则化。
作者发现一个现象,就是如果没有mode collapse的时候,W‾SN(W)\overline{W}_{SN}(W)WSN(W)的大量的奇异值都接近于1,其中W‾SN(W)\overline{W}_{SN}(W)WSN(W)是谱归一化的权重矩阵;
在出现mode collapse的时候,权重矩阵的奇异值drop的很快,作者称这种现象为spectrual collapse(谱崩溃)。作者认为,只要spectrual collapse解决了,mode collapse就会一定程度的解决。
SN-GAN的谱归一化:W‾SN(W):=W/σ(W)\overline{W}_{SN}(W):=W/\sigma(W)WSN(W):=W/σ(W),
σ(W)\sigma(W)σ(W)是权重W的奇异值的最大值。
SN-GAN通过这种方式来约束Lipschitz常数。原文中也证明了优于其他的normalization或者regularization的方法,比如gradient penalty、weight normalization和正交正则化等等。
注意:本论文关于spectrual collapse是作者在实验中观察得到的现象!
正如SN-GAN和BigGAN等类似的论文发现的,batch大小增加或者D网络的channel减小,都会导致mode collapse。因此本文中设置了若干种对照组,分别有不同的batch和channel。
如图所示,spectrual collapse的时候,奇异值会drop的很严重。
Spectrual Regularization
首先进行奇异值分解,权重矩阵W可以分解为W=U⋅Σ⋅VTW=U\cdot\Sigma\cdot V^TW=U⋅Σ⋅VT
其中的UUU和VVV都是正交矩阵,UUU, [u1,u2,⋅⋅⋅,um],[u_1, u_2, · · · , u_m],[u1,u2,⋅⋅⋅,um], 被称为W矩阵的左奇异向量,VVV,[v1,v2,⋅⋅⋅,vn][v_1, v_2, · · · , v_n][v1,v2,⋅⋅⋅,vn]被称为W矩阵的右奇异向量。
Σ\SigmaΣ可被表示为
Σ=[D000]\Sigma= \begin{bmatrix} D & 0\\ 0 & 0 \\ \end{bmatrix}Σ=[D000]
其中的D=diag{σ1,σ2,...,σr}D=diag \{\sigma_1,\sigma_2,...,\sigma_r \}D=diag{σ1,σ2,...,σr}代表着权重矩阵W的谱分布。
当出现mode collapse时,谱分布专注于最大的奇异值,而其他的奇异值drop的比较快。
为了避免spectrual collapse,SR-GAN设计了一个ΔD\Delta DΔD用于补偿D,ΔD=diag{σ1−σ1,σ1−σ2,...,σ1−σi,0,...,0}\Delta D=diag\{\sigma_1-\sigma_1,\sigma_1-\sigma_2,...,\sigma_1-\sigma_i , 0,...,0\}ΔD=diag{σ1−σ1,σ1−σ2,...,σ1−σi,0,...,0},其中iii是一个需要自己设定的超参数。
则DDD会变成D′=D+ΔD=diag{σ1,σ1,...,σ1,σi+1,...,σr}D' = D+\Delta D=diag \{\sigma_1,\sigma_1,...,\sigma_1, \sigma_{i+1},...,\sigma_{r}\}D′=D+ΔD=diag{σ1,σ1,...,σ1,σi+1,...,σr}
从而ΔW=U⋅[ΔD000]⋅VT=∑k=2i(σ1−σk)ukvkT\Delta W=U\cdot\begin{bmatrix} \Delta D & 0\\ 0 & 0 \\ \end{bmatrix}\cdot V^T=\sum_{k=2}^i(\sigma_1-\sigma_k)u_kv_k^TΔW=U⋅[ΔD000]⋅VT=k=2∑i(σ1−σk)ukvkT
从而获得谱正则化的结果W‾SR(W)=W+ΔWσ(W)=W‾SN(W)+ΔWσ(W)\overline{W}_{SR}(W)=\frac{W+\Delta W}{\sigma(W)}=\overline{W}_{SN}(W)+\frac{\Delta W}{\sigma(W)}WSR(W)=σ(W)W+ΔW=WSN(W)+σ(W)ΔW
当i=1时,ΔW=0\Delta W=0ΔW=0,SN-GAN就成为SR-GAN的一种特殊的形式。
后面还有理论分析和超参选择什么的,不写了,有空再说。
源码:
https://github.com/max-liu-112/SRGANs-Spectral-Regularization-GANs-
补充:
https://github.com/Hhhhhhhhhhao/Paper-Notes/blob/7025aa2c976c3e351aac12b8a7bf9324cffba657/Spectral-Regularization-for-Combating-Mode-Collapse-in-GANs/SRGAN.md
写的不错。
GAN相关论文《Spectral Regularization for Combating Mode Collapse in GANs》相关推荐
- 2018 CVPR GAN 相关论文调研 (自己分了下类,附地址哦)
2018 CVPR GAN 相关论文调研 风格迁移 1. PairedCycleGAN: Asymmetric Style Transfer for Applying and Removing Mak ...
- 2018 CVPR GAN 相关论文调研
2018 CVPR GAN 相关论文调研 风格迁移 1. PairedCycleGAN: Asymmetric Style Transfer for Applying and Removing Mak ...
- 2018 CVPR GAN 相关论文
https://blog.csdn.net/qq_26499769/article/details/84400294 风格迁移 1. PairedCycleGAN: Asymmetric Style ...
- 供参考的the-gan-zoo,列出的GAN相关模型和论文
想学习,更多的GAN相关的模型和论文,可参考https://github.com/hindupuravinash/the-gan-zoo 以下是来自该作者的 github上 整理的部分论文, 如果需要 ...
- GAN原始论文翻译及相关推导
参考博客:https://blog.csdn.net/stalbo/article/details/79283399 0.摘要 GAN提出了一个通过对抗过程估计生成模型的新框架,在新框架中同时训练两个 ...
- 图上的对抗与攻击精选论文列表(2021相关论文一览)
来源:深度学习与图网络本文约1400字,建议阅读5分钟本文为你分享图上的对抗与攻击精选论文. 2021相关论文一览 大规模攻击图神经网络 图神经网络的黑盒梯度攻击: 更深入洞察图的攻击和防御 增强多路 ...
- 必读的10篇关于GAN的论文
前言 上次写的文章-- 一文了解下 GANs可以做到的事情,如果想进一步了解 GAN,学习研究 GAN,可以先从这 10 篇论文开始. 本文翻译自: https://towardsdatascienc ...
- ICCV2021|底层视觉(图像生成,图像编辑,超分辨率等)相关论文汇总(附论文链接/代码)[持续更新]
ICCV2021|底层视觉和图像生成相关论文汇总(如果觉得有帮助,欢迎点赞和收藏) 1.图像生成(Image Generation) Multiple Heads are Better than On ...
- SIGIR 2022 | 推荐系统相关论文分类整理
大家好,我是对白. ACM SIGIR 2022是CCF A类会议,人工智能领域智能信息检索( Information Retrieval,IR)方向最权威的国际会议.会议专注于信息的存储.检索和传播 ...
- 2021年9月80篇GAN/对抗论文汇总
等你着陆![GAN生成对抗网络]知识星球! 超100篇!CVPR 2020最全GAN论文梳理! 2021年8月60篇GAN/对抗论文汇总 2021年7月100篇GAN/对抗论文汇总 2021年6月 ...
最新文章
- 关于在学校锻炼的思考
- vue 创建项目的命令
- php获取python的变量,PHPPython变量交换
- javascript 栈 Stack
- l4d2服务器修改武器伤害,辐射4武器伤害及护甲修改图文教程_快吧单机游戏
- 2017级C语言大作业 - 元气骑士
- matlab中 mcc、mbuild和mex命令详解
- 2.3 利用FTP服务器下载和上传文件
- es6-3.webpack应用
- Hadoop运行原理总结
- 浪曦_Struts2应用开发系列_第2讲.Struts2的类型转换-学习笔记
- spss多元线性回归散点图_SPSS19.0实战之多元线性回归分析
- 8月书讯(上)| 这些新书不可错过
- NX/UG二次开发—建模—批量创建重复特征方案优化
- 【附源码】计算机毕业设计java医院人事及科室病区管理设计与实现
- 数字图像处理 - 投影重建图像(一)雷登变换和傅里叶切片
- 【渝粤教育】电大中专电子商务网站建设与维护 (28)作业 题库
- 数据库查询+数据库备份+数据库恢复
- Android 不分区使用link2sd(app2ext APP2SD)
- matlab程序作分形蕨,matlab学习第一天笔记