丰色 发自 凹非寺
量子位 报道 | 公众号 QbitAI

假如一位大师画了一些画,但是只有10幅,有没有可能利用这仅有的10幅训练出一个模型,产生N幅同样风格的作品来呢?

从目前的图像生成模型来看,似乎不行。

因为它们都需要至少数千张图像才能正常训练,10张真是“为难我胖虎”了。

但办法总比困难多。

来自Adobe Search等团队的研究人员们提出了一种新颖的GAN自适应框架。

该框架经过实验证明,能够发现小样本模型源域和目标域之间的对应关系,用10幅也能生成千变万化,质量也有的保证的图像!

怎么做到的?!

如何保证多样化和真实

要想解决有限的数据样本,就不得不提迁移学习

它是一种不需要海量数据就能让计算机“举一反三”的方法,已在GAN的背景下进行了多种摸索。

然而这些方法中的大多数都是为具有一百多个训练图像的场景而设计的。

当可用图像的数量降低到只有几个时,结果势必导致过拟合或图像质量较差

为了解决过拟合这个问题,研究人员在迁移学习的基础上引入了一种新的跨域距离一致性损失算法 (cross-domain distance consistency loss),它可以保持源图像之间的相似性和差异性。如下图第三行所示。

将源模型(第一行)调整为小样本后,结果由于过拟合而垮掉(第二行)

跨域距离一致性损失算法怎么实现

自适应过程中过拟合的结果就是源域中的相对距离无法保持。如上图第二行所示。

研究人员假设,在自适应前后强制保持成对距离,将有助于防止崩溃。

为此,他们对一批N+1个噪声向量进行采样,并利用它们在特征空间中的成对相似性为每幅图像构造N路概率分布。

并从最新的对比学习中受到启发。

该方法将相似性转换为无监督表征学习的概率分布,以及感知特征损失,并表明在区分性网络的多个层次上的激活有助于保持相似性

另外,研究人员觉得有必要应用图像级和图像块级对抗损失这两种不同的方式来避免对生成图像的多样性造成过度的惩罚:

对应该映射到真实样本的合成图像运用图像级的对抗损失,对于其他合成图像,则只运用图像块级的对抗损失。

这样,生成的样本中只有一小部分需要看起来像训练图像,而其余部分只需要捕获训练图像的块级特征。

这样,生成图像的多样性就大大增加了。

为了保证图像的质量,研究人员又提出了一个叫做“relaxed” 的判别器,它能使隐空间(latent space)的不同区域具有不同层次的真实感

效果怎么样?

团队进行了以下三个方面的评估:

  • 质量和多样性评估

定性比较发现,比起TGAN、MineGAN的过拟合,TGAN + ADA那离谱的旋转90度的失真等,

还是该研究团队的方法能够更贴切地捕捉原图的特征,生成各具特色的头像,

并照顾到其他方法没有顾及的细节(eg.草图中的帽子),多样性和质量一应俱全。

定量比较发现,该方法一致实现了更高的平均LPIPS(深度特征度量图像相似度的有效性)距离,这表明生成的图像更清晰。

  • 源域和目标域间的对应关系

当源域和目标域相关时(eg. 人脸和人物漫画),使用该团队的方法生成的结果具有清晰的对应关系。任何细节(eg. 帽子/太阳镜)都在最终生成的草图和漫画中得以体现。(同见上面的大图)

当源域目标域不相关时,生成的结果仅模拟了目标域的外观。对于所有剩余细节,并不能准确地捕获目标分布。然而,仍然会出现部分级别的对应。eg. 教堂的窗户/门大致映射为漫画的眼睛。

这就有点鬼畜了哈。

  • 目标数据集规模对生成图像的质量和多样性的影响

上面所有结果都是由每个目标域10个训练图像生成的。

现在,研究人员分别以1、5、10个训练图像来实现Church→Landscape drawing(教堂变风景画)和FFHQ→sketch(人物到人物漫画)。

可以发现,只有一个样本时,该方法引起了细微变化,例如在生成的草图中,女士以不同的姿势出现,山和瀑布具有不同的形状。

训练图像增加为5个,这些草图中的人物有了性别与年龄大小等更明显的区分。

进一步增加训练样本的数量(到10个)后,可以为人物和风景引入更多细节,以至于在最终的外观上有了很大的差别。

也有瑕疵:红色汽车变橙色

虽然该团队的方法产生了令人信服的结果,但它并非没有局限性。

比如,下图中的“汽车变废弃汽车”中,红色汽车的颜色在其废弃形式中变为了橙色。

可能是因为10个训练图像中存在橙色汽车。

“FFHQ→太阳镜”中人物戴上墨镜,金色头发就变黑。

这表明,源域和目标域之间更好的对应关系还需进一步探索。

参考链接:

https://www.arxiv-vanity.com/papers/2104.06820/

给我10张画,我能还你1万张|Adobe团队搞定小样本图像生成相关推荐

  1. 10大经典排序算法,20+张图就搞定

    作者 | 李肖遥 来源 | 技术让梦想更伟大 冒泡排序 简介 冒泡排序是因为越小的元素会经由交换以升序或降序的方式慢慢浮到数列的顶端,就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名冒泡排序. ...

  2. 如何保证MySQL和Redis的数据一致性?10张图带你搞定!

    导语 | 本文的主要思路是首先带大家认识了解MySQL和Redis的数据一致性情况,然后进行反推不一致的情况,从而进行探究单线程中的不一致的情况.同时探究多线程中的不一致的情况,拟定数据一致性策略. ...

  3. c++ 不插入重复元素但也不排序_面试官爱问的 10 大经典排序算法,20+ 张图来搞定...

    (给算法爱好者加星标,修炼编程内功) 作者:技术让梦想更伟大 / 李肖遥 (本文来自作者投稿) 冒泡排序 简介 冒泡排序是因为越小的元素会经由交换以升序或降序的方式慢慢浮到数列的顶端,就如同碳酸饮料中 ...

  4. 面试官爱问的10大经典排序算法,20+张图来搞定

    冒泡排序 简介 冒泡排序是因为越小的元素会经由交换以升序或降序的方式慢慢浮到数列的顶端,就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名冒泡排序. 复杂度与稳定性 思路原理 以顺序为例 从第一 ...

  5. 审核员必看|不符合项报告还不会写?一篇文章搞定

    审核员不会写不符合项报告,直接影响受审组织的审核结果和认证委托方的信誉. 实习审核员和内审员的一定要看,不符合项是指那些违背审核准则的事实和证据. 审核准则指的是标准.法律法规.合同要求.组织质量管理 ...

  6. 【临床预测模型】----10步建立完整的临床机器学习预测模型,5分钟搞定!!

    [临床预测模型]----10步建立预测模型 好多小伙伴在首次构建一个临床预测模型构建时,一头雾水找不着北

  7. 【正则表达式】——10个非常常见的正则表达式案例,轻松搞定正则表达式

    正则表达式是由一些具有特殊含义的字符组成的字符串,多用于查找.替换符合规则的字符串.在表单验证.Url映射等处都会经常用到. 在写正则表达式的时候,我们需要把模式写入一对//正斜杠里面 /正则表达式/ ...

  8. 中金人工智能报告:AI时代,10 年之后我们还能干什么?|71页完整报告

    来源:黑科技智汇 中金公司(CICC)发布了一份长达 71 页的人工智能的证券研究报告<人工智能时代,10 年之后我们还能干什么?>.对全球特别是中国企业当下的人工智能态势作了全面的介绍: ...

  9. 推荐 10 套个人觉得还不错的网页模板

    原文链接 推荐 10 套个人觉得还不错的网页模板 这里推荐 10 套 从风格,配色,响应式等几方面个人觉得还不错的网页模板,假以时日用来做企业站,还是某种品牌的官网也好,觉得可以借鉴某种效果或者风格的 ...

最新文章

  1. 使用 HttpResponse.Write 方法进行字符串串联
  2. 【AI不惑境】网络宽度对模型性能有什么影响?
  3. oracle sql developer 查看游标结果集(3.0.04
  4. python求组合数c_科学网—Python 组合函数 C(n,m) - 杨玠的博文
  5. 面试题 01.06. 字符串压缩
  6. 洛谷 P1352 没有上司的舞会【树形DP/邻接链表+链式前向星】
  7. Spark源码分析之TaskSetManager分析
  8. VB shell执行程序,直到执行完毕
  9. 我们如何制作xkcd样式图?
  10. 等比缩放公式_CVPR2019 | 旷视提出MetaSR:单一模型实现超分辨率任意缩放因子
  11. GoogleMaterialDesign900个实用的Axure图标组件库
  12. 锦锐单片机开发工具_飞思卡尔单片机PE开发工具硬件及软件
  13. 希望能多看几遍找到自己的影子
  14. win11使用excel卡顿怎么办 Windows11使用excel卡死的解决方法
  15. 什么是B2B,B2C,C2C?
  16. Ubuntu新手-谈第一次在Ubuntu升级VMware Tolls
  17. 递归算法转换为非递归算法
  18. mac下 内存分析工具mat安装,使用mat分析:内存溢出、内存泄漏,结合jstat、jmap等命令的使用
  19. 国内首例!违反 GPL 协议致侵权,被判赔偿 50 万元
  20. 完美主义的一点点体现

热门文章

  1. 我怎样才能找到带有Mathematica的Waldo?
  2. JAVA 多用户商城系统b2b2c-服务容错保护(Hystrix依赖隔离)
  3. gMIS吉密斯更新:Pivot透视+图示,List+观察模式
  4. 【实战教程】腾讯云搭建微信小程序服务
  5. bootstrap17-响应式表格布局
  6. Swift中出现“no such module cocoa”的错误
  7. 开源跳板机(堡垒机)Jumpserver v0.2.0 使用说明
  8. 分析增加站点权重的四大切入点(转载)
  9. mysql 触发器判断不插入数据_mysql关于触发器怎么判断数据存在时更新不存在时添加呢!...
  10. qtablewidget 数据量大效率很低_让大牛带你走进大数据分析:R基础及应用的潮流尖端,享受RHadoop...