九歌诗词生成,九歌 清华大学写诗

介绍:

本文介绍了清华大学THUNLP实验开发的具有文学表现力的古典诗词自动生成系统“九歌”的算法。主要包括以下几个方面:

自动诗的起源

九哥的模型算法

评判系统简介

自动诗歌写作和知识图谱

01

自动诗的起源

1.自动写诗

什么是自动写诗?

通过自动诗歌创作,用户提供特定形式的输入,例如关键字、文本段落或照片,生成模型根据该输入生成完整的诗歌。生成的诗歌必须满足某些形式要求,包括:它必须满足一定的语义要求,如长度、流畅、句子流畅、连贯等。

自动诗歌写作的研究价值

最初目的:机器智能探索

这个问题具有非常丰富的研究价值,我们做这个问题的最初目的是研究机器智能。人工智能之父阿兰·图灵曾描述和想象过人工智能写诗。它反映在被称为图灵-杰斐逊辩论和他1950 年关于图灵测试的论文中。图灵认为,人工智能有可能写出有节奏的诗歌,并在某种程度上理解诗歌的韵律意象。

人工智能的经典任务是围棋,考验逻辑推理能力,而自动化诗歌创作则考验创造力。假设整个汉字集中大约有10000个字符,那么所有可能的齐鲁的数量远大于可能的围棋棋盘数量或宇宙中的原子数量。中国著名科幻小说家刘慈欣在他的短篇小说《诗云》中设想了一种先进的知识文明,可以产生并保存各种诗意的情境,但真正有价值的好诗却很难找到。方式。在浩瀚的可能性中,要找到或创造出一首从未被创造过的具有文学价值的诗,是极其困难的。

研究

这项任务对于研究人类智力也很有用。根据多元智能理论,语言智能是人类智能的重要组成部分,而诗歌,尤其是中国古典诗歌,是一种非常特殊的语言形式,具有很多优点,它具有许多可计算的创造力点。非常好的研究切入点。将两者结合起来将使我们能够在未来构建真正的类人人工智能。

应用

除了研究价值之外,这个研究方向在很多领域还拥有丰富的应用场景和商业价值,所以在九歌系统开发出来之前,市面上已经出现了很多诗歌创作软件。包括一些国内外作家、诗人、大学教授在内的各界人士对机器诗歌创作的评价越来越积极。

02

九哥的模型算法

接下来我们将介绍整个系统使用了哪些算法以及创建了哪些模型。

1 任务描述及研究框架

诗歌生成可以广义地定义为章节级文学文本的条件生成任务。

为了更好地提高生成的诗歌质量,中国古典诗歌,因为诗歌是一种文学体裁,可能不同于评论和产品描述,更应该注重可读性和文学性,注重文学表达。所以我们解构了文学表达的两个层面。一是文字质量,这是表达的基础。二是审美特征,这是诗歌作为一种文学体裁区别于其他写作形式的最重要特征。

在文学质量方面,我们注重连贯性和相关性。

在审美特征上,强调新颖、风格、情感。

改变。各个方面我们都一一进行了系统的研究,发表了各种论文,对这些技术进行了工程实现,最后集成了我们的九歌系统。这些点对应于诗歌的广义描述,我们看到连贯性对应于话语,话题性对应于条件生产,审美特征对应于文学性。

2、提升文学表达力的五个层面的算法研究

连续性

这是因为人类创作的诗歌句子之间有着密切的联系和自然的过渡,这些句子作为一个整体在主题和意境上具有良好的连贯性。比如《春风》这首诗,前两句描写的是非常温暖的早春和晚冬的景色,而后两句则带有非常消极的边塞乡愁情绪。没有中间立场,连续性不好。

查找问题原因

造成这个问题的原因主要是由于以前的诗歌生成方法使用不当造成的。以前使用的是单一历史向量方法(如上图),但它存在如图所示的三个问题。使用的另一种方法是将上面的整个语句组合起来,但我们发现如果模型没有足够的容量,对于长输入序列,性能会显着下降。

解决方案想法的显着线索模型

为了解决这个问题,我们首先受到《文心雕龙·章句》中“一脉”一词的启发,提出了显着线索模型。

为了实现这一目标,我们提出了显着性线索模型。

设计思路是,在生成诗歌的过程中,将每首诗中没有实际语义的部分(例如虚词)丢弃,用文本中具有重要语义的部分内容来生成完整的文本进行替换。文本。为下面生成的指南形成一个显着的线索。

它使用本地上下文而不是完整上下文,从而避免了过度约束。同时,运用上述要点可以减少干扰,增强相关性。使用动态构建线索整个骨架的方法,而不是提前指定线索,可以增加创造力和灵活性。

该模型的核心在于它应用两条信息来计算每个单词的显着性的方式。其中一部分是基于整个语料库静态计算的TF-IDF 值作为全局显着性。此外,在生成过程中,两个句子之间的注意力矩阵充当动态局部显着性。例如,注意力矩阵可以按列求和以获得输入侧每个单词的局部显着性。然后,我们提出了一种算法来进一步过滤低显着性单词并将其整合到全局显着性中。通过加权,我们最终可以选出天鹅的关键图像。

使用自动和手动评估相结合的方式评估诗歌。自动评估使用BLEU。人工评价可以证明绝句的连贯性和完整性。如图所示,质量的提升最为明显。

正如您在此示例中所看到的,该模型可以选择重要的图像来指导诗的最后一句,并生成高度相关的落叶图像。

进一步优化的工作记忆模型

这种方法的问题在于,每个句子中选择的显着单词的数量是人为指定的超参数。太多的选择会导致冗余;太多的选择又会导致重要信息的丢失。在实践中,我更喜欢一种更灵活和动态的方法,自动确定每个句子应保留多少重要和显着的内容,而无需手动指定。在这方面,我们参考了语言心理学中语境连贯性的解释,它认为只要内容可以与工作记忆中存在的语义联系起来,就可以实现连贯性。工作记忆是人脑中存储容量有限的结构,用于存储临时信息,然后用于处理决策。我们模拟了这种工作记忆并提出了工作记忆模型。

该型号具有不同的内存模块。首先,有一个历史记忆模块(历史记忆M1),它还从每个生成的句子中选择并写入最重要的标记。然而,不同之处在于,这些模块是动态更新的,并且当它们在生成过程中变满时,旧的或不太相关的模块会被自动选择并覆盖。这样,你就可以维持多个独立且有限的记忆。插槽不仅可以提供足够的存储容量来长距离维护信息,而且不能无限扩展。

还有一个本地记忆模块(Local Memory M2),用于存储前一句产生的诗词,作为完整而亲密的上下文信息,以及相反句子等语义相关信息,加速内容生成。

在读取记忆模块时,所有不同的模块都被统一读取,模型可以自动决定是否关注远近的不同信息,从而使整首诗的艺术性保持相关性。

询问自然

文本质量的另一个方面是相关性。由于诗歌生成是一个条件生成任务,我们期望输入内容能够在生成的诗歌中得到充分体现,以提高用户体验。传统诗歌生成遗漏了一些输入信息,这主要是由于关键词应用不当造成的。

应用关键字有两种传统方法。一种是将多个关键词压缩并生成为单个主题向量。您的关键字包含率将会下降。另一种方法是在每个句子中插入关键字。该方法的缺点是当输入关键词的数量小于句子的数量时,需要应用关键词扩展机制,并且生成的诗歌过于依赖单词。由于诗歌是按照用户输入的关键词的顺序生成的,不够灵活。

解决思路的主题记忆模块和主题追踪机制

我们所做的就是在工作记忆模型中添加一个新模块,即主题记忆模块(主题记忆M3)。该模块明确且独立地存储每个主题词。这些关键字被显式保存和加载,这可以防止关键字混合并提高关键字包含。同时,独立存储和读取意味着词序互不依赖,使得生成的诗歌主题表达的形式和顺序更加灵活。

同时,我们还设计了主题跟踪机制(主题跟踪),记录每个主题在生成过程中是否以更清晰的方式表达,以提高其覆盖率。

通过测试绝句,我们平均可以生成83% 的诗歌输入关键词,这比之前的基线模型要高得多。

当用户输入是句子/段落时会出现新问题

除了关键字之外,用户还倾向于输入描述主题的完整句子或段落。我该如何处理?工程流水线首先进行中文分词,然后进行关键词提取,将提取的关键词输入到模型中进行生成。然而,这个管道在分词和提取方面存在错误,这肯定会导致信息丢失并且无法生成所需的诗句。

我们发现中国现代诗歌和古代诗歌的词表重叠了78%,这意味着两者可以被认为是同一语言的两种不同风格。我们提出的解决方案是:文本风格转换——将用户输入直接转换为古典诗歌,从而最大限度地保留用户提供的主题信息。

解决方案实例支持的风格迁移模型

在转换文本样式之前有两种不同的范例。两者在内容保存和风格转换准确性方面都有独特的优势。我们的做法是将两种方法结合起来,取长补短。

首先,我们提出了一种基于充分保留用户输入的词级源信息的Seq2Seq结构,同时使用潜在空间风格表示来构建更具辨别力和表现力的风格信号,最后加入。将两者结合起来可以在转换后保留用户输入的语义内容和转换后的诗歌的文体准确性之间提供更好的平衡。我们首先使用一组风格实例,例如一小组100 首诗,来导出一种新的数学形式来表示古诗的风格,即特定风格的经验分布。在此基础上,推导出与模型结构一一对应的新的变换形式。

我们的核心是风格编码器,问题是如何从这组风格实例中提取出足够灵活且富有表现力的风格表达信号。此过程在潜在空间中执行,并使用生成流模型构建更复杂的潜在空间样式,从中创建样本。另外,在将此类古诗词转换为现代汉语时,翻译标注数据很少,因此为了有效利用这些数据,我们进一步引入了如图所示的半监督学习损失。

当优化这个损失时,我们同时做三件事。第一个是最大化从现代汉语文本和风格示例生成目标风格诗歌的概率下限。同时,我们最小化这个概率的负值的上限,并在两侧逼近它。最后,我们调整有和没有标记数据的古诗的分布,以学习最终生成时与真实诗歌空间更一致的风格表示。

新颖性

除了作为文学文本的品质之外,诗歌最重要的特征是它的审美属性,首先是它的新颖性。因为用户想读新的、有趣的诗歌,而不是重复别人写的无聊的诗歌。新颖性的最低要求是模型能够针对用户的各种主题词输入生成差异化、新颖的诗歌。

模型优化通常采用MLE最大似然估计,这使得很难实现上述要求。具体来说,它是一个代币级别的交叉熵损失。这种损失往往会记住并生成高频模式,例如高频N 元语法和停用词。同时,该损失函数的评估指标在评估粒度和评估指标上与人类评估不匹配。

解决思路的相互强化学习

为了解决这个问题,我们建议使用强化学习。我们为人类诗歌评分的每个指标创建定量近似值和建模,将其用作评分奖励,并在训练过程中使用强化学习来激励模型。创作在这些指标上得分更高的诗歌。

此外,我们提出了相互强化学习,因为写作学习是一组人的任务,在学习过程中需要让生成器之间不断沟通和参考。因此,在训练过程中,我们同时训练两个不同的模拟学生的生成器和一个模拟教师的评分器。生成器不仅从老师那里获得梯度反馈信号,而且还通过一定的信息相互交互。为了实现这种交互,我们提出了一种算法,可以在搜索整个强化学习策略空间时沿着两条不同的路径进行搜索。这不仅加快了搜索速度,还防止生成器陷入局部最优。

风格化

另一个特征和审美特征是风格化。我们知道人类可以在同一主题上创作出风格完全不同的诗歌,因此我们希望我们的模型也能实现对风格的控制。我们要做的就是将整个风格无关的诗意空间p(x)分成不同风格依赖性的风格子空间。这将允许您选择一个与您的风格相对应的空间,并以您想要的风格生成诗歌。然而,由于我的标记数据很少,我想在无人监督的情况下实现这个目标。无法构造条件概率分布。也就是说,无法在生成的诗歌和输入风格标签之间建立关联。

解决方案:使用无监督学习和常规术语添加相关性

解决方案是使用正则化项来强化这种关系。具体来说,目标是最大化文体分布和诗歌分布之间的互信息,并强行添加这种依赖性。互信息衡量两个变量之间的依赖程度。添加后,如果改变风格标签y,生成的诗句x也会相应改变,实现风格控制。

我们想出了这样的损失函数。它由两部分组成,一部分是与风格无关的似然项,这保证了它产生的诗歌相对流畅,并且与上面的诗歌有更好的相关性。另一个是风格的常规术语,用于在输入风格标签和输出诗歌的文本空间之间强加相关性以实现控制。

情绪化

最终的审美特征是情感性,而抒情性是人类诗歌创作最重要的目的之一。我们希望生成模型也能控制情绪。人类写诗时的情感表达有两个主要特征。首先,一个人可以在同一主题上写下两种不同的情感。其次,诗中每句的情感并不完全相同,有一定的变化和过渡规律。

解决思路:提出新的分解公式

模型思想:为了解释生成模型如何生成诗歌,我们提出了一种新的文学文本分解公式。首先,用户指定主题词w。您还可以指定情感标签y。如果不指定,y也可以自动预测。 y和w一起构成了我们的潜在空间之一,这三个部分共同用来产生我们的诗歌。

半监督循环训练用于针对诗歌的整体情感。

如果你想控制整首诗的整体情感,如果你给你的数据加上标签,那就相对容易了。我们遵循标准流程来导出用于直接优化的ELBO 下限。不同的是,它天然带有一个分类器,可以根据主题词自动预测最合适的情感标签。如果没有标签,我们可以将情感y 视为另一个隐藏变量,并导出和优化其中的不同项目。第二个分类器可用于预测每首未标记诗歌的适当情感。将两者结合起来。在整个训练过程中,使用标记数据来训练模型和分类器,分类器为未标记数据预测合适的标签,不断迭代以实现半监督训练。

使用跨时间序列来训练每个句子的情感

如果我们想控制每个句子的情感,我们考虑每个子句xi 和该子句的句子级情感yi 。在没有标签的情况下,蒙特卡洛采样用于生成以下分解:包含序列采样的时间序列。在此过程中,同时学习两个不同的序列。一是每句话的情感结构,二是每首诗的内容顺序,两者都是同时建模和学习的。

另外,虽然Kuushita算法诞生比较早,但是上述算法可以移植到最新的模块中。

03

评判系统简介

以上工作均以工程化方式实现,并集成到中国古典诗词在线生成系统——九歌(在线系统网站)中。

九歌.thunlp.org/

),您可以体验九歌系统的功能。九歌系统已为全球用户创作了超过2500万首诗歌。也给千里之外故乡的游子们带来了一丝安慰。这也是我们将文化与AI结合的初衷之一。整个项目及其系统产生的诗歌在《机智过人》第一季、《朗读者》节目、人工智能教育大会等上展出,成果被多家媒体广泛报道。具有一定的社会影响力,与学堂在线、腾讯相册管家合作。

04

自动诗歌写作和知识图谱

我们还使用一些知识图谱知识来构建概率关联知识图谱—— 上下文,该上下文爬取维基百科中的所有实体链接,并创建具有如图所示的边权重的链接网络,我们计算并映射了这个知识图谱。添加到古诗词和古文中,最终得到一个包含所有古诗词和古文中出现的边权重的图。所有权重都以词云的形式体现。

在线演示:https://williamlwclwc.github.io/KG-Demo/

开源下载:https://github.com/THUNLP-AIPoet/ParCKG

除了常规的关键词扩展和变换来帮助机器理解单词之外,我们还对它进行了一系列的未来展望。

使用常识理解用户输入

我们之所以能用古典术语表达现代词“飞机”,是因为人们有常识。目前大多数模型都无法做到这一点,图集的应用可以帮助改善这种情况。

利用语言学和文学知识创作诗歌

知识可以让你将典故知识输入到模型中以方便诗歌的生成,并使用不同的修辞来鼓励模型更好地生成更有意义的诗歌。

创作结合时间、空间和历史知识的诗歌

古人常登高处赏景赋诗,因此诗歌中往往含有地理空间与历史知识相融合的元素。

我对人工智能与人类关系的看法

目前,我们用人类数百年积累的作品来教授人工智能,但随着技术的发展,人工智能创造出更好的诗歌,人类创作者创造出新的诗歌,这就形成了一个良性循环,人们有动力创造人工智能,从而进一步提高。人工智能。在创作上,Juge系统开发的初衷之一是让机器和人互相学习、进步,而不是互相取代。希望未来我们能在这个方向上一起做更多有趣的探索和实验。谢谢你!

今天的分享就到这里,谢谢大家。

阅读更多技术文章并下载讲师PPT。请注意。

微信公众号“DataFunTalk”。

共同嘉宾:微软亚洲研究院研究员易晓媛博士

编辑:赵红叶,合肥工业大学

制作平台:DataFunTalk

分享嘉宾:

关于我们:

数据迷:

专注于大数据和人工智能技术应用的共享与交流。 2023年推出,我们在北京、上海、深圳、杭州等城市举办了100多场线下、100多场线上沙龙、论坛、峰会,邀请了2000多位专家学者参加,我分享过。其公众号DataFunTalk累计产出原创文章700多篇,阅读量超过100万人,精准粉丝超过14万。

欢迎转载、分享、评论。发私信转载。

本文和图片来自网络,不代表火豚游戏立场,如若侵权请联系我们删除:https://www.huotun.com/game/678323.html

(0)
上一篇 2024年6月4日
下一篇 2024年6月4日

相关推荐

  • 和平精英空投行动怎么下载?

    和平精英空投行动怎么下载? 和平精英空投行动是可以应用宝进行下载。和平精英的空头行动是最近的版本更新内容,需要在大版本进行游戏维护后更新完成的,新版本游戏之后,就可以在腾讯应用宝里面直接进行下载。保证内存空间充足后可以游玩。 和平精英家园空投箱怎么领最好? 关于这个问题,1. 每日签到:在和平精英游戏中每日签到可以获得一些家园空投箱。 2. 完成任务:在和平…

    游戏快讯 51分钟前
  • 和平精英丧尸克星怎么获得?

    和平精英丧尸克星怎么获得? 和平精英上10颗星勋章的话,你要参加现实的丧尸活动,才可以获得这个勋章的 和平精英丧尸模式怎么下载? 其实是国际服,可以在浏览器的官网下载 和平精英怎么变成丧尸猎人? 你需要活到最后两个人才能变成和平精英里的丧尸,猎人 和平精英丧尸危机怎么玩? 和平精英丧尸危机是一种多人合作的生存射击游戏。玩家需要组队与其他玩家一起合作,击败一波…

    游戏快讯 2小时前
  • 和平精英怎么刚枪? 和平精英怎么锁定城市刚枪?

    和平精英怎么刚枪? 和平精英刚枪的方法: 1.移动射击 2.掩体利用、左右探头 在掩体后重分利用左右探头的操作和第三人称的视野优势,可以借助于自己藏身的掩体或墙壁观察对手的走位。 3.提前枪。 和平精英怎么锁定城市刚枪? 点击左侧的模式选择区域。进入模式选择区域之后,在右下角战术选择的地方切换战术目标为“城区刚枪”。然后点击右下角确定即可。或者 步骤一,通过…

    游戏快讯 3小时前
  • 和平精英刚枪技巧口诀?

    和平精英刚枪技巧口诀? 你好,和平精英刚枪技巧口诀如下: 1. 瞄准稳定:在射击过程中,保持枪支的稳定是非常重要的。尽量减少手部的晃动,保持瞄准准心在目标上。 2. 控制后坐力:后坐力是影响枪支稳定的主要因素之一。通过适当的操作,尽量减少后坐力对瞄准的影响。 3. 弹道预判:了解不同枪械的子弹弹道特点,针对不同距离的目标进行预判,调整瞄准点。 4. 利用掩体…

    游戏快讯 5小时前
  • 和平精英怎么租号玩? 和平精英怎么用账号密码登其他号?

    和平精英怎么租号玩? 和平精英组号可以加入和平精英,做好群联系里面的管理员或群主,按每小时多少钱收费。 和平精英怎么用账号密码登其他号? 和平精英用账号密码登其他号的方法 1.想要登录别人的号,玩家只要获得别人的账号和密码,切换登录即可。 2.玩家进入游戏后找到右下方的齿轮状设置图标进入。 3.在页面的最下方可以找到退出登录按钮点击一下就可退出当前账号。 4…

    游戏快讯 6小时前