Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

杜伟编辑

华人团队用Transformer做风格迁移,速度快、可试玩,网友却不买账

利用神经网络进行风格迁移是一项非常常见的任务,方法也很多,比如基于优化和基于 RL 的方法。最近,来自百度 VIS 团队的研究者提出了一种基于 Transformer 的风格迁移框架,速度快于基线方法,实现效果也不错。然而,研究遭到了网友的质疑,这是为什么呢?


在图像渲染领域,神经绘画(Neural painting)指的是为一张给定图像生成一系列笔画(stroke),并借助神经网络对其进行非真实性重建。如下图第一行每张图像的左下角为真实图像,以及重建后的非真实图像;第二行为渐进的绘画过程。

对于神经绘画任务,虽然基于强化学习(RL)的智能体可以一步步地生成笔画序列,但训练一个稳健的 RL 智能体并不容易。另一方面,笔画优化方法在一个大的搜索空间中迭代地搜索一系列笔画参数。因此,这种低效率的搜索方法极大地限制了基于 RL 方法的泛化性和实用性。

上个月,在一篇 ICCV 2021 Oral 论文中,来自百度 VIS 团队和罗格斯大学等机构的研究者将神经绘画视作一个集合预测问题,提出了全新的、基于 Transformer 的框架——Paint Transformer,从而利用前馈网络来预测笔画集合的参数。就其效果而言,研究者提出的模型可以并行地生成一系列笔画,并几乎能够实时地得到尺寸为 512×512 的重建绘画。

更重要的是,由于训练 Paint Transformer 没有可用的数据集,研究者设计了一个自训练的 pipeline,这样既可以在不使用任何现成数据集的情况下训练,又依然能够实现极好的泛化能力。实验结果表明,Paint Transformer 在训练和推理成本更低的情况下,实现了较以往方法更好的性能。

  • 论文地址:https://arxiv.org/pdf/2108.03798.pdf

  • 项目地址:https://github.com/wzmsltw/PaintTransformer


研究者在 Hugging Face 上提供了一个试玩界面,用户只需上传图像即可生成动态重建过程和重建后的绘画。小编也尝试上传了一张图像,生成效果如下所示:

原图与重建后的绘画。

动态重建过程如下:

试玩地址:https://huggingface.co/spaces/akhaliq/PaintTransformer

不过,虽然 Paint Transformer 的效果不错,但一些 reddit 网友似乎并不买账。有人认为,「这么简单的任务根本不需要使用机器学习神经网络来解决。」

更有网友表示,「我曾使用 Processing,仅用 50 行 Scala 代码就实现了类似的结果。」

方法

研究者将神经绘画视作一个渐进的笔画预测过程。在每一步并行地预测多个笔画,以前馈的方式最小化当前画布和目标图像之间的差异。就其结构而言,Paint Transformer 由两个模块组成,分别是笔画预测器(Stroke Predictor)和笔画渲染器(Stroke Renderer)。

图 2Paint Transformer 的自训练 pipeline。

如上图 2 所示,给定一张目标图像 I_t 和中间画布图像 I_c,笔画预测器生成一系列参数以确定当前笔画集合 S_r。接着,笔画渲染器在 S_r 中为每个笔画生成笔画图像,并将它们画在画布 I_c 上,从而生成结果图像 I_r。这一过程可以用以下公式(1)来描述:

在 Paint Transformer 中,只有笔画预测器包含可训练的参数,而笔画渲染器是无参数和可微的模块。为了训练笔画预测器,研究者提出了一个利用随机合成笔画的自训练 pipeline。

笔画定义与渲染器

该研究主要考虑了直线笔画,这种笔画可以通过形状参数和颜色参数来表征。如下图 3 所示,一个笔画的形状参数包括:中心点坐标 X 和 Y,高度 h,宽度 w 和渲染角θ。

笔画渲染器和参数定义。

对于神经绘画任务而言,可微渲染是基于笔画参数合成笔画图像并由此实现笔画预测器端到端训练的一个重要问题。但是,对于该研究中的特定笔画定义,研究者没有采用神经网络,而是使用了基于笔画渲染器的几何变换,从而如预期一样不需要训练并且是可微的。笔画渲染器可以用以下公式(3)来描述:

笔画预测器

笔画预测器的目标是为了预测一系列「cover 中间画布图像和目标图像之间差异」的笔画。此外,为了达到可以模拟真实绘画过程的抽象程度,研究者希望笔画预测器在预测很少笔画的同时,依然可以 cover 大部分的差异区域。

为了实现这一目标,他们在 DETR 的启发下,提出了一个基于 Transformer 的预测器。该预测器输入 I_c 和 I_t,生成一个笔画集合,可以用以下公式(5)来描述:

如下图 4 所示,笔画预测器以 I_c 和 I_t ∈ R^3×P ×P 作为输入,首先采用两个独立的卷积神经网络来提取它们的特征映射 F_c 和 F_t ∈ R^C×P/4×P/4。

损失函数

研究者介绍了像素损失、笔画之间差异的测量以及笔画损失。

首先是像素损失。神经绘画的一个直观目标是重新创建目标图像。因此,I_r 和 I_t 之间的像素损失 L_pixel 在图像级别受到惩罚:

然后是笔画损失。训练期间,有效真值笔画的数量是变化的。因此,按照 DETR,在预定义最大笔画数 N 的情况下,研究者首先需要在 N 笔画的预测集 ¯S_r 和真值集 S_g 之间生成匹配机制以计算损失。

推理

为了模仿人类画家,研究者设计了一种从粗到精(coarse-to-fine)的算法,在推理过程中生成绘画结果。Paint Transformer 的推理算法如下所示:

实验

定性比较。如下图 5 所示,研究者将 Paint Transformer 分别与基于优化和基于强化学习的 SOTA 笔画绘画生成方法进行了比较。其中,相较于基于优化的方法,Paint Transformer 可以生成渲染力更强、更清晰的结果。不过,Paint Transformer 的生成效果明显不如基于强化学习的方法。

定量比较。如下表 1 所示,定量比较的结果与定性比较保持一致。借助生动的画笔纹理,Paint Transformer 能够较基于优化的方法更好地表征原始内容。Zhewei Huang 等人论文《 Learning to paint with model-based deep reinforcement learning 》中提出的方法实现了最佳内容保真度,但在抽象处理上较弱。

数值结果表明,Paint Transformer 可以成功地预测笔画,并优于其他方法。

效率比较。如下表 2 所示,研究者在一个英伟达 2080Ti 上评估了训练与推理时间。在推理期间,Paint Transformer 以前馈的方式并行地生成一系列笔画,因而运行速度明显快于优化基线方法,也略快于强化学习基线方法;对于训练而言,研究者仅需要几个小时就可以训练一个笔画预测器,从总训练时长方面比基于优化和强化学习的方法更方便。并且,无模型笔画渲染器和无数据笔画预测器可以高效和方便地使用。

消融实验结果如下图 6 所示:

风格化绘画。Paint Transformer 可以方便地与艺术风格迁移方法融合,从而生成更吸引人和风格化的绘画。研究者使用 LapStyle 和 AdaAttN 等现有风格迁移方法,在风格化内容图像上生成自然的绘画。如下图 8 所示,借助这种富有想象力的方式,研究者生成了具有丰富颜色和纹理的风格化绘画。


理论风格迁移Transformer
相关数据
机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

卷积神经网络技术

卷积神经网路(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。卷积神经网路由一个或多个卷积层和顶端的全连通层(对应经典的神经网路)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网路能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网路在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网路,卷积神经网路需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。 卷积网络是一种专门用于处理具有已知的、网格状拓扑的数据的神经网络。例如时间序列数据,它可以被认为是以一定时间间隔采样的一维网格,又如图像数据,其可以被认为是二维像素网格。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

图像生成技术

图像生成(合成)是从现有数据集生成新图像的任务。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

百度机构

百度是全球领先的人工智能平台型公司。百度大脑是中国领先的“软硬一体AI大生产平台”,是百度AI的集大成,对外全方位输出超过270多项核心AI能力,服务230万开发者。飞桨是中国首个全面开源开放、功能完备的产业级深度学习平台,是中国自主研发的“智能时代的操作系统”。百度智能云是百度AI To B 业务的重要承载者和输出者,是产业智能化领导者。小度助手是中国领先的对话式人工智能操作系统,拥有中国市场最繁荣、开放的对话式人工智能生态,今年6月,小度助手语音交互次数超过58亿次。作为全球领先的、最活跃的自动驾驶开放平台,百度Apollo代表中国最强自动驾驶实力,被知名研究公司Navigant Research列为全球四大自动驾驶领域领导者之一。目前聚焦在以自动驾驶、汽车智能化、智能交通为核心的三大赛道。自动驾驶技术方面,超过十项中国第一,实力领跑行业。智能交通方面,百度 “ACE交通引擎”是全球首个车路行融合的全栈式智能交通解决方案。

https://www.baidu.com/
推荐文章
暂无评论
暂无评论~