当前位置: 首 页 > 机器学习 >

当 AI 邂逅艺术:机器写诗综述

来源:雷锋网 发布日期:2017-05-15

引言 什么是艺术? 机器的作品能否叫艺术? 机器能否取代艺术家? 这些问题,相信不同的人,会有不同的答案。很多人认为机器生成的作品只是简单的模仿人类,没有...

引言

什么是艺术?
机器的作品能否叫艺术?
机器能否取代艺术家?

这些问题,相信不同的人,会有不同的答案。很多人认为机器生成的作品只是简单的模仿人类,没有创造性可言,但是人类艺术家,不也是从模仿和学习开始的吗?本文是为 PaperWeekly 写的一篇机器诗歌生成的综述文章,希望能增进大家对这个领域的了解。

诗歌是人类文学皇冠上的明珠。我国自《诗经》以后,两千年来的诗篇灿若繁星。让机器自动生成诗歌,一直是人工智能领域一个有挑战性的工作。

基于传统方法的诗歌生成

机器诗歌生成的工作,始于 20 世纪 70 年代。传统的诗歌生成方法,主要有以下几种:

  • Word Salada(词语沙拉):是最早期的诗歌生成模型,被称作只是简单将词语进行随机组合和堆砌而不考虑语义语法要求。

  • 基于模板和模式的方法:基于模板的方法类似于完形填空,将一首现有诗歌挖去一些词,作为模板,再用一些其他词进行替换,产生新的诗歌。这种方法生成的诗歌在语法上有所提升,但是灵活性太差。因此后来出现了基于模式的方法,通过对每个位置词的词性,韵律平仄进行限制,来进行诗歌生成。

  • 基于遗传算法的方法:周昌乐等 [1] 提出并应用到宋词生成上。这里将诗歌生成看成状态空间搜索问题。先从随机诗句开始,然后借助人工定义的诗句评估函数,不断进行评估,进化的迭代,最终得到诗歌。这种方法在单句上有较好的结果,但是句子之间缺乏语义连贯性。

  • 基于摘要生成的方法:严睿等 [2] 将诗歌生成看成给定写作意图的摘要生成问题,同时加入了诗歌相关的一些优化约束。

  • 基于统计机器翻译的方法:MSRA 的何晶和周明 [3] 将诗歌生成看成一个机器翻译问题,将上一句看成源语言,下一句看成目标语言,用统计机器翻译模型进行翻译,并加上平仄押韵等约束,得到下一句。通过不断重复这个过程,得到一首完整的诗歌。

基于深度学习技术的诗歌生成

传统方法非常依赖于诗词领域的专业知识,需要专家设计大量的人工规则,对生成诗词的格律和质量进行约束。同时迁移能力也比较差,难以直接应用到其他文体(唐诗,宋词等)和语言(英文,日文等)。随着深度学习技术的发展,诗歌生成的研究进入了一个新的阶段。

RNNLM

基于 RNN 语言模型 [4] 的方法,将诗歌的整体内容,作为训练语料送给 RNN 语言模型进行训练。训练完成后,先给定一些初始内容,然后就可以按照语言模型输出的概率分布进行采样得到下一个词,不断重复这个过程就产生完整的诗歌。Karpathy 有一篇文章,非常详细的介绍这个:The Unreasonable Effectiveness of Recurrent Neural Networks

Chinese Poetry Generation with Recurrent Neural Networks

RNNPG 模型 [5],首先由用户给定的关键词生成第一句,然后由第一句话生成第二句话,由一,二句话生成第三句话,重复这个过程,直到诗歌生成完成。模型的模型由三部分组成:

  • Convolutional Sentence Model(CSM):CNN 模型,用于获取一句话的向量表示。

  • Recurrent Context Model (RCM):句子级别的 RNN,根据历史生成句子的向量,输出下一个要生成句子的 Context 向量。

  • Recurrent Generation Model (RGM):字符级别 RNN,根据 RCM 输出的 Context 向量和该句之前已经生成的字符,输出下一个字符的概率分布。解码的时候根据 RGM 模型输出的概率和语言模型概率加权以后,生成下一句诗歌,由人工规则保证押韵。

模型结构如下图:

当 AI 邂逅艺术:机器写诗综述

模型生成例子如下图:

当 AI 邂逅艺术:机器写诗综述

Chinese Song Iambics Generation with Neural Attention-based Model

模型 [6] 是基于 attention 的 encoder-decoder 框架,将历史已经生成的内容作为源语言,将下一句话作为目标语言进行翻译。需要用户提供第一句话,然后由第一句生成第二句,第一,二句生成第三句,并不断重复这个过程,直到生成完整诗歌。
基于 Attention 机制配合 LSTM,可以学习更长的诗歌,同时在一定程度上,可以保证前后语义的连贯性。

模型结构如下图:

当 AI 邂逅艺术:机器写诗综述

模型生成例子如下图:

当 AI 邂逅艺术:机器写诗综述

Chinese Poetry Generation with Planning based Neural Network

模型 [8] 不需要专家知识,是一个端到端的模型。它试图模仿人类开始写作前,先规划一个写作大纲的过程。整个诗歌生成框架由两部分组成:规划模型和生成模型。

规划模型:将代表用户写作意图的 Query 作为输入,生成一个写作大纲。写作大纲是一个由主题词组成的序列,第 i 个主题词代表第 i 句的主题。

上一篇:微软官方解读自家机器阅读研究:要教机器学会阅读、回答和提问
下一篇:一个框架解决几乎所有机器学习问题

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 专访姚劲波:未来去家里服务的可能是机器人

    专访姚劲波:未来去家里服务的可能是机器人

  • 当 AI 邂逅艺术:机器写诗综述

    当 AI 邂逅艺术:机器写诗综述

  • 机器还是凶器?机器人"行凶"后,人机如何共

    机器还是凶器?机器人"行凶"后,人机如何共

  • Master以26胜0负完胜顶级围棋手:是AI还是柯

    Master以26胜0负完胜顶级围棋手:是AI还是柯