解读Facebook CAN:如何给人工智能赋予艺术创作的力量

雷锋网 AI 科技评论按:能够迭代进化、模仿指定数据特征的GAN(生成式对抗性网络)已经是公认的处理图像生成问题的好方法,自从提出以来相关的研究成果不少,在图像增强、超分辨率、风格转换任务中的效果可谓是惊人的。 (具体可以参见 Valse 2017 | 生成对抗网络(GAN)研究年度进展评述 - 雷锋网(公众号:雷锋网)

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

利用GAN达到图像超分辨率和风格转换示例

今年也有利用GAN做的简笔画到图像转换模型pix2pix(代码地址 https://github.com/phillipi/pix2pix  ,demo地址 https://affinelayer.com/pixsrv/  )。除了下图转换猫的,还有建筑物的、鞋子的、包包的,模型非常有想象力,随便画也没关系,感兴趣的读者可以自己到demo地址里画画看。

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

 demo中用把线条转换成猫的示例

GAN能生成艺术作品吗?

GAN既然已经有如此的图像生成能力了,我们能不能用GAN生成艺术作品呢,毕竟许多现代艺术作品看照片好像也并不怎么复杂,比如下面这幅;超写实主义的就更不用说了。

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

蒙德里安《红黄蓝的构成》

然而,要创造出一副人类觉得有艺术价值的作品并没有那么简单。人类喜欢创新性的作品,人类不喜欢完全模仿的作品;《蒙娜丽莎》和《兰亭集序》只有原作者的原版才被认可是世界艺术瑰宝,后世的人就算基于它们创作,也要有自己的创新,才能带来新的艺术价值,才能被观赏者认可。

根据GAN的基本结构,鉴别器D要判断生成器G生成的图像是否和其它已经提供给鉴别器D的图像是同一个类别(特征相符),这就决定了最好的情况下输出的图像也只能是对现有作品的模仿,如果有创新,就会被鉴别器D识别出来,就达不成目标了。上面几个GAN的例子就能体现出鉴别器D带来的这个特点,用GAN生成的艺术作品也就注定缺乏实质性的创新,艺术价值有限。

那么,能不能让GAN具有一些创新的能力,让这些创新有艺术价值、带有这些创新的作品还能够被人类认可呢?罗格斯大学艺术与人工智能实验室、Facebook人工智能研究院(FAIR)、查尔斯顿学院艺术史系三方合作的这篇论文就通过CAN(Creative Adversarial Network,创造性对抗网络)给出了一种答案。神经网络库Keras的作者François Chollet也在Twitter上推荐了这篇文章。

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

先看看作品如何

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

CAN模型生成的一些艺术作品

可以看到,生成的艺术作品风格非常多样,从简单的抽象画到复杂的线条组合都有,内容层次也有区分。论文中也有对比测试结果,CAN生成的作品不仅比GAN生成的更讨人喜欢,甚至来自巴塞尔艺术展的人类艺术作品都比不上CAN。(具体数据看后文)

如何认识艺术创新

刚才说到,艺术作品需要有创新性,CAN中的C就是Creative,创新性的意思。那么创新性要如何衡量呢、如何达到呢?

以往基于GAN的图像生成方法研究中,人类可以把训练好的网络生成的图像和客观事实相对比(超分辨率、图像补全问题中)或者根据经验判断(风格转换问题中),用来衡量网络的效果;也有过一些更早期的算法,让人类作为训练反馈的一环,引导网络的训练过程。但是对于这次的课题需要设计一个能自动训练和生成、还要衡量作品的创新性的系统而言,以往的方法就起不到什么帮助。

同时,在作者们看来,为了能模仿人类艺术创作的过程,算法中很重要的一部分就是要把算法的创意过程和人类艺术家以往的艺术作品联系起来,像人类一样把对以往艺术的理解和创造新艺术形态的能力整合在一起。 为了能够想办法找到一个能够衡量创新性、参与迭代训练的创新性指标,作者们找来了一组艺术理论。

  • D.E.Berlyne认为,从生理心理学的角度讲,人类的状态中有一种叫做“唤醒水平”的指标,它可以衡量一个人有多警醒、多兴奋;唤醒水平可以从最低的睡觉、休息,一直到暴怒、激动。而一副作品具有“唤醒潜力”的总体特质,它可以提升或者降低观者的唤醒水平;它是作品新颖性、意外性、复杂性、多义性和疑惑性高低的综合体现,这几个属性越高,作品的唤醒潜力就越高。

  • Colin Martindale(1943-2008)提出过一个假说,他认为在任一时刻,创意艺术家们都会尝试增加他们作品的“唤醒潜力”,这就是一种拓宽创作习惯边界的方法。但是,这种增加动作必须使得观察者的负面反应尽可能小(尽量使观察者不付出额外的努力),否则过于激进的产品就会受到负面的评价。

  • Colin Martindale还提出过一个假说,他认为当艺术家探索艺术风格的更多作用的时候,转换艺术风格就会有提高“唤醒潜力”的作用。

这组理论只是解释艺术创新的理论中的寥寥几个,但是它们综合起来给出了两个具有计算性的、可以用于迭代训练的指标:

  1. 创新作品的创新程度不能过高,观者不认为作品是艺术作品的可能性应当尽可能小;

  2. 新的艺术风格就是创新的体现。

CAN网络的构建

根据提炼出的这两个指标,论文中基于GAN的原型构建了这样一种新型的对抗性网络CAN。

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

CAN模型的系统框图

首先,对于“指标1:创新作品的创新程度不能过高,观者不认为作品是艺术作品的可能性应当尽可能小”,就可以转换为经典的对抗性网络,G生成图像,经过艺术作品训练过的D判断G生成图像的是不是艺术作品。这样的对抗性网络生成的图像就已经可以被人类看作是艺术作品。

然后,论文中的模型还根据“指标2:新的艺术风格就是创新的体现”增加了一部分新结构用来处理艺术风格。

论文中使用了25类不同的带标签艺术作品用于D的训练,包含了抽象印象派、立体派、现代派、巴洛克、文艺复兴早期等等风格的共7万5千多幅。然后经过训练的D除了要反馈一幅图像“是否是艺术作品”外,还要反馈“能否分辨图像是哪种艺术风格”。G然后就会利用D的反馈生成尽量难以分辨艺术风格的图像——难以归类到现有分类中的,就是创新了。

“是否是艺术作品”、“是否难以分辨艺术风格”是两种对立的信号,前一种信号会迫使生成器G生成能够被看作的艺术的图像,但是假如它在现有的艺术风格范畴中就达到了这个目标,鉴别器D就能够分辨出图像的艺术风格了,然后生成器就会受到惩罚。这样后一种信号就会让生成器生成难以分辨风格的作品。所以两种信号就可以共同作用,让生成器能够尽可能探索整个创意空间中艺术作品的范围边界,同时最大化生成的作品尽可能游离于现有的标准艺术风格之外。

这也就是论文标题「CAN: Creative Adversarial Networks Generating “Art” by Learning About Styles and Deviating from Style Norms」的含义,创造性对抗网络可以学习艺术风格,然后背离这些现有的风格进行艺术创作。

还说艺术风格,现在是“不好分辨”,“好分辨”不行吗?

相比GAN,CAN增加的反馈是“是否难以分辨艺术风格”,追求的是生成的图像艺术风格难以分辨。虽然根据艺术理论的推导,新的艺术风格是一种创新,但既然是多加了一个反馈,追求“生成的图像艺术风格容易分辨”可以吗?会不会也能生成不错的作品呢?

从另一个角度看,假如追求“难以分辨”的CAN确实比追求“容易分辨”的CAN生成的图像更好,那这就是模型选取了合理的反馈的最佳体现。

说做就做。除了CAN之外,论文中还建立了三种模型用来对比。

  • DCGAN  64x64:经过艺术作品训练的DCGAN(深度卷积生成式对抗网络),输出分辨率为64x64

  • DCGAN 256x256:相比DCGAN  64x64,生成器多加了两层网络,输出分辨率为256x256

  • scCAN:style-classification-CAN,追求“生成的图像艺术风格容易分辨”的CAN

这三种模型生成的画面像下面这样

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

两种DCGAN和scCAN生成的画面

scCAN生成的画面中确实有了可辨认的风格,比如人物特写、风景或者群像。但是直观看上去并不怎么讨人喜欢。

让我们再来看一组CAN生成的图像,上方是人类评价最高的、下方是人类评价最低的。应该说都比scCAN生成的图像精彩得多。

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

人类评价最高和最低的CAN生成的图像

人类能给CAN的图像打几分?

根据刚才的图像可以看到,CAN的效果当然不错,DCGAN 256x256的图像其实也挺好。那么CAN的图像对观画的人来说是不是真的已经难以分辨创作者了呢?跟真的艺术家创作的作品相比高下又如何呢?

为了具体比较,论文中做了几个实验,让人类给不同组的作品打分。

实验1、2: 来自抽象印象派艺术家的作品、选自巴塞尔艺术展的作品、CAN生成的图像、DCGAN生成的图像,一共4组作品,由普通人判断这些作品来自人还是电脑,并给作品打分。

结果:实验1里有53%的人认为CAN的图像是来自人类的,认为DCGAN 64x64的图像来自人的有35%; 实验2里认为CAN的图像来自人类的比例是75%,DCGAN 256x256则是65%。来自抽象印象派艺术家的作品无疑是比例最高的,但有意思的是,两个实验里认为巴塞尔艺术展的作品来自人的比例都还不如CAN高(实验1中41%,实验2中48%)。

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

实验2的结果数据,先让人类评价者从几个角度评价作品,再判断是否是人类创作的。认为图像是人类创作的评价者比例为Q6

实验3:让人类评价者从用心程度、视觉结构、互动性、启发性几个角度给作品评分,结果CAN全部得分最高。这个结果可谓出人意料。

解读Facebook CAN:如何给人工智能赋予艺术创作的力量

实验3结果数据

实验4:为了确认CAN和scCAN之间新颖性和美学表现的高低,请了一群艺术史学生对随机选出的CAN和scCAN图像进行评价。认为CAN的图像更新颖的比例为59.47%,认为CAN的图像更加有美学吸引力的比例为60%,确实有显著区别。

结论

论文中表示,虽然这样的模型还是不能对艺术风格概念有任何语义方面的理解,不过它确实展现出了从以往的艺术作品中学习的能力。至于为什么人类会在多个方面给CAN打出高分,作者们也希望和大家进行开放性的探讨。

论文原文地址: https://arxiv.org/abs/1706.07068 ,雷锋网 AI 科技评论编译

本文作者:杨晓凡

本文转自雷锋网禁止二次转载,原文链接

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

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

相关文章

全向轮底盘磁导轨寻迹

全向轮底盘上安装两条磁传感器带用于磁导轨寻迹 如简图所示,两条与Y直线相交的黑色线条我们认为是两条磁检测传感器带 矢量方法修正车体位置 定义轨道左为负向,轨道右为正向。传感器左检测为负,右检测为正; 定义底盘坐标系为αβ&…

02-1.CSS边框,边界,布局相关笔记

目录 CSS盒子模型 padding内填充 边框 边框属性 border-radius margin外边距 CSS盒子模型 Content(内容): 盒子的内容,显示文本和图像 >>>>类似word 文字A,改变字体与大小padding: 用于控制内容与边框之间的距离 …

图表库

在2018年最后一天开源了自己的基于svg图表库mcharts 后面要大量时间去维护 mcharts 希望多提Issues 具体用法可以看文档 可以一块探讨下技术问题 2019年新的开始新的起点 加油

android仿ios弹框_在“提示”框中:iOS外观(在Android上运行),Google Maps作为Time Machine,下载Wii游戏保存...

android仿ios弹框Once a week we round up some great reader tips and share them with everyone. Read on to see how to make your Android phone look like iOS, use a Google Maps mashup like a time machine, and download Wii game saves. 每周一次,我们收集…

使用 C# 开发的摸鱼背单词软件 ToastFish

你好,这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,实用的工具和组件,希望对您有用!摸鱼神器ToastFish 是一个使用 C# 开发的桌面软件,由 Uahh 开发, 这是一个利用Windows通知栏背单词的软件&…

使用log4Net 输出日志到mongodb

将日志输入到nosql 数据库可以保证日志输出速度和统一管理日志,log4mongo-net 项目http://log4mongo.org/display/PUB/Log4mongofor.NET使用log4net把日志保存到Mongodb。通常可用于代替log4netMS SSQL logging ,和SQL Server相比可以节省40%的存储空间&…

03.JavaScript对DOM操作

JavaScript引入方式 外部引入 在head或者body中&#xff0c;添加以下代码 <script type"text/javascript" src"js/demo.js"></script> 内部引入 在head或body中&#xff0c;定义script标签&#xff0c;然后在script标签里面写js代码 <…

kotlin的suspend对比csharp的asyncawait

协程的出现大大降低了异步编程的复杂度&#xff0c;可以让我们像写同步代码一样去写异步代码&#xff0c;如果没有它&#xff0c;那么很多异步的代码都是需要靠回调函数来一层层嵌套&#xff0c;这个在我之前的一篇有介绍 rxjava回调地狱-kotlin协程来帮忙本篇文章主要介绍kotl…

file协议 控制面板_如何在Windows File Explorer导航窗格中显示控制面板和回收站

file协议 控制面板By default, the Windows File Explorer’s sidebar is divided into big categories like Quick Access, This PC, Network, and so on. But a quick setting change can make your navigation pane look a bit more like the traditional tree you’d see i…

hdu-2612-Find a way(广搜,bfs)

Pass a year learning in Hangzhou, yifenfei arrival hometown Ningbo at finally. Leave Ningbo one year, yifenfei have many people to meet. Especially a good friend Merceki. Yifenfei’s home is at the countryside, but Merceki’s home is in the center of city.…

过滤器(Filter)

1 什么是过滤器 过滤器JavaWeb三大组件之一&#xff0c;它与Servlet很相似&#xff01;不它过滤器是用来拦截请求的&#xff0c;而不是处理请求的。 当用户请求某个Servlet时&#xff0c;会先执行部署在这个请求上的Filter&#xff0c;如果Filter“放行”&#xff0c;那么会继…

03-1.JavaScript基础语法略写/模版字符串

基础语法 参考前端基础之JavaScript - Q1mi - 博客园 略写原因 由于后续主要用jQuery编写&#xff0c;jQuery简化编程。大概了解JavaScript语法即可。 jQuery是一个轻量级的、兼容多浏览器的JavaScript库。jQuery使用户能够更方便地处理HTML Document、Events、实现动画效果…

发布适用于 .NET 7 的 .NET MAUI

点击上方蓝字关注我们&#xff08;本文阅读时间&#xff1a;6分钟)我们在六个月前向您介绍了 .NET 多平台应用程序 UI (MAUI)&#xff0c;现在我们很高兴地宣布 .NET MAUI 在我们的下一个主要版本 .NET 7 中普遍可用。在此短的时间范围内&#xff0c;我们在 .NET MAUI 中的主要…

bzoj3160(FFT+回文自动机)

题目描述 https://www.lydsy.com/JudgeOnline/problem.php?id3160 题解 先把问题转化一下&#xff0c;我们要求的是非连续对称回文子序列。 ans回文子序列数-回文子串数。 回文子串数可以用PAM或manachar求出来。 复习了一下PAM&#xff0c;用它求回文子串数和SAM一样&#xf…

03:数据结构 栈、队列、链表与数组

算法其他篇 目录&#xff1a; 1.1 数据结构中的一些概念1.2 栈&#xff08;stack&#xff09;1.3 队列1.4 链表1.5 python中字典对象实现原理1.6 数组1.1 数据结构中的一些概念 返回顶部 1、数据结构是什么 1、简单来说&#xff0c;数据结果就是设计数据以何种方式存储在计…

力登:以智能化管理提升数据中心服务能力成熟度

2017年2月28日&#xff0c;由全国信息技术标准化技术委员会信息技术服务分技术委员会指导的《信息技术服务数据中心服务能力成熟度模型》发布&#xff0c;在业界首次提出“数据中心服务能力成熟度”概念&#xff0c;使得数据中心的管理真正实现了数字化和持续优化&#xff0c;是…

基于.NET 7 的 WebTransport 实现双向通信

Web Transport 简介WebTransport 是一个新的 Web API&#xff0c;使用 HTTP/3 协议来支持双向传输。它用于 Web 客户端和 HTTP/3 服务器之间的双向通信。它支持通过 不可靠的 Datagrams API 发送数据&#xff0c;也支持可靠的 Stream API 发送数据。因为 HTTP/3 使用了基于 UDP…

Django01: 安装/基础命令/设置笔记

安装 按官网版本支持&#xff0c;现在比较适合使用1.11版本。 下载安装命令 pip3 install django1.11.9 新建项目 django-admin startproject mysite 运行项目 python manage.py runserver 127.0.0.1:8000 运行相关 目录介绍 mysite/ ├── manage.py # 管理文件 └…

JavaScript校验网址

gistfile1.txt var linkUrl https://www.baidu.com if( typeof (linkUrl) ! undefined &amp;&amp; linkUrl ! ){var strRegex ^((https|http|ftp|rtsp|mms)?://) ?(([0-9a-z_!~*\().&amp;$%-]: )?[0-9a-z_!~*\().&amp;$%-])? //ftp的user (([0-9]{1,3}.)…

线上问题随笔记录数据库连接池问题

修改方法 转载于:https://www.cnblogs.com/lvgg/p/8581506.html