CMU与谷歌新研究提出文本跳读方法,速度可达标准序贯LSTM的6倍

因为很多文本内容都含有一些与主题不相关的东西,所以让机器学会根据上下文进行跳读可以大大节省文本处理的时间和效率。近日,卡内基梅隆大学和谷歌的研究者提出了一种让计算机可以学习跳读的新方法 LSTM-Jump,据该论文《Learning to Skim Text》介绍:这种模型的速度可以达到标准序贯 LSTM 的 6 倍,而且还能保证良好的准确度结果。机器之心对该研究的论文进行了摘要介绍,原论文可点击查阅。想要更深入了解文本跳读研究的读者可参阅另一篇文章:《MetaMind 深度解读 NLP 研究:如何让机器学习跳读》。

640-16.jpeg


在自然语言处理的很多子领域,循环神经网络都表现出了很大的潜力,这些子领域涵盖文档分类、机器翻译和自动问答等等。尽管潜力巨大,但许多循环模型都必须要逐词阅读整个文本,这会使得长文档的处理速度缓慢。比如说,要使用一个循环网络阅读一本书并回答有关于其的问题是很困难的。在这篇论文中,我们提出了一种阅读文本的方法,其可以在有需要的时候跳过不相关的信息。该方法的底层模型是一个循环网络,其可以在阅读了少量输入文本的词之后了解需要跳过多少内容。我们使用一种标准的策略梯度方法训练了该模型,使其可以做出离散的跳跃决策。在不同的四种任务(包括数值预测、情感分析、新闻文章分类和自动问答)的基准上,我们提出的一种带有跳过(jumping)的修改过的 LSTM 的速度可以达到标准序贯 LSTM(sequential LSTM)的 6 倍,而且同时还能维持同样的准确度或甚至达到更好的准确度。


2 方法


在这一节,我们介绍了我们提出的模型 LSTM-Jump。我们首先描述了其主要结构,后面介绍了评估该模型部分参数由不可微分性(nondifferentiability)而造成的难点。为了解决这个问题,我们借助了一种强化学习形式并采用了一种策略梯度方法。


2.1 模型概述


我们提出的模型的主要架构如图 1 所示,该模型基于一个 LSTM 循环神经网络。在训练之前,首先要选择允许的 jump 的数量 K、每两次 jump 之间读取的 token 的数量 R 和最大的 jump 大小 K。对于该模型,K 是一个固定的参数,而 N 和 R 是可以在训练和测试中变化的超参数。另外,在这篇论文中,我们会使用 d1:p 来表示一个序列 d1, d2, ..., dp。


640-7.png

图 1:我们提出的用于处理文本文档的模型的一个合成样本。在这个例子中,jump K 的最大大小为 5,一次 jump 之前读取的 token R 为 2,允许的 jump 数量为 10. 绿色的 softmax 用于 jump 预测。处理过程终止的情况有三种:a) 这个 softmax 预测到了一个 0、b) jump 次数超过了 N、c) 该网络处理完了最后一个 token。图中仅给出了 a) 的情况。


接下来,我们详细讨论该模型在处理文本时是如何工作的。给定一个训练样本 x1:T,该循环网络将读取第一个 R token x1:R 的嵌入,并输出隐藏状态(hidden state)。然后该状态会被用于计算 jumping softmax,其确定了 1 到 K jump 步骤上的分布。然后该模型会从这个分布采样一个 jump 步骤,其会被用于确定下一个被读入该模型的 token。设 κ 为被采样的值,那么下一个起始 token 是 xR+κ。这个过程会持续,直到遇到下列情况:


a) 这个 jump softmax 采样了一个 0

b) jump 次数超过了 N

c) 该网络处理完了最后一个 token xT


在停止之后,作为输出,最后的隐藏状态将会进一步被用于预测想得到的目标。怎样利用这个隐藏状态取决于当前特定的任务。比如说,对于 3.1、3.1 和 3.3 中的分类问题,其可以直接被用于产生一个用于分类的 softmax;而在 3.4 中的问答问题上,其可被用于计算与候选答案之间的关联,以便选择出其中最好的一个。图 1 给出的例子是 K = 5、R = 2、N = 10,终止于条件 a)。


3 实验结果


640-17.jpeg

表 1:任务和数据集统计


640-18.jpeg

表 3:合成数值问题的测试准确度和时间。其 jumping level 是数值


640-19.jpeg

表 4:在 Rotten Tomatoes 评论分类数据集上的测试时间和准确度。在所有设置中,jump K 的最大大小被设置为 10。其 jumping level 是词


640-20.jpeg

表 5:在 IMDB 情感分析数据集上的测试时间和准确度。在所有设置中,jump K 的最大大小被设置为 40。其 jumping level 是词


640-21.jpeg

表 6:在 AG 新闻分类数据集上的测试时间和准确度。在所有设置中,jump K 的最大大小被设置为 40。其 jumping level 是字符


640-22.jpeg

表 7:在 Children‘s Book Test 数据集上的测试时间和准确度。在所有设置中,jump K 的最大大小被设置为 5。其 jumping level 是句子  

理论理论论文NLP文本跳读LSTM谷歌CMU
暂无评论
暂无评论~