专栏首页机器之心前沿 | 通用句子语义编码器,谷歌在语义文本相似性上的探索

前沿 | 通用句子语义编码器,谷歌在语义文本相似性上的探索

作者:Yinfei Yang

机器之心编译

参与:Pedro、蒋思源

近年来,基于神经网络的自然语言理解研究取得了快速发展(尤其是学习语义文本表示),这些深度方法给人们带来了全新的应用,且还可以帮助提高各种小数据集自然语言任务的性能。本文讨论了两篇关于谷歌语义表示最新进展的论文,以及两种可在 TensorFlow Hub 上下载的新模型。

语义文本相似度

在「Learning Semantic Textual Similarity from Conversations」这篇论文中,我们引入一种新的方式来学习语义文本相似的句子表示。直观的说,如果句子的回答分布相似,则它们在语义上是相似的。例如,「你多大了?」以及「你的年龄是多少?」都是关于年龄的问题,可以通过类似的回答,例如「我 20 岁」来回答。相比之下,虽然「你好吗?」和「你多大了?」包含的单词几乎相同,但它们的含义却大相径庭,所以对应的回答也相去甚远。

论文地址:https://arxiv.org/abs/1804.07754

如果句子可以通过相同的答案来回答,那么句子在语义上是相似的。否则,它们在语义上是不同的。

这项工作中,我们希望通过给回答分类的方式学习语义相似性:给定一个对话输入,我们希望从一批随机选择的回复中分类得到正确的答案。但是,任务的最终目标是学习一个可以返回表示各种自然语言关系(包括相似性和相关性)的编码模型。我们提出了另一预测任务(此处是指 SNLI 蕴含数据集),并通过共享的编码层同时推进两项任务。利用这种方式,我们在 STSBenchmark 和 CQA task B 等相似度度量标准上取得了更好的表现,究其原因,是简单等价关系与逻辑蕴含之间存在巨大不同,后者为学习复杂语义表示提供了更多可供使用的信息。

对于给定的输入,分类可以认为是一种对所有可能候选答案的排序问题。

通用句子编码器

「Universal Sentence Encoder」这篇论文介绍了一种模型,它通过增加更多任务来扩展上述的多任务训练,并与一个类似 skip-thought 的模型联合训练,从而在给定文本片段下预测句子上下文。然而,我们不使用原 skip-thought 模型中的编码器 - 解码器架构,而是使用一种只有编码器的模型,并通过共享编码器来推进预测任务。利用这种方式,模型训练时间大大减少,同时还能保证各类迁移学习任务(包括情感和语义相似度分类)的性能。这种模型的目的是为尽可能多的应用(释义检测、相关性、聚类和自定义文本分类)提供一种通用的编码器。

论文地址:https://arxiv.org/abs/1803.11175

成对语义相似性比较,结果为 TensorFlow Hub 通用句子编码器模型的输出。

正如文中所说,通用句子编码器模型的一个变体使用了深度平均网络(DAN)编码器,而另一个变体使用了更加复杂的自注意力网络架构 Transformer。

「Universal Sentence Encoder」一文中提到的多任务训练。各类任务及结构通过共享的编码层/参数(灰色框)进行连接。

随着其体系结构的复杂化,Transformer 模型在各种情感和相似度分类任务上的表现都优于简单的 DAN 模型,且在处理短句子时只稍慢一些。然而,随着句子长度的增加,使用 Transformer 的计算时间明显增加,但是 DAN 模型的计算耗时却几乎保持不变。

新模型

除了上述的通用句子编码器模型之外,我们还在 TensorFlow Hub 上共享了两个新模型:大型通用句型编码器通和精简版通用句型编码器。

  • 大型:https://www.tensorflow.org/hub/modules/google/universal-sentence-encoder-large/1
  • 精简:https://www.tensorflow.org/hub/modules/google/universal-sentence-encoder-lite/1

这些都是预训练好的 Tensorflow 模型,给定长度不定的文本输入,返回一个语义编码。这些编码可用于语义相似性度量、相关性度量、分类或自然语言文本的聚类。

大型通用句型编码器模型是用我们介绍的第二篇文章中提到的 Transformer 编码器训练的。它针对需要高精度语义表示的场景,牺牲了速度和体积来获得最佳的性能。

精简版模型使用 Sentence Piece 词汇库而非单词进行训练,这使得模型大小显著减小。它针对内存和 CPU 等资源有限的场景(如小型设备或浏览器)。

我们很高兴与大家分享这项研究以及这些模型。这只是一个开始,并且仍然还有很多问题亟待解决,如将技术扩展到更多语言上(上述模型目前仅支持英语)。我们也希望进一步地开发这种技术,使其能够理解段落甚至整个文档。在实现这些目标的过程中,很有可能会产生出真正的「通用」编码器。

本文分享自微信公众号 - 机器之心(almosthuman2014)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-05-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 谷歌T5模型刷新GLUE榜单,110亿参数量,17项NLP任务新SOTA

    在最新发布的论文《Exploring the Limits of Transfer Learning with a Unified Text-to-Text T...

    机器之心
  • 学界 | 不会写作文?试试这个文本模板生成系统呗

    作者:Sam Wiseman、Stuart M.Shieber、Alexander M.Rush

    机器之心
  • 拼写、常识、语法、推理错误都能纠正,云从提出基于BART的语义纠错方法

    近些年来,随着自动语音识别(ASR)技术的发展,识别准确率有了很大的提升。但是,在 ASR 转写结果中,仍然存在一些对人类来说非常明显的错误。我们并不需要听音频...

    机器之心
  • 【深度语义匹配模型 】原理篇一:表示型

    工业界的很多应用都有在语义上衡量本文相似度的需求,直接目标就是判断两句话是否表达了相同或相似意思,我们将这类需求统称为“语义匹配”,nlp中的许多任务都可以抽象...

    zenRRan
  • 走进机器阅读理解的世界,飞桨开源升级版 BiDAF模型解读

    导读:飞桨(PaddlePaddle)致力于让深度学习技术的创新与应用更简单。在重要的机器阅读领域,基于DuReader数据集,飞桨升级并开源了一个经典的阅读理...

    用户1386409
  • 混合线性模型学习笔记5

    这篇文档,是为那些想了解混合线性模型的人准备的。这里面很多部分,可以在很多领域中使用 。我们假定大家对一些矩阵和线性回归的理论有所了解,但是更高级的知识只有模糊...

    邓飞
  • 知识图谱完整项目实战(附源码)(3)

    本文是《知识图谱完整项目实战(附源码)》系列博文的第3篇:汽车知识图谱系统架构设计,主要介绍汽车领域知识图谱系统的总体架构设计和关键技术。

    数据饕餮
  • 去除chrome浏览器自动添加的默认样式(转)

    chrome表单自动填充后,input文本框的背景会变成偏黄色的,这是由于chrome会默认给自动填充的input表单加上input:-webkit-autof...

    山河木马
  • 高斯羽烟模型计算气体扩散浓度 原

    式中c为污染物浓度(单位:kg/m3) Q为源强(单位:kg/s) u为泄漏高度的平均风速(单位:m/s) y、z分别用浓度标准偏差表示的y轴及z轴上...

    Pulsar-V
  • 故障排查 | 某节点接入交换机至终端网络丢包

    Access Switch (S2628G-I) By Ruijie Networks

    网络技术联盟站

扫码关注云+社区

领取腾讯云代金券