创建可分析艺术品的计算机视觉和机器学习算法
作者 美国罗格斯大学 Ahmed Elgammal
当您研究一幅画时,您会作出关于该画作的若干推断。例如除了理解主题外,您可能还会按照时期、风格和艺术家对其进行分类。那么,计算机算法能否像人类一样深入“理解”一幅画并轻松地进行分类呢?
在罗格斯大学艺术与人工智能实验室,我和我的同事汇集了过去六个世纪几千幅画作的数据库,使用MATLAB®、Statistics and Machine Learning Toolbox™对这个问题进行了深入研究。我们还解决了两个关于AI算法的功能和局限的有趣问题:它们能否发现哪些画作对后世艺术家的影响最大,以及能否仅利用画作的视觉特征衡量其创造性。
通过提取视觉特征对作品进行分类
我们希望开发出能够按风格(例如立体派、印象派、抽象表现派或巴洛克派)、题材(例如田园、肖像或静物)和艺术家来对画作进行宽泛分类的算法。完成这种分类首先要求能够识别颜色、构图、纹理、视角、主题和其它视觉特征。其次,还要选取最能够展示不同画作相似性的特征。
借助MATLAB和Image Processing Toolbox™,我们开发出了能够提取画作视觉特征的算法。特征提取算法在计算机视觉中相当常见,且容易实现。比较困难的任务是找到最佳的机器学习技术。我们首先在Statistics and Machine Learning Toolbox中使用支持向量机(SVM)和其它分类算法来识别可用于风格分类的视觉特征。在MATLAB中,我们随后采用距离度量学习技术对特征进行评估,进而提高算法对画作的分类能力。
通过数据库检测,我们开发的按风格分类画作的算法准确率达到60%,其中可能存在2%的随机性。虽然艺术历史学家的准确率远远高于60%,但算法的准确率仍高于非专业人士。
使用机器学习发掘艺术的影响力
一旦我们有了可以准确地对绘画之间的相似之处进行分类的算法,我们便可以着手处理下一个挑战:利用机器学习揭示艺术的影响力。我们假设,对于风格分类有用的视觉特征(一个监督式学习问题)同样适用于确定影响力(一个无监督问题)。
艺术史学家的理论认为艺术影响力是基于艺术家在同一时期如何工作、旅行或者交往决定的。我们基于MATLAB的机器学习算法仅使用视觉元素和创作日期进行分析。我们认为,一个将画作中的主题和符号考虑在内的算法会比仅仅依赖于颜色、纹理等低级别特征更有效。出于这种考虑,我们使用了通过谷歌图片训练的分类算法来识别特定对象。
我们对66名生活年代相差550多年的不同艺术家创作的1700多幅作品进行了算法测试。该算法可以轻松识别出维拉斯奎兹的《教皇英诺森十世肖像》对弗朗西斯·培根的《教皇英诺森十世肖像的习作》的影响(图1)。
即使外行也能轻松识别出这两幅画作在构图和主题上的相似性,但该算法也给出了令和我们一起工作的艺术史学家们十分惊讶的结果。例如,我们的算法识别出法国印象派画家弗雷德里克·巴齐耶在1870年创作的《巴齐耶的画室》很有可能影响了诺曼·洛克威尔在80年后创作的《沙弗莱顿的理发店》(图2)。
尽管这两幅画作乍看可能不太相似,但仔细观察就会发现其在构图和主题上的共同点,比如每幅画中的火炉都在画的右下方,三个人在画面中间,还有左下角的椅子和三角形空间结构。
在我们的数据集中,算法正确地识别出艺术史学家认同的55个影响点中的60%,这表明仅视觉相似性即可为算法(可能为人类)提供足够的信息来确定这些影响。
通过解决网络中心性问题衡量创造性
最近,我们的研究集中在开发衡量艺术创造力的算法上。我们这个项目基于一个可识别主题创意是否新颖和有影响力的常用定义。也就是说,一幅有创造性的绘画作品应该不同于其先期的绘画(新颖度),但与后世作品具有相似度(影响力)。
为解决这一问题,我们再次看到应用MATLAB算法识别绘画之间相似性的机会。在MATLAB中,我们创建了一个网络:顶点是绘画,每条边表示顶点位置上两幅画之间的相似度。通过在这个网络上的一系列转换,我们发现根据这样一个图形进行关于创造力的推断是一个网络中心性的问题,而这个问题可以通过MATLAB有效解决。
我们使用两个包含超过62,000幅画作的数据集测试我们的创造性检测算法。该算法给一些艺术史学家认为新颖且具有影响力的作品打出了很高的分数,包括图3所示的一些作品。排名高于同期毕加索的《阿维尼翁的少女》(1907)的是马列维奇的几幅绘画作品。起初,这个结果让我很吃惊,因为我对马列维奇的作品知之甚少。我后来得知他是至上主义运动 —— 最早的抽象艺术创始人之一。
为了对算法进行基本验证,我们改变了某些艺术作品的创作时间,有的时间提前,有的时间推后。在这些“时间机器”实验中,我们看到某些时间提前到十七世纪的印象派艺术的创造力分数大幅增加,时间推后到20世纪的巴洛克画作分数大幅降低。算法正确地检测出300年前创造的什物在今天并不具有创意,而如今一些有创意的作品放在过去创意度将大大提高。
针对正在进行的艺术研究的可扩展框架
人类与生俱来就有对艺术进行分类的感知能力,并且擅长识别不同画作之间的共同点,但缺乏时间和耐心应用这些技能对数以千计甚至数以百万计的绘画作品进行分类。处理这种规模庞大的任务是计算机所擅长的。通过开发与人类感知能力相近的机器学习算法,我们的目标是为艺术史学家提供分类庞大图像数据库的工具。
我们在MATLAB开发的用来识别共性和衡量创造性的框架并不只局限于艺术方面。它可以应用到文学、音乐或任何其它创造性领域,前提是这些单独的作品可以被编码并能被算法识别。
然而,目前我们的关注点仍然在视觉艺术方面。我们不仅关心如何确保机器学习算法产生良好结果,也关心如何实现这些结果。在这个领域,MATLAB也具有巨大优势,因为它提供许多可快速、轻松地使结果可视化的方法。这些可视化结果使我们能够理解并利用它们为不断发展的人工智能研究提供信息。
2016 年发布