使用深层神经网络来模仿人类右脑
据说人类有左脑和右脑的两部分。已知大脑的左侧是分析和解决问题技能的中心。大脑的右侧被称为艺术能力的中心。创造“原创”内容的能力将人与机器区分开来。
这些内容的一些例子是:
艺术的生成
音乐的生成
散文/文本的生成
已有数百年的艺术家掌握了这些技巧,并在这些各自的艺术媒介中创造了基准,我们至今仍然对此表示赞赏。每一代都看好这些专家。即使对我们最好的人来说,基准已经很高并且难以达到。例如:与文森特梵高的艺术天才或贝多芬的音乐作品或莎士比亚的作品相匹配是非常罕见的。马尔科姆格拉德威尔普及了这样一种观念,即人们需要花费至少10,000小时才能被视为某个地区的专家。它可能是科学,艺术,工程等等。对于人类来说,这意味着我们有多少时间可以在一个地区花费一定的时间来获得专业知识。但是,这可以通过机器或AI来挑战吗?答案是有前途的是的!我们还没有完全,但神经网络和人工智能/机器学习方面的进步看起来令人鼓舞,可以在不久的将来进入这个领域。在这篇文章中,我们将看到一些使之成为可能的基本原则,并且探索一些例子来看到这一点。
生成对抗网络(GANs)在过去的两年中变得越来越流行,特别是在通过图像作为交流媒介表达艺术领域。还有其他算法用于像限制玻耳兹曼机器(RBM),长期短期记忆(LSTM)网络和递归神经网络(RNN)这样的序列数据。使用这些网络并将它们映射到以上三个类别的使用案例如下所示:
图像生成 - 使用培训图像或仅使用文字描述创建新图像,提高图像分辨率,Syle Translation等。我们将在未来的文章中介绍前两种方法并探讨风格翻译。
音乐生成 - 使用训练音乐样本在给定的流派中创建音乐。这使用LSTM,因为在使用递归神经网络(RNN)时,至少存在一个消失梯度问题的缺点。
文本/散文的生成 - 使用特定的关键字或主题创建新闻文章或故事
生成对抗网络(GAN)
为了理解GAN,我们需要认识到,机器学习算法主要有两种类型 - 生成型和判别型。
生成模型从训练样本分布生成新样本
判别模型可以将给定样本映射到许多可能输出中的一个(例如:将输入图像分类为使用MNIST数据集时映射为0 - 9的值)或两个输出(例如:将图像映射为猫或一只狗)
伊恩古德费洛提出了一个模型来协调利用这两种模型,并创造了GAN架构。该模型按以下方式工作。
generator使用随机噪声来创建输出。
鉴别器将上述输入与实际训练数据进行比较。它将它归类为假的(或真实的)。
这种见解被generator用来不断改进输出图像的质量(使用反向传播来调整底层神经网络的权重和偏差)
这个过程一直持续到generator创建图像的时间如此真实,以致鉴别器不再能够看到差异(此时模型达到纳什均衡)
模型背后的数学/统计数据:
如果给定样本空间和生成的输出是两个分布,我们的目标是最小化后者与前者的分歧。Ian Goodfellow提出的架构使用了这种散度的风格,这种散度被称为Jensen-Shannon(JS)散度(还有一些其他风格也针对GAN提出,例如Kullback-Leibler又名KL散度或Wasserstein GAN中使用的Wasserstein距离又名WGAN)。
由于本文的范围没有涉及很多概率论,GaN在JS散度上变得很受欢迎,因为它是对称的,而KL不是对称的。当使用JS背离时,架构仍然面临挑战,因为很难优化和训练网络。有人指出,通常情况下,生成器会学习真正分布的非常小的子集(正如稍后在某些示例中会看到,生成的输出不会“感觉”与输入训练类似)。
为了解决这些局限性,WGAN建议使用一种名为Earth Mover 's distance (EMD)的统计方法来计算分布之间的距离。使用这个方法,我们可以反映两个分布的距离,即使它们没有重叠,也可以提供有意义的梯度。
您可以在下图中看到,JS散度和Wasserstein都可以将分布标记为独立的,但是后者不受渐变问题的影响。
使用深度神经网络生成上下文(图像,音乐,文本)的实例
图像 - 新内容创作 - 口袋妖怪图像生成
Yota Ishidi使用PokemonGo数据集,并展示了GAN如何用于创建新型口袋妖怪角色。请注意,这不涉及任何人为干预 - 没有艺术家或图形开发人员建议需要生成什么。神经网络学习了给定的一组训练图像的模式,该生成器在创建新颖的或“从未见过的”口袋妖怪角色方面逐渐变得更好。这是非常强大的!我在笔记本电脑上运行了代码,并没有对模型进行足够长的训练。这两张照片和gif显示了在这个简短的培训过程中所取得的进展,这个过程开始时是一片空白。
第二张图片显示了在模型在训练过程中变得更好的过程中生成的新口袋妖怪角色。虽然它看起来像斑点,但如果我们仔细观察,我们可以确定这些特征。
下图显示了在强大的GPU机器上生成的图像。这些角色更接近我们在媒体中看到的口袋妖怪。
图像 - 创作新内容 - 生成花鸟
本文前面介绍了标准GAN的一些限制以及底层数学的高级概述。罗格斯和百度的一个研究团队使用了两个GAN,并将其称为StackGAN,并使用它来从文本描述中生成高质量的图像。
该团队将这个提出的模型与之前的模型进行了比较,下面的图片显示了vanilla GAN与这个提议的架构的两个阶段的输出之间的差异。
下面介绍StackGAN模型的体系结构。
第一个GAN(称为第1阶段GAN)接受文本输入并生成原始形状和颜色以形成低分辨率图像
第二个GAN(称为第2阶段GAN)采用此低分辨率图像和文本输入并生成更高分辨率的图像。
下面的图像显示了新建的图像,这些图像是通过建议体系结构中两个阶段的纯文本描述创建的。
图像 - 图像增强 - 提高分辨率
估计来自低分辨率(LR)对应物的高分辨率(HR)图像的高度具有挑战性的任务被称为超分辨率(SR)。这个问题更加突出,特别是在高比例因子下,重构SR图像中的纹理细节不存在。Twitter的研究人员发现了使用GAN解决此问题的独特方法。左边的两张图片显示了传统的解决方案,第三张图片显示了使用该模型的解决方案。这看起来非常接近最右侧显示的原始HR图像。
音乐生成
音乐和数学之间有很强的相关性。音乐的基本特征,如音符,和弦,音调,节奏等具有一定的可重复模式,可以用数学来表达和分析。当我们使用机器学习和人工智能的镜头学习音乐时,音乐属于序列数据类别。LSTM网络通过为训练提供一组音乐输入样本,最适合于生成这种音乐。下面的例子显示了我们如何通过提供训练集作为输入来生成Jazz输出。
文本生成
RNN和LSTM用于分析神经网络中的序列数据。我们可以提供一个文本语料库,并要求该模型给出序列中下一个字符的概率分布,给定一系列先前的字符。执行此过程以一次生成一个文本字符。斯坦福大学进行了一项研究,表明我们不仅可以使用语料库中的样本生成文本,还可以基于输入模拟输出散文的结构和风格。
该示例输出显示了通过使用莎士比亚作品作为训练集而由模型创建的“新颖”(从未见过)文本。
VIOLA:
Why, Salisbury must find his flesh and thought
That which I am not aps, not a man and in fire,
To show the reining of the raven and the wars
To grace my hand reproach within, and not a fair are hand,
That Caesar and my goodly father’s world;
When I was heaven of presence and our fleets,
We spare with hours, but cut thy council I am great,
Murdered and by thy master’s ready there
My power to give thee but so much as hell:
Some service in the noble bondman here,
Would show him to her wine.
KING LEAR:
O, if you were a feeble sight, the courtesy of your law,
Your sight and several breath, will wear the gods
With his heads, and my hands are wonder’d at the deeds,
So drop upon your lordship’s head, and your opinion
Shall be against your honour.
结论:
正如我们在这些例子中看到的那样,用各种表达媒介创造机器“原创”思想的能力是非常强大的。随着这方面的研究进展,将人类创造的艺术与计算机生成的艺术(使用AI /机器学习)艺术区分开来的能力将继续变得非常困难。为了确定这些情况的差异,我们可以利用区块链(例如)以数字方式指纹机生成的内容,以便将它们与训练集区分开来。