[NLP论文阅读] Learning Paraphrastic Sentence Embeddings from Back-Translated Bitext
来源:互联网 发布:java resultset 行数 编辑:程序博客网 时间:2024/05/27 01:27
论文原文:Learning Paraphrastic Sentence Embeddings from Back-Translated Bitext
引言
这篇文章的目的是学习句子表示,在产生模型的训练集时作者所采用的方法很有意思,作者利用训练好的机器翻译模型将原数据集中非英语的句子翻译成英语,从而和原数据集的英语句子组成意义相近的句子对,得到大量的训练数据,通过这些训练数据训练学习句子表示的模型,作者的实验表明,使用这些数据训练得到的模型能取得不错的效果。另外,由于通过这样的方式得到的训练集数量很大,作者还设计了一些过滤方法来挑选训练集。
Neural Machine Translation models
作者使用了Groundhog框架训练了3个encoder-decoder NMT模型:
Czech->English
French->English
German->English
使用的训练数据如下:
训练好的NMT模型的BLEU分数(WMT2015测试集)如下:
在完成NMT模型的训练后,作者将模型训练所用句子对中非英语的那个句子,直接使用模型翻译成英语,从而形成了意思相近的英语句子对,以此作为后续句子表示模型训练的数据集。
作者展示了一些通过上述过程产生的英语句子对:
其中R表示原句,T表示通过X-English NMT模型翻译的结果,可以看到效果是不错。这让我想到本科查重,有同学说的方法是把中文用Google翻译成英文再翻译回中文。: )
模型
通过上一节,作者得到了茫茫多的句子对数据集,在这部分将介绍如何训练学习句子表示的模型。作者的目标是把上一节得到是数据集与其他数据集进行比较,看看哪个数据集训练出的模型能学习得到更好的句子表示。
作者选择了2个模型进行训练,分别是AVG和GRAN。
AVG
AVG模型就是讲句子s中每个单词对应的词向量进行加和平均得到句子表示。
GRAN
GRAN模型也是本文作者今年的一个工作,模型的全称是GATED RECURRENT AVERAGING NETWORK,可以关注一下,不再赘述。
训练
训练数据是有茫茫多相似句子对的集合。
训练采用的损失函数如下:
实验
1 评估用的数据集
a. 2012-2015 SemEval semantic textual similarity (STS) tasks
b. the SemEval 2015 Twitter task
c. the SemEval 2014 SICK Semantic Relatedness task
在计算句子相似度时,作者直接计算了句子向量的余弦相似度。
2 实验结果
作者从每个语料库中挑选了24000个句子对作为训练集,表中展示的是在22个STS句子相似性任务中的平均pearson相关系数。
Filtering Methods
这部分没有仔细看,就不写了。
总结
之前看过这个作者的其他文章,确实很有意思。这篇文章的想法让人眼前一亮。外国人是厉害呀。
2017.10.11于上海。
- [NLP论文阅读] Learning Paraphrastic Sentence Embeddings from Back-Translated Bitext
- [NLP论文阅读]Siamese CBOW: OptimizingWord Embeddings for Sentence Representations
- [NLP论文阅读] Supervised Learning of Universal Sentence Representations from NLI data
- [NLP论文阅读] Discourse-Based Objectives for Fast Unsupervised Sentence Representation Learning
- [NLP]论文笔记-A SIMPLE BUT TOUGH-TO-BEAT BASELINE FOR SENTENCE EMBEDDINGS
- [NLP论文阅读] A STRUCTURED SELF-ATTENTIVE SENTENCE EMBEDDING
- 【论文阅读】Topical Word Embeddings
- [NLP论文阅读]A simple but tough-to-beat baseline for sentence embedding
- 【论文阅读】A Correlated Topic Model Using Word Embeddings
- nlp论文阅读:When Are Tree Structures Necessary for Deep Learning of Representations?
- NLP:单词嵌入Word Embeddings
- 【nlp论文阅读】Adversal Neural Machine Translation
- 论文阅读:Dual Supervised Learning
- 【论文笔记】Video2Vec: Learning Semantic Spatial-Temporal Embeddings for Video Representation
- Machine Learning & Deep Learning 论文阅读笔记
- [NLP论文阅读]Distributed Representations of Sentences and Documents
- [NLP论文阅读]A Neural Knowledge Language Model(一)
- [NLP论文阅读]Learned in Translation: Contextualized Word Vectors
- python 多线程
- 商旅网站用户画像的解决方案
- 菱形继承和虚函数
- 新瓶装旧酒:全程无命令 GitHub Pages 创建您的博客站点
- opencv和opencv-contrib android版编译
- [NLP论文阅读] Learning Paraphrastic Sentence Embeddings from Back-Translated Bitext
- sdut-3332 数据结构实验之栈与队列五:下一较大值(一)
- spring上传文件报错Expected MultipartHttpServletRequest: is a MultipartResolver configured?
- 数人云PaaS Innovation 2017,重新定义PaaS进化
- Java的split详解
- 由 System.arraycopy 引发的巩固:对象引用 与 对象 的区别
- RBAC基于角色的访问控制 thinkphp
- 第五周项目1——建立顺序栈算法库
- java类和对象的联系,区别