Texygen文本生成,交大计算机系14级的朱耀明

文本生成哪家强?上交大提出基准测试新平台 Texygen

2018-02-12 13:11测评

新智元报道

来源:arxiv

编译:Marvin

【新智元导读】上海交通大学、伦敦大学学院朱耀明, 卢思迪,郑雷,郭家贤, 张伟楠, 汪军,俞勇等人的研究团队最新推出Texygen平台,这是一个支持开放域文本生成模型研究的基准平台。Texygen不仅实现了大部分的文本生成模型,而且还覆盖了一系列衡量生成文本的多样性、质量和一致性的评测指标。

项目地址: https://github.com/geek-ai/Texygen

论文:https://arxiv.org/abs/1802.01886

上海交通大学、伦敦大学学院朱耀明, 卢思迪,郑雷,郭家贤, 张伟楠 , 汪军,俞勇等人的研究团队最新推出Texygen,这是一个支持开放域文本生成模型研究的基准平台。Texygen不仅实现了大部分的文本生成模型,而且还提供了一系列衡量生成文本的多样性、质量和一致性的评测指标。Texygen平台可以帮助规范文本生成的研究,促进研究人员提供自己所呈现工作的官方开源实现。这将有助于提高文本生成的未来研究工作的可复现性和可靠性。

Texygen项目主要贡献者,上海交大计算机系14级的朱耀明同学表示:

目前计算机视觉与自然语言处理是人工智能的两大主要应用,生成对抗网络(GAN)作为深度学习界的一项技术,在前者的运用上日臻成熟,而在与后者的结合上还略欠火候。这次设计Texygen平台一方面目的便是总结了一下生成对抗网络在文本生成的前沿进展,并给大家的工作提供一个比较与交流的平台。另一方面,文本生成由于其任务的特殊性,至今还没有一项能让所有人信服的自动测试指标。因此,Texygen也实现了几大主流评价方法并提出了自己的指标,望能在文本生成评测这一主题下给研究者们一些启发,推动这方面的工作迈向下一阶段。

Texygen项目贡献者之一,上海交大致远学院15级计算机科学班的卢思迪同学感言道:

在开发新的模型的过程中,我们也比较了文本生成这一领域与图像生成/计算机视觉的相关问题的异同。我们发现,一个较为显著的问题是,与卷积神经网络(Convolution Neural Network)在那些领域的大放异彩不同,循环神经网络(Recurrent Neural Network)作为一种自回归(auto-regressive)工具并不够专一化。其包含的用于简化网络结构、提高收敛性能的假设过少,使得对语言模型、文本生成模型的训练变得相对而言较难取得革命性突破。我们将在Texygen的帮助下对这类问题进行进一步思考,同时也希望这个平台能够帮助学界的朋友们在这一问题上取得更多进展。

Texygen项目的指导者,上海交大计算机系John Hopcroft Center的助理教授张伟楠说:

基于生成式对抗网络(GAN)做图像生成的研究工作现在已经随处可见,这些模型之所以可以横向对比,其重要原因在于人们提出了Inception Score等评价指标,对于新生成的图像给出量化的评测和对比,进而推进研究的前沿。在文本生成方面,尽管近一年的研究工作越来越多,但像Inception Score这样的指标还并未发明出来。我们希望借助着Texygen平台,研究者们能更多地思考什么是一个好的文本生成评测指标以及如何公平地评测文本生成模型,这样才能真正推动这个领域朝着健康的方向发展。

评估文本生成模型的3个挑战

开放域文本生成问题的目标是对离散token的连续生成进行建模。它具有很多的实际应用,包括但不限于机器翻译[2],AI聊天机器人[9],自动生成图像说明[15],问题回答和信息检索[13]。与我们所已经看到的文本生成实际应用的各种成果相对的,文本生成模型的基础研究并没有取得太多重大进展。目前为止,大多数文本生成模型的基础算法仍然是最大似然估计(MLE)[11]或其变体。值得注意的是,由于这些常见的选择并不是这一序列生成问题的完美目标函数(正如文献[6]中所指出的“exposure bias”),研究人员一直在寻找替代的优化方法和目标函数。

生成对抗网络(GAN)[4]的成功激发了人们对文本离散数据对抗性训练研究的兴趣。例如,序列生成对抗网络SeqGAN是应用REINFORCE算法[14]解决原始GAN目标函数的离散优化的早期尝试之一。自那以后,研究人员提出了许多改进SeqGAN的方法来进一步提升SeqGAN的性能,例如梯度消失(MaliGAN [3],RankGAN [10],LeakGAN [5]使用的自举再激活),以及生成长文本时的鲁棒性(LeakGAN)。

然而,在评估文本生成模型时,学界面临3个主要的挑战。首先,一个好的文本生成模型的标准是什么还不明确。尽管研究人员已经开发了诸如困惑度(perplexity)[7], 基于人造数据的负对数似然估计(NLL)[16],基于图灵测试的人类评分,以及BLEU[12]等标准,但还没有一个单一的评测指标足够全面,可以评测一个文本生成模型性能的方方面面。因此,需要对多个评测指标进行评估才能得出明确的答案。

其次,研究人员并没有义务公开他们的源代码,这为第三方复现他们所报告的实验结果带来了不必要的额外困难。

第三,文本生成会遇到质量和多样性权衡的问题。在模型性能一定的情况下,人们可以通过调节一些参数来修改这一权衡。这使得研究者发布的工作是否具有重大突破变得更加难以衡量。据我们所知,关于文本生成的多样性还没有一个好的评测指标。因此,我们迫切需要一个可靠的平台,它可以对现有的文本生成模型进行全面的评估,并在一个共同的框架中促进新模型的开发。

在本文中,我们发布了Texygen,这是一个用于文本生成模型的完全开源的基准测试平台。Texygen不仅包含了大部分的基准模型的良好实现,而且还提供了各种评测指标来评估生成文本的多样性、质量和一致性。通过这些指标,我们可以对不同的文本生成模型进行更全面的评估。我们希望这个平台能够帮助规范文本生成研究的进程,提高这个领域研究工作的可复现性,并鼓励更高层次的应用。

Texygen平台

Texygen为文本生成模型提供了一个标准的自顶向下的多维评估系统。目前,Texygen包含两个基本组件:训练好的基准模型和可自动计算的评估标准。Texygen还提供了该平台的开源代码库,研究人员可以在其中找到API的规范和手册,以便实现他们的模型并使用Texygen进行评估。

基线模型

在目前版本的Texygen,我们实现了各种基于likelihood的模型,例如基础的MLE语言模型,SeqGAN [16],MaliGAN [3],RankGAN [10],TextGAN(Adversarial Feature Matching)[17],GSGAN(GAN with Gumbel Softmax trick )[8]和LeakGAN [5]。这些基准模型包含有监督的likelihood方法,对抗方法和层次化方法。虽然以后会增加更多模型,但我们相信现在的覆盖率已经足以为任何新模型提供一个充分的参照。

评测指标(Metrics)

到目前为止,Texygen实现了5个文本生成的评测指标,涵盖了以下类别的各个方面。Texygen还提供易用的API来检索自己的模型和生成的文本的结果。

基于文档相似度的指标。生成的文档质量的最直观的评测指标是文档与自然语言或者训练数据集的类似程度:

  • BLEU:基于词袋(bag of words)模型的评测指标。以词和词组为基本单位。
  • EmbSim :使用模型输出的序列训练出的词向量的相互相似性特征定义的评测指标。以基本词元(token)为基本单位。

基于似然性(likelihood)的指标:

  • NLL-oracle:基于人造数据的似然度估计。衡量待评测语言模型的输出在构造出的人造数据模型衡量下的负对数似然。
  • NLL-test:基于测试数据的似然度估计。衡量构造出测试数据在待评测语言模型的衡量下的负对数似然。

基于多样性评价的指标:

  • Self-BLEU:基于词袋(bag of words)模型的评测指标。衡量一个模型的每一句输出与此模型其他输出的相似性。以词和词组为基本单位。

Texygen平台的架构

图1: Texygen的架构

Texygen是通过TensorFlow实现的[1]。如图1所示,系统由两部分组成,主要包括3个模块,彼此高度分离,易于定制化。

在utils部分,我们提供用户Metrics类和Oracle类。前者有3个用于计算BLEU score、NLL loss和EmbSim的子类,后者则允许用户初始化3种不同类型的Oracle:基于LSTM的,基于GRU的和基于SRU的。默认的oracle是基于LSTM的。

在模型部分,用户只需要与GAN类(作为一个主要类)交互就可以开始训练过程,而不必关心生成器、鉴别器和奖励(对于基于RL的GAN而言)类。Texygen还提供了两种不同类型的GAN训练过程:人造数据训练和真实数据训练。前者使用oracle LSTM生成的数据,后者使用真实世界的数据集(例如,COCO image caption数据集)。

实验

图2:整个训练过程的NLL-oracle loss的比较

图3:整个训练过程的NLL-test loss的比较

图4:整个训练过程的EmbSim比较

表1:训练数据的BLEU score

表2:测试数据的BLEU score

表3: Self-BLEU score

结论和将来的工作

Texygen是一个文本生成的基准平台,帮助研究人员评估自己的模型,并从不同的角度公平,方便地与现有的基准模型进行比较。Texygen已经设计和实现了各种评估标准,以提供一个全面的基准。

我们发现并不是所有的NLP 评测指标都适用于文本生成模型。例如,上下文无关语法(context free grammar,CFG)是文本语法分析中广泛使用的评测指标,并且在一些相关工作中被用作评测指标[8]。但实际上,我们发现这个metric不能区分不同的文本生成模型,甚至倾向于支持更严重的mode collapse,因为这些模型只能学习几个语法。未来,我们将不断加入对新的模型和新的metric实现支持,以更好地对文本生成任务进行基准测试。

项目地址: https://github.com/geek-ai/Texygen

论文:https://arxiv.org/abs/1802.01886

原文地址:https://www.cnblogs.com/timdes1/p/8463214.html

时间: 2024-10-04 05:09:16

Texygen文本生成,交大计算机系14级的朱耀明的相关文章

复旦大学数学学院转入大数据学院的14级同学对高等代数课程的评价

以下是复旦大学数学学院转入大数据学院的14级同学对本人的高等代数课程的评价. 14级  孙宇明同学 作为一名14级复旦大学数学科学学院转大数据方向的学生,我的本科前两年是在数院度过的,也因此十分幸运的选择了谢启鸿老师的高等代数课,作为我在代数方面的入门课.随着年级升高,谢老师在大一这一年教授的高代知识,在我本科,尤其是大数据这一领域的学习和应用中,发挥了越来越重要的作用,主要体现在以下两个方面: 一.扎实基础.基本的代数学是大数据研究过程中重要的知识基础(比如主成分分析.线性回归和预测.高维正态

南理工14级第4组详细设计报告

离散数学考试测验系统<详细设计说明书> 1引言2 1.1编写目的 2 1.2背景 2 1.3定义 2 1.4参考资料 2 2程序系统的结构2 3程序1(标识符)设计说明2 3.1程序描述 3 3.2功能 3 3.3性能 3 3.4输人项 3 3.5输出项 3 3.6算法 3 3.7流程逻辑 3 3.8接口 3 3.9存储分配 4 3.10注释设计 4 3.11限制条件 4 3.12测试计划 4 3.13尚未解决的问题 4 4程序2(标识符)设计说明4 1引言 1.1编写目的 离散数学课程测验系

南理工14级第1组概要设计报告

目录 1引言 2 1.1编写目的 2 1.2范围 2 1.3定义 2 1.4参考资料 2 2总体设计3 2.1需求规定 3 2.2运行环境 3 2.3基本设计概念和处理流程 4 2.4结构 9 2.5功能需求与程序的关系 10 2.6人工处理过程 10 2.7尚未解决的问题 10 3接口设计10 3.1用户接口 10 3.2外部接口 10 3.3内部接口 11 4运行设计11 4.1运行模块组合 11 4.2运行控制 11 4.3运行时间 11 5系统数据结构设计12 5.1逻辑结构设计要点 1

使用TextRank算法为文本生成关键字和摘要

TextRank算法基于PageRank,用于为文本生成关键字和摘要.其论文是: Mihalcea R, Tarau P. TextRank: Bringing order into texts[C]. Association for Computational Linguistics, 2004. 先从PageRank讲起. PageRank PageRank最开始用来计算网页的重要性.整个www可以看作一张有向图图,节点是网页.如果网页A存在到网页B的链接,那么有一条从网页A指向网页B的有向

Python将文本生成二维码

#coding:utf-8 ''' Python生成二维码 v1.0 主要将文本生成二维码图片 测试一:将文本生成白底黑字的二维码图片 测试二:将文本生成带logo的二维码图片 ''' __author__ = 'Xue' import qrcode from PIL import Image import os #生成二维码图片 def make_qr(str,save): qr=qrcode.QRCode( version=4, #生成二维码尺寸的大小 1-40 1:21*21(21+(n-

南理工14级第四组 需求分析报告

软件需求分析报告 题目:<离散数学>课程测验系统 编写人员:高明 914106840518 刘建平 914106840526 王琪栋 914106840235 王金 914106840234 雷杨 914106840618 指导教师:叶庆生 1引言2 1.1编写目的 2 1.2背景 2 1.3定义 2 1.4参考资料 2 2任务概述2 2.1目标 2 2.2用户的特点 3 2.3假定和约束 3 3需求规定3 3.1对功能的规定 3 3.2对性能的规定 3 3.2.1精度3 3.2.2时间特性要

文本生成论文集

文本生成论文集 论文0 题目<Generating Text with Recurrent Neural Networks> 解决问题:(1)句子压缩(2)文本生成 要点: (1)提出了新的rnn结构(MRNN) 本文表示能够提升文本生成能力,但名气比较小 论文1 题目<Generating Sequences With Recurrent Neural Networks > 代码:https://sourceforge.net/projects/rnnl/ 文本自动生成任务 网络

python根据文本生成词云图

python根据文本生成词云图 效果 代码 from wordcloud import WordCloud import codecs import jieba #import jieba.analyse as analyse from scipy.misc import imread import os from os import path import matplotlib.pyplot as plt from PIL import Image, ImageDraw, ImageFont

Pytorch——GPT-2 预训练模型及文本生成

介绍 在本次将学习另一个有着优秀表现的预训练模型:GPT-2 模型,以及使用它进行文本生成任务实践. 知识点 GPT-2 的核心思想 GPT-2 模型结构详解 GPT-2 进行文本生成 OpenAI 在论文 Improving Language Understanding by Generative Pre-Training 中提出了 GPT 模型.GPT 模型是由单向 Transformer 的解码器构建的模型,OpenAI 团队在一个非常大的书籍数据集 the Toronto Book Co