PaperWeekly第二十七期

提及 Generative Models,Variational Autoencoder(VAE) 和 GAN 可以说是两座大山头。上上期的《 GAN for NLP》 一文中对 GAN 在 NLP 中的进展做了详细的介绍,推荐错过的朋友不要再错过。虽然 GAN 在图像生成上效果显著(当然 VAE 也很强),但在 NLP 方面暂时还是 VAE 较为work。今天的分享作为姊妹篇(捂脸),对 VAE 在 NLP 的应用里选取几篇最具有代表性的 paper 进行介绍。我会尽量梳理论文之间的联系,希望对大家有所帮助。本期涉及的论文有:

  1. 《Generating Sentences From a Continuous Spaces》. ICLR 2016
  2. 《Neural Variational Inference for Text Processing》. ICML 2016
  3. 《Language as a Latent Variable: Discrete Generative Models for Sentence Compression》. EMNLP 2016
  4. 《A Hierarchical Latent Variable Encoder-Decoder Model for Generating Dialogues》. AAAI 2017
  5. 其他

在展开之前,我先带大家简单回顾一下 VAE 的核心。
1) 如上图所示,VAE 可以看做是 Standard autoencoder 的 regularized version(在 autoencoder 的架构上引入随机 latent variable )。
2) VAE 从 data 学到的是在 latent space 的 region,而不是单个点。换句话说是 encode 学到了一个概率分布 q(z|x)。
3) 引入 KL divergence 让后验 q(z|x) 接近先验 p(z)。这里的 motivation 在于如果仅用 reconstruction loss,q(z|x) 的 variances 还是会很小(又和原有的单个点差不多了)。
VAE 详细推导这里就不展开,各种 tutorial 也非常多。只要掌握变分推断和理解 reparametrization trick 就基本 ok 了。
下面进入正题。

  1. Generating Sentences From a Continuous Spaces
    论文链接: https://aclweb.org/anthology/K/K16/K16-1002.pdf

这篇文章对后面很多 paper 影响很大而且我也很喜欢,所以重点介绍一下。paper 最早发表在 ICLR 2016 上,motivation 在于作者为了弥补传统的 RNNLM 结构缺少的一些 global feature(其实可以理解为想要 sentence representation)。其实抛开 generative model,之前也有一些比较成功的 non-generative 的方法,比如 sequence autoencoders[1],skip-thought[2] 和 paragraph vector[3]。但随着 VAE 的加入,generative model 也开始在文本上有更多的可能性。

Loss 的组成还是和 VAE 一样。具体模型上,encoder 和 decoder 都采用单层的 LSTM,decoder 可以看做是特殊的 RNNLM,其 initial state 是这个 hidden code z(latent variable),z 采样自 Gaussian 分布 G,G 的参数由 encoder 后面加的一层 linear layer 得到。这里的 z 就是作者想要的 global latent sentence representation,被赋予了先验diagonal Gaussians,同时 G 就是学到的后验。

模型很简单,但实际训练时有一个很严重的问题:KL 会迅速降到0,后验失效了。原因在于,由于 RNN-based 的 decoder 有着非常强的 modeling power,直接导致即使依赖很少的 history 信息也可以让 reconstruction errors 降得很低,换句话说,decoder 不依赖 encoder 提供的这个 z 了,模型等同于退化成 RNNLM(摊手)。顺便一提,本文最后有一篇 paper 也是为了解决这个问题。

先看这篇 paper 提出的解决方法:KL cost annealing 和 Word dropout。

1) KL cost annealing

作者引入一个权重 w 来控制这个 KL 项,并让 w 从 0 开始随着训练逐渐慢慢增大。作者的意思是一开始让模型学会 encode 更多信息到 z 里,然后随着 w 增大再 smooth encodings。其实从工程/代码的角度看,因为 KL 这项更容易降低,模型会优先去优化 KL,于是 KL 很快就降成 0。但如果我们乘以一开始很小的 w,模型就会选择忽视 KL(这项整体很小不用降低了),选择优先去降低 reconstruction errors。当 w 慢慢增大,模型也慢慢开始关注降低 KL 这项了。这个技巧在调参中其实也非常实用。

2) Word dropout

既然问题是 RNN-based 的 decoder 能力太强,那我们就来弱化它好了。具体方法是把 input 的词替换成 UNK(我可能是个假的 decoder),模型被迫只能去多多依赖 z。当然保留多少 input 也需要尝试,我们把全都不保留的叫做inputless decoder,实验表明,inputless VAE 比起 inputless RNN language model 不知道好到哪里去了。

受到 GAN 的启发,作者还提出了一个 Adversarial evaluation,用一半真一半假的数据作为样本训练出一个分类器,再对比不同模型生成的句子有多少能骗过这个分类器,这个 evaluation 被用在 Imputing missing words 这个任务上,VAE 的表现同样比 RNNLM 出色。

最后,作者展示模型的确学到了平滑的 sentence representation。选取两个sentence 的code z1和z2,z1 和 z2 可以看做向量空间的两个点,这两个点连线之间的点对应的句子也都符合语法且 high-level 的信息也保持局部一致。

  1. Neural Variational Inference for Text Processing

论文链接:https://arxiv.org/pdf/1511.06038.pdf

其实这篇 paper 和第一篇是一起投的 ICLR,后来转投了 ICML 2016,所以时间上其实和第一篇是一样的(两篇文章也有互相引用)。不同于第一篇,作者的出发点是构建一个 generative neural variational framework。为了证明 framework 的优越性,分别在 unsupervised 和 supervised 的任务上提出了两个模型,结果也很令人满意。

第一个任务是 unsupervised document modeling,模型叫 Neural Variational Document Model(NVDM)。h 和第一篇的 z 一样,在这里代表 latent document semantics,但 document 是以 bag-of-words 的形式(个人以为这里作者主要还是受到 LDA 的影响)。encoder 采用 MLP, decoder 是一层 softmax。

第二个任务是 supervised answer selection,模型叫 Neural Answer Selection Model(NASM)。文本的建模方式采用 LSTM(在第二个任务用 LSTM,第一个任务用词袋,可能为了证明普适性)。h 代表 latent question semantics。如上图所示,Zq 和 Za 用来表示 question 和 answer,y 代表 answer 是不是正确答案,用 Zq 和 Za 预测 y。那么 Zq 和 Za 是怎么得到的呢? Zq 延用 LSTM 的 last state,而 Za 则较为复杂,所谓脱离问题谈答案都是耍流氓,所以对 Za 建模时要显式的放入 question的信息。可这里该怎么表示 question 呢?如果还用 Zq,模型很容易 overfitting。这里我们的 latent h 终于可以出场了,引入 h 不仅起到了 muti-modal 的效果,还让模型更 robust,再把基于 attention 的 c(a,h) 和 answer 的 LSTM last state 组和得到 Za。这种做法对我们在寻找 representation 时有很好的借鉴作用。最后通过推导 variational lower bound 确定 h 的先验是 p(h|q)(第一个任务中先验是 p(h)), 这里就不赘述了。

  1. Language as a Latent Variable: Discrete Generative Models for Sentence Compression

论文链接:https://arxiv.org/pdf/1609.07317v1.pdf

这篇 paper 发表在 EMNLP 2016,同样出自第二篇 paper 的作者。传统的 VAE 是把数据 encode 成 continuous latent variable,这篇 paper 的贡献在于提出了一个 generative model 用来学到 language 的 discrete representation——一个带有 sequential discrete latent variable 的 VAE。所谓的 discrete latent variable 就是指一个单词,加上 sequential 其实就是一个句子,由于 VAE 本身是压缩数据的,换句话说是用短一点的句子来表示原来的句子,也就是句子压缩。我觉得作者的 intuition 在于每个句子可以有多个缩写,且都可以表示原句,有一点点 distribution 的意思,所以用 latent variable 很合适。

原句和压缩句分别是 s 和 c ,模型整体是 encoder -> compressor -> decoder。我们分解开看,encoder -> compressor 采用 pointer network[4] 只从 s 里选取合适的词而不是整个词典,从而大大减少了 search space。compressor -> decoder 是一个带 soft attention 的 seq2seq。这个模型的好处是不需要 label 数据,但是如果我们有足够的 label 数据(真实数据里 c 里的词可不仅仅来自 s),需要额外加个 softmax 从整个词典里选词,同时再定义一个 latent factor判断是从 s(pointer network)还是从词典里选,更加符合任务需求。

值得一提的是 Variational lower bound 里的 p(c) 是 pre-train 好的 language model。因为 Language model 的一个特点是比较喜欢短句子,很适合句子压缩的场景。由于 reparameterisation trick 并不适用 discrete latent variable,作者还采用了 REINFORCE[5] 的方法(凡是 discrete 的问题,GAN/VAE 都可以采用 REINFORCE)。

  1. A Hierarchical Latent Variable Encoder-Decoder Model for Generating Dialogues

论文链接:https://arxiv.org/pdf/1605.06069.pdf

这是第一篇把 VAE 的思想引入到 dialogue 的 paper。和普通的 VAE 区别在于 dialogue 的 reconstruction 是生成的下一句 utterance,而不是 input 自身。这篇 paper 的前身是 HRED[6],HRED 的核心思想是,把 dialogue 看做是 two-level:dialogue 是 utterance 的组合,utterance 是 words 的组合。HRED 由3个 RNN 组成:encode RNN 把每个 utterance 变成 real-valued 的向量 u,context RNN 把每个 turn 里的 u 作为输入变成向量 c,最后把 c 交给 deocde RNN 生成下一个 utterance。

VHRED 在 HRED 的基础上每个 turn 里引入一个 latent variable z,z 由context RNN 的 c 生成。z 的意义比较笼统,sentiment/topic 怎么解释都行。模型的训练技巧如 KL annealing 等大量借鉴了第一篇 paper 的思想,特别要注意训练时的 z 从后验采样(保证 decode 的正确性),测试时再从先验采样(KL 已经把分布拉近)。实验表明, latent variable 有助于生成更加 diverse 的回复。

  1. 其他

第一次将 VAE 引入机器翻译:
《Variational neural machine translation》EMNLP 2016
论文链接:https://arxiv.org/pdf/1605.07869.pdf
为了改进 KL 迅速降到0,提出 convolutional 和 recurrent 结合的 VAE:
《A Hybrid Convolutional Variational Autoencoder for Text Generation》
论文链接:https://arxiv.org/pdf/1702.02390.pdf

[1] Semi-supervised sequence learning
[2] Skip-thought vectors
[3] Distributed representations of sentences and documents
[4] Pointer Networks
[5] Recurrent models of visual attention
[6] Building End-To-End Dialogue Systems Using Generative Hierarchical Neural Network Models

PaperWeekly 第一期Chat

引言

本期Chat是PaperWeekly第一次尝试与读者进行互动交流,一共分享和解读3篇paper,均选自2016年最值得读的自然语言处理领域paper,分别是:

  1. End-to-End Reinforcement Learning of Dialogue Agents for Information Access
  2. Dual Learning for Machine Translation
  3. SQuAD: 100,000+ Questions for Machine Comprehension of Text

1. End-to-End Reinforcement Learning of Dialogue Agents for Information Access

作者

Bhuwan Dhingra, Lihong Li, Xiujun Li, Jianfeng Gao, Yun-Nung Chen, Faisal Ahmed, Li Deng

单位

School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, USA
Microsoft Research, Redmond, WA, USA
National Taiwan University, Taipei, Taiwan

关键词

Dialogue Agent, Reinforcement Learning

文章来源

arXiv

问题

用强化学习构造一个端到端的任务驱动的基于知识图谱的对话系统。

模型

一个任务驱动的对话系统,一般通过自然语言与用户进行多轮交流,帮助用户解决一些特定问题,例如订机票或检索数据库等。一般由下面四部分组成:

  • Language Understanding Module(LU): 理解用户意图并提取相关slots。例如用户想找一部电影,那么就需要提取出电影名称,演员,上映时间等相关slots信息。
  • Dialogue State Tracker: 追踪用户的目标和对话的历史信息。
  • Dialogue Policy: 基于当前状态选择系统的下一步action, 例如向用户询问电影上映时间的action是request(year)。
  • Natural Language Generator(NLG):将系统的action转化成自然语言文本。例如将request(year) 转换成:电影什么时候上映的?

在Dialogue Policy这一步,传统方法一般是生成一个类似SQL的查询语句,从数据库中检索答案,但是这会使模型不可微从而只能分开训练。本文使用了基于概率的框架,因此是可微的,从而实现了端到端的训练过程。

论文中用到的数据库,是来自IMDB的电影数据库。每一行代表一部电影,每一列是一个slot,信息有可能存在缺失。

enter image description here

整体框架如下图:

enter image description here

下面分别介绍各个部分:

Feature Extractor

将用户每轮的输入文本转化成一个向量,这里使用了ngram词袋模型(n=2)。

Belief Trackers

用于追踪对话状态和历史信息。

这里针对每一列的slot,分别有一个belief tracker。每个belief tracker的输入是从feature extractor得到的向量,用GRU处理以后,得到一个状态向量。根据这个状态向量,分别计算得到两个输出:pj和qj。

pj是当前slot下所有值的概率分布,qj是用户不知道这个slot值的概率。

因为在和用户交互的过程中,应当尽可能询问用户知道的信息,询问用户不知道的信息对后面的查询没有任何意义。

Soft-KB Lookup

根据Belief Trackers的输出,计算数据库中每个值的概率分布。

Beliefs Summary

由Belief Trackers和Soft-KB Lookup,可以得到当前的对话状态向量st。st向量包含了数据库中所有值的概率分布户是否知识等信息,实在是太大了,直接送给Policy Network会导致其参数过多,难以训练。因此这一步把slot-values转化成了加权的熵统计信息。

Policy Network

这里使用策略网络,根据Beliefs Summary的输入状态向量,来输出各个action的概率分布π。具体结构是GRU+全连接层+softmax的方式。

Action Selection

这里从策略分布π采样,得到下一步的action。如果action是inform(),说明到了对话的最后一步,需要给用户返回Top k的查询结果。这里按照Soft-KB Lookup步骤中得到的每一行电影的概率,进行采样来返回Top K候选。

NLG

这里的NLG部分和上面是独立的,使用了sequence-to-sequence模型,输入action,输出包含slot的对话模板,然后进行填充,得到自然语言文本。

训练

这里用的基于策略梯度的强化学习模型进行训练,目标是最大化reward的期望。最后一轮inform部分的reward是由正确答案在Top K候选中的排序位置决定,排序越靠前,reward越高。如果候选没有包含正确答案,那么reward是-1。

对话交互训练数据是通过一个模拟器从电影数据中采样生成得到。

Baselines

  • End2End-RL:本文提出的模型。
  • Rule-based:Belief Trackers和Policy部分都是人工规则。
  • Simple-RL:只有Belief Trackers是人工规则,而Policy部分是基于GRU。

实验结果如下图:

enter image description here

相关工作

对话的相关工作很多,包括传统基于Markov Decision Processes的POMDPs, 基于Q-Learning的SimpleDS,基于API查询的方法,基于最小化熵的EMDM等等,感兴趣的读者可以查询相关文献。

简评

深度强化学习在对话系统的应用越来越多,本文最大的贡献,是提出了一个可微的基于概率的框架,从而使End-to-End训练成为可能,相比传统方法各部分分别训练,联合训练可以有效的减少错误传递。而基于深度强化学习的训练方式,相比传统基于规则的方式,在高噪音输入的情况下,有着更好的表现。

完成人信息

王哲,中国科学技术大学,xiaose@mail.ustc.edu.cn。


####Chat实录

问:我对“因此这一步把slot-values转化成了加权的熵统计信息”的合理性和物理意义有些不明,我在最近的论文中很少看到这样的做法,请问是因为效果的原因吗?

答: 这个熵指的是信息熵,不是物理中的热力学熵。信息熵把一个系统的不确定性,按照其可能出现结果的概率分布,进行定量化计算,得到的是可以获取的信息量大小。信息熵越大,不确定性就越大,我们可以获取的信息量也就越大。任务驱动的问题系统,在得到最终查询结果前,希望尽可能多的从用户那里获取信息,减少系统本身的不确定性,因此我们在知道一个slot中各种实体概率的情况下,用信息熵来度量一个slot的不确定性,还是挺合理挺自然的。
熵的用法在深度学习网络中还是挺多的,例如我们经常用交叉熵做损失函数。同时文本分类任务中,经常用TFIDF值作为特征,而TFIDF值是可以由信息熵推导出来的。

问:论文中提到:”Moreover, instead of defining an attention distribution directly over the KB entities, which could be very large, we instead induce it from the smaller distributions over each relation (or slot in dialogue terminology) in the KB” 这里smaller distributions , 以及each relation怎么理解,为什么能小?

答: 这里的relation,指的是slots,也就是表格的各个列属性,例如year,actor等。 和entities的数目相比,一个slot对应的属性值数目要小很多。entity概率计算的时候,是把各个属性的概率相乘得到的。而一个属性的概率,取决于这个属性有多少值,假设我们有3个属性,每个属性的值的数目分别是k1,k2,k3,那么entities可能的计算量就是k1 * k2 * k3。现在作者假设每个属性之间是相互独立的,因此实际计算量可以理解成k1+k2+k3,所以slots的属性分布和entities分布相比,是smaller distributions。

问:增强学习在chatbot研究中使用时相比监督学习有哪些优势和劣势?

答: 先说说强化学习的优势:

监督学习当前研究比较多的,是以seq2seq为代表的生成模型。 它目前一个比较大的问题,是生成结果缺乏多样性,倾向于生成比较安全比较常见的回答,例如“谢谢”,“不知道”。 这个主要是因为,训练目标是用最大似然拟合训练数据,而经常在训练数据中出现的回答,会占一些优势,因此后续有很多工作试图改进这个问题,例如用互信息作为目标函数,在解码搜索过程中,对常见结果进行惩罚,提高生成结果的多样性等等。

监督学习的另外一个问题,是训练过程和预测过程不一致。训练的时候,当我们解码生成一个句子的下一个词的时候,是基于训练语料中的正确结果,而预测的时候,我们并不知道标准答案是什么,因此解码下一个词的时候,是基于我们预测的结果。这种不一致会影响最终结果,就像考试我们遇到之前没有见过的题型,我们的考试成绩可能会变差一样。增强学习,有希望解决这两个问题的。

针对第一个问题,我们借助增强学习的reward,引入一些明确的的奖励目标,用来指导对话的生成。例如,如果我们想训练一个淘宝客服的对话系统,我们可以用商品最终是否购买,来作为奖励目标,这样可以引导对话向着商品成功购买的方向发展,因此可以产生更好的对话结果。目前还有一个最新的工作,是将生成对抗网络,引入对话系统,因为当前对话系统一个很大的问题,是缺乏可靠的自动化评价指标,而对抗生成网络中,我们有一个生成模型,也就是我们的对话生成系统,还有一个判别模型,这个判别模型的目标,是判断这个对话,是机器生成的,还是人写的,这样就引入了一个比较明确的奖励目标,也更接近图灵测试,而连接生成网络和判别网络的桥梁,就是强化学习。因为NLP的词,相比图像,是离散的,我们可以借助类似AlphaGo中的蒙特卡洛搜索,来采样得到训练样本,送给判别模型。针对第二个问题,强化学习在训练的过程中,生成模型是通过采样产生样本,这个过程和预测是一致的,因此也避免了不一致带来的问题。

综上所述,增强学习在对话系统中有很大的优势。

下面说说他的劣势:

和监督学习相比,强化学习的训练是比较困难的,因为训练的过程很不稳定。而且具体的对话系统中,reward的奖励一般是基于一个完整的句子,而如何把reward奖励分配到具体的词,是一个很大的挑战。而在多轮对话中,reward一般只出现在最后一轮,如何对前面的几轮对话分配reward,也同样是一个问题。同时为了稳定强化学习的训练过程,我们不能完全离开监督学习,一般还需要借助监督学习的方法,来做初始化训练,甚至在训练过程中,需要穿插监督学习过程,起到稳定网络的作用。
以上就是增强学习在对话系统中的优劣。

问:论文中的pr(Gj=i|j=0)为什么等于1/N呢?也就是在用户不知道第值时,目标是i的概率为什么等于1/N?

答: 用户不知道第j个属性,也就是说,在第j个属性上,用户不能提供有效信息。那么我们从属性j的角度,看各个实体的时候,实际上是没有什么区别的。因此最保险的方式,就是假设各个实体的概率相等,因此概率是1/N。

问:增强学习在chatbot中的reward函数是否都是根据相应的需求来手动给出,而非学习得来?

答: 有些是可以手动给出的,例如Bengio的An Actor-Critic Algorithm for Sequence Prediction这篇论文,就把BLEU作为reward,用于机器翻译模型的训练。reward也可以学习得来,例如GAN应用到对话系统的时候,生成模型的reward就是由判别模型给出的,而在对偶学习中,一个模型的reward由它对应的对偶模型给出。


2. Dual Learning for Machine Translation

作者

Yingce Xia, Di He, Tao Qin, Liwei Wang, Nenghai Yu, Tie-Yan Liu, Wei-Ying Ma

单位

中科大,北大,微软亚研院

关键词

NMT,monolingual data, dual learning

文章来源

NIPS 2016

问题

利用双向NMT模型,在少量双语数据,大量单语数据的情况下,如何提高NMT的性能。

模型

主要的思想是通过two-agent communication game,用单语语料和语言模型来提升双向NMT的性能。利用A语言的单语语料进行学习的two-agent communication game过程如下:

  • agent1读入语言A的单语句子, 通过A到B的NMT模型转换成语言B的句子,并且发送给agent2。
  • agent2接收到agent1发送的语言B的句子,通过语言B的语言模型$LM_B$,给出一个reward $r_1$。再通过B到A的NMT模型,将句子转换成语言A并且发送给agent1。
  • agent1接收到agent2发送的语言A的句子,和最初的单语句子做比较,给出另一个reward $r_2$。

那么$r=\alpha r_1+(1-\alpha) r_2$,agent1和agent2就能根据reward $r$对A到B和B到A的NMT模型进行学习。

如果用公式表达,这个过程的目标函数就是:

$$\mathbb{E}_{\mathbf{s}_{mid}|\mathbf{s};\Theta_{A\rightarrow B}}[\alpha LM_B({\mathbf{s}_{mid}})+(1-\alpha) P(\mathbf{s}|\mathbf{s}_{mid};\Theta_{B\rightarrow A})]$$

由于$\mathbf{s}_{mid}$的sample space无穷大,需要做一些近似来求期望。 文中考虑到random sampling会有较大的variance和一些不合理的翻译,采用了N-best来近似($N=2$, 用beam search得到)。

整个训练分成3个step:

  1. 用双语语料,普通的MLE training来学习A到B和B到A的NMT模型,作为warm start。
  2. 每一个minibatch里面一部分单语语料,一部分双语语料,对双语语料用MLE作为目标函数,单语语料用上面的公式作为目标函数;随着training的进行,减少双语语料的比例。训练交替地从语言A或者语言B开始。
  3. 最后完全用单语语料,通过上面的公式作为目标函数进行训练。

相关工作

这篇文章和Semi-Supervised Learning for Neural Machine Translation以及Neural Machine Translation with Reconstruction比较相似,都是用双向NMT模型来互相学习增强,区别在于这篇引入了语言模型。和Minimum Risk Training for Neural Machine Translation也有一定的相关性,相当于MRT中的loss function用了语言模型和反向NMT进行定义。

简评

这篇文章从reinforcement learning的角度,将单语语料很好地融入到双向NMT的训练中,在使用10%双语语料的情况下也能取得较好的翻译结果。整体上来说非常有意思,也可以推广到更多的tasks in dual form。

完成人信息

陈云,香港大学,yun.chencreek@gmail.com。

提问

本文中使用了哪一种reinforcement learning的方法?


####Chat实录

问:论文中的相关工作部分提到了另外两篇neural machine translation的相关工作,请问作者可否简单介绍一下那两个模型的主要方法呢?以及它们和dual learning的最大区别。

答: 另外两篇论文分别是semi-supervised Neural Machine Translation 以及Neural Machine Translation with Reconstruction。 semi-supervised这篇是利用autoencoder,将源端和目标端的单语语料引入,进行双向NMT联合训练;reconstruction这篇,是在普通MLE目标函数的基础上,增加了从目标端的hidden state重建源句子的概率这一项。首先我谈一下他们的区别。

出发的角度不一样:

  • semi-supervised:如何将source和target端的单语语料引入,通过双向NMT提高NMT的性能。
  • recosntruction:解决translation adequacy的问题, 避免翻译的句子太短或者重复翻译某一部分。利用双向NMT优化原来的MLE目标函数。
  • dual learning:在少量平行语料,大量单语语料的情况下,如何利用双向NMT提高NMT的性能。

语料需求不一样:

  • semi-supervised: source,target端的单语语料,文中实验双语语料比单语语料多。
  • reconstruction: 没用单语语料。
  • dual learning: 10%的双语语料,大量单语语料。并且用了预先用单语语料训练好的语言模型。

解释的角度不一样:

  • semi-supervised: 双向NMT联合训练,目标函数包括两个方向的MLE,以及source&target autoencoder的reconstruction probability。
  • reconstruction: 目标函数在普通的MLE基础上增加了由reconstructor定义的reconstruction probability。
  • dual learning: 基于policy gradient的增强学习。用two agents play games这样的形式来解释。

而他们也有一些相同的地方:

都是用双向NMT来提高普通MLE训练的单向NMT的性能。reconstruction一篇相当于在原来的目标函数上加了reconstruction error,由于只用了双语语料,所以目标句子y是已知的。而semi-supervised和dual learning都会处理单语语料。在处理源端单语句子时,目标端的y是未知的。这二者都可以看成是一种句子级别的模型,通过正向的NMT产生一些句子来近似整个目标端输出空间,然后通过反向NMT给出句子的feedback(dual learning同时用了LM给出的feedback)。

大家可以对比一下他们的目标函数,能够比较明显地看出区别和联系来。

问:可以用dual-learning这样的framework来解决的其他问题吗?

答: 有很多dual tasks都可以用这个框架,比如 speech recognization & text to speech, Image captioning & Image generation, Question answering & Question generation, 还有 Query-document matching & Query/keyword suggestion。这篇文章之前MSRA的刘铁岩老师秦涛博士有在斗鱼上直播过,大家可以看一下。

问:Dual Learning 中语言模型 LM 没看到在那里有详细的说明?刚才说的 Autoencoder,是在哪里提到的呢

答: 语言模型在文章中的第四页第二段可以看到:“This middle step has an immediate reward r1 = LMB(smid), indicating how natural the output sentence is in language B.” Reward包括r1和r2, r1就是语言模型给的reward。 语言模型是用单语语料提前训练好的,在NMT的整个training过程中固定不变。

Autoencoder在dual learning这篇没有提到,是在semi-supervised那篇提到的。

问:请问dual learning和GAN是否有相似之处 还是完全不相关的两种思路

答: 是有相似之处。作者之一秦涛在斗鱼直播有提到,GAN在某种程度上可以看成是dual learning的一种特殊情况。将generator看成是primal task,discriminator看成是dual task, 通过f和g共同学习来互相增强。dual task主要是为了给primal task提供feedback。个人觉得dual learning和GAN最大的区别在于对discriminator的定义不一样,GAN定义成分类问题,而dual learning定义的是一个重建问题。

问:论文中的算法提到了一个参数alpha,它的意义是什么呢?是需要手动调参还是一个机器学习优化得到的参数呢?

答: 这个alpha其实是LM reward跟反向NMT reward的一个trade-off,是手动调的。 文章后面有写,设置成0.005能取得较好的效果。

问:reconstruction error 以前常见于投影 project 重建 rebuild,或者是编码重建 encode/decode。图像上,一般常用 residual 来表示,例如子空间算法,KSVD 分解等等。这种对偶重建的方法,有没有可能发展成一种泛化的投影重建?

答: 我觉得你可以尝试一下,图像上的东西不太懂。如果可以做成这种对偶tasks的形式,一个task take 某个action的reward可以由另外一个task给出,应该就可以试试。


3. SQuAD: 100,000+ Questions for Machine Comprehension of Text

作者

Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, Percy Liang

单位

Computer Science Department, Stanford University

关键词

Question Answering, Dataset Creation

文章来源

EMNLP 2016

问题

创建一个large and high quality reading comprehension dataset。

模型

数据收集

用PageRanks搜寻出top 10000 English Wiki articles,然后uniformly sample 536 articles,做相关数据清洗后得到23215 paragraphs。这部分数据被分成三部分,training set(80%),development set(10%),test set(10%)。

下一步我们将这些paragraphs都放到Amazon Mechanical Turk上让用户创建问题以及回答问题。这样我们便得到了一个新的QA数据集。

为了评估human在这个QA数据集上的表现,development set和test set中的每个问题被至少发给了两个额外的crowdworkers,其中有2.6%的问题被crowdworkers标记为unanswerable。

数据集分析

我们把答案分成了两部分,numerical和non-numerical。对non-numerical answers再做一次constituency parsing和POS Tagging,发现答案分布如下图所示。

enter image description here

Baselines
作者做了sliding window baseline和logistic regression baseline,用accuracy和F1 Score做评估。结果如下图所示。

enter image description here

资源

Stanford Question Answering dataset可以看到所有dataset的信息,test set leaderboard上有各种Model的performance。

相关工作

Question Answering方面的dataset有不少,最近比较popular的有:MCTest by Microsoft,BAbI dataset by Facebook,WikiQA by Microsoft,CNN/Daily Mail by DeepMind, Children’s Book Test by Facebook。有兴趣的读者可以查阅相关文献。

简评

SQuAD是一个高质量的Reading comprehension dataset。作者花费了大量的人力物力,让Crowdworkers根据Wikipedia Paragraph出题和答题。构建的dataset数量巨大且质量高,对未来Reading Comprehension Question Answering的研究非常有帮助。

完成人信息

Zewei Chu,The University of Chicago,zeweichu@gmail.com。

提问

作者在评估SQuAD dataset的时候,使用了哪些baseline模型,具体是如何训练和测试的?


####Chat实录

问:请介绍一下这个reading comprehension dataset和其他dataset之间的主要区别?以及该dataset的优势是?

答: 这篇paper相对于前面两篇内容简单一些,主要就是介绍了一个新构建的QA数据集。所以我和大家交流分享一下我比较熟悉的最近一些比较popular的QA Dataset吧。

MCTest: 数据集本身质量不错,像普通的阅读理解,是根据一篇文章提出问题,然后在给定的四个选项中选出一个。但是数据集太小,现在比较主流的RC model都是基于deep learning的,数据量太小很难让model学习到有用的信息。所以个人认为小数据集上的Model多少会给人一种强凑答案的感觉。

CNN/Daily Mail, CBT: 这个数据集我比较熟悉,数据集比较大,也是比较火的一个数据集。问题的答案只是一个单词或者一个entity,SQuAD的答案有比较长的phrase。the entities are anonymized。在anonymized dataset上训练的一个问题是,容易训练出没有semantics的模型来。因为训练集上的参考答案都是entity1,entity2,到了真实情况下碰到很大的vocabulary模型未必work。

安利一下我同学的一篇paper,分析了一下几个在CNN/DM/CBT上面比较好的几个模型attention sum/gated attention sum/stanford reader其实本质是差不多的。然后stanford reader虽然在这个数据集上效果很好但是一旦数据集不anonymize就很容易不work了。

WDW dataset:Passage: 直接给一个例子。

Britain’s decision on Thursday to drop extradition proceedings against Gen. Augusto Pinochet and allow him to return to Chile is understandably frustrating … Jack Straw, the home secretary, said the 84-year-old former dictator’s ability to understand the charges against him and to direct his defense had been seriously impaired by a series of strokes. … Chile’s president-elect, Ricardo Lagos, has wisely pledged to let justice run its course. But the outgoing government of President Eduardo Frei is pushing a constitutional reform that would allow Pinochet to step down from the Senate and retain parliamentary immunity from prosecution. …

Question: Sources close to the presidential palace said that Fujimori declined at the last moment to leave the country and instead he will send a high level delegation to the ceremony, at which Chilean President Eduardo Frei will pass the mandate to XXX.

Choices: (1) Augusto Pinochet (2) Jack Straw (3) Ricardo Lagos

还有一个dataset叫wiki QA我也没有在上面实验过,也给一个例子。

Question: Who wrote second Corinthians? Second Epistle to the Corinthians The Second Epistle to the Corinthians, often referred to as Second Corinthians (and written as 2 Corinthians), is the eighth book of the New Testament of the Bible. Paul the Apostle and “Timothy our brother” wrote this epistle to “the church of God which is at Corinth, with all the saints which are in all Achaia”.

个人觉得open domain以及需要external knowledge的QA DATASET其实很难,但是很重要,因为可以应用在其他更多的方面。

另外提一个LAMBADA dataset,虽然他的问题是last word prediction,不过我们发现用reading comprehension models也可以做出很好的效果。详细信息可以看我的一篇paper

facebook有个babi dataset,

1 Mary moved to the bathroom.
2 John went to the hallway.
3 Where is Mary?        bathroom        1
4 Daniel went back to the hallway.
5 Sandra moved to the garden.
6 Where is Daniel?      hallway 4
7 John moved to the office.
8 Sandra journeyed to the bathroom.
9 Where is Daniel?      hallway 4
10 Mary moved to the hallway.
11 Daniel travelled to the office.
12 Where is Daniel?     office  11
13 John went back to the garden.
14 John moved to the bedroom.
15 Where is Sandra?     bathroom        8
1 Sandra travelled to the office.
2 Sandra went to the bathroom.
3 Where is Sandra?      bathroom        2

需要一些logical thinking,facebook自己搞了一些memory network的模型在上面效果比较好,但是其实我觉得memory network和attention模型非常相似。

至于本文构建的squad dataset主要的特点就是答案可能比较长,而且不给候选答案,所以难度应该会大一些 数据集的质量也比较高,因为都是人工出的问题和标准答案,数据量也很大,容易训练处有用的模型。

个人认为构建大的,有意义的数据集对于QA的工作是很关键的。现在还是比较缺乏能够推广到实际生活中的问题的QA模型。

我大致就分享这一些。给想做QA方面问题的同学一点参考。


本周值得读(2017.02.13-2017.02.17)

Hybrid Code Networks: practical and efficient end-to-end dialog control with supervised and reinforcement learning

【对话系统】本文提出了一种特定领域对话系统的端到端训练方案,相比于传统的端到端模型来说,亮点在于用更少量的、更有效的数据进行训练,并且结合一些动作模板和API来做对话生成,探索了监督学习和增强学习两种方案。作者是来自微软研究院Jason D. Williams,本篇文章对去年的这篇End-to-end LSTM-based dialog control optimized with supervised and reinforcement learning进行了一些新的改进。

Universal Semantic Parsing

【语义分析】本文提出了一种语义分析框架UDepLambda,可将自然语言映射为逻辑形式,用于QA任务,取得了不错的效果。

Learning to Parse and Translate Improves Neural Machine Translation

【NMT】 本文的亮点在于将语言学知识融入到了seq2seq+attention模型中,而不只是简单的端到端。如何将更多的、更丰富的先验知识构建到现有的模型中是一个重要的课题,也是一个值得思考的方向。

Paraconsistency and Word Puzzles

【问答系统】 2001年,IBM的沃森系统在Jeopardy节目中,与人类同场竞技,并且最终取得胜利。问答系统在过去20年,迅猛发展,并成为热点研究课题。然而,对于自然语言的深层理解,例如基于英文句子的逻辑推理,依然有待深入研究。
本文研究如何应用次协调逻辑系统(Paraconsistent logic),表达自然语言的语义,并且进行逻辑推理。该理论可以自动地找出自然语言述中的矛盾(语义悖论),并且在存在语义冲突的环境中进行合理的逻辑推理。本文工作来自Stony Brook University的TIANTIAN GAO同学。

Automated Phrase Mining from Massive Text Corpora

【信息抽取】本文解决的问题是短语抽取,亮点在于:1、利用已有的知识库(Wikipedia)做远程监督训练;2、利用词性信息来增加抽取的准确性。本文工作来自UIUC Jiawei Han老师组。

Frustratingly Short Attention Spans in Neural Language Modeling

【语言模型】 深度学习模型做一些排列、组合和变换之后会形成无穷多的模型,本文在经典neural语言模型+attention模型的基础上,对每个time step中的output vector进行了分割,用其中一部分向量作为attention,也就是所谓的short attention。

PaperWeekly 第二十五期

引言

第二十二期的PaperWeekly对Image Captioning进行了综述。今天这篇文章中,我们会介绍一些近期的工作。(如果你对Image Captioning这个任务不熟悉的话,请移步二十二期)

Image Captioning的模型一般是encoder-decoder的模型。模型对$p(S|I)$进行建模,$S$是描述,$I$是图片。模型的训练目标是最大化log似然:$\max_\theta\sum_i \log P(S_i|I_i, \theta)$。

然而使用最大似然训练有两个问题:

  1. 虽然训练时最大化后验概率,但是在评估时使用的测度则为BLEU,METEOR,ROUGE,CIDER等。这里有训练loss和评估方法不统一的问题。而且log似然可以认为对每个单词都给予一样的权重,然而实际上有些单词可能更重要一些(比如说一些表示内容的单词)。
  1. 第二个问题为Exposure bias。训练的时候,每个时刻的输入都是来自于真实的caption。而生成的时候,每个时刻的输入来自于前一时刻的输出;所以一旦有一个单词生成的不好,错误可能会接着传递,使得生成的越来越糟糕。

如何解决这两个问题呢?很显而易见的想法就是尽量使得训练和评估时的情形一样。我们可以在训练的时候不优化log似然,而是直接最大化CIDER(或者BLEU,METEOR,ROUGE等)。并且,在训练时也和测试时一样使用前一时刻的输入,而不是全使用ground truth输入。

然而这有什么难点呢?第一,CIDER或者这一些metric并不是可直接求导。(这就是为什么在分类问题中,我们把0-1 error近似成log loss,hinge loss的原因)。其次从前一时刻输出获得后一时刻的输入涉及到采样操作,这也是不可微的。为了能够解决这些不可微的问题,人们就想到了Reinforcement learning。

RL基本概念

RL中有一些比较重要的基本概念:状态(state),行为(action),回报(reward)和决策(policy)。决策是一个状态到动作的函数,一般是需要学习的东西。拿打游戏的例子介绍RL最简单。如果说是玩flappy bird,RL要学习的就是在什么位置跳,能使得最后得到的分数越高。在这个例子里,最后的分数就是回报,位置就是状态,跳或者不跳就是行为,而什么时候跳就是学到的策略。

如果放在Image captioning中,状态就是你看到的图片和已生成的单词,而动作就是下一个单词生成什么,回报就是CIDER等metric。

相关文献

最近已经有很多工作将RL用在NLP相关的问题上。[1]第一次将REINFORCE算法用在image caption和seq2seq问题上。[5]将使用了更先进的RL算法 — Actor-critic — 来做machine translation上。[2,4]将[1]的算法进行稍许改进(仍旧是REINFORCE算法),使用在了image captioning上。[3]将REINFORCE用在序列生成GAN中,解决了之前序列生成器输出为离散不可微的问题。[6]将RL用在自然对话系统中。这篇文章中我们主要介绍[1,2,4]。

RL算法背景

这三篇文章使用的是REINFORCE算法,属于增强学习中Policy Gradient的一种。我们需要将deterministic的策略形式 $a=\pi(s,\theta)$转化为概率形式,$p(a) = \pi(a|s, \theta)$。Policy Gradient就是对参数$\theta$求梯度的方法。

直观的想,如果我们希望最后的决策能获得更高的reward,最简单的就是使得高reward的行为有高概率,低reward的行为有低概率。所以REINFORCE的更新目标为

$$\max_{\theta} \sum R(a,s)\log \pi(a|s, \theta)$$

$R(s,a)$是回报函数。有了目标,我们可以通过随机梯度下降来更新$\theta$来获得更大的回报。

然而这个方法有一个问题,训练时梯度的方差过大,导致训练不稳定。我们可以思考一下,如果reward的值为100到120之间,现在的方法虽然能更大地提高reward为120的行为的概率,但是也还是会提升低reward的行为的概率。所以为了克服这个问题,又有了REINFORCE with baseline。

$$\max_{\theta} \sum (R(a,s) - b(s))\log \pi(a|s, \theta)$$

$b(s)$在这里就是baseline,目的是通过给回报一个基准来减少方差。假设还是100到120的回报,我们将baseline设为110,那么只有100回报的行为就会被降低概率,而120回报的行为则会被提升概率。

三篇paper

第一篇是FAIR在ICLR2016发表的[1]。这篇文章是第一个将RL的算法应用的离散序列生成的文章。文章中介绍了三种不同的方法,这里我们只看最后一种算法,Mixed Incremental Cross-Entropy Reinforce。

大体的想法就是用REINFORCE with baseline来希望直接优化BLEU4分数。具体训练的时候,他们先用最大似然方法做预训练,然后用REINFORCE finetune。在REINFORCE阶段,生成器不再使用任何ground truth信息,而是直接从RNN模型随机采样,最后获得采样的序列的BLEU4的分数r作为reward来更新整个序列生成器。

这里他们使用baseline在每个时刻是不同的;是每个RNN隐变量的一个线性函数。这个线性函数也会在训练中更新。他们的系统最后能比一般的的cross extropy loss,和scheduled sampling等方法获得更好的结果。

他们在github开源了基于torch的代码,https://github.com/facebookresearch/MIXER

第二篇论文是今年CVPR的投稿。这篇文章在[1]的基础上改变了baseline的选取。他们并没有使用任何函数来对baseline进行建模,而是使用了greedy decoding的结果的回报作为baseline。他们声称这个baseline减小了梯度的variance。

这个baseline理解起来也很简单:如果采样得到句子没有greedy decoding的结果好,那么降低这句话的概率,如果比greedy decoding还要好,则提高它的概率。

这个方法的好处在于避免了训练一个模型,并且这个baseline也极易获得。有一个很有意思的现象是,一旦使用了这样的训练方法,beam search和greedy decoding的结果就几乎一致了。

目前这篇文章的结果是COCO排行榜上第一名。他们使用CIDEr作为优化的reward,并且发现优化CIDEr能够使所有其他metric如BLEU,ROUGE,METEOR都能提高。

他们的附录中有一些captioning的结果。他们发现他们的模型在一些非寻常的图片上表现很好,比如说有一张手心里捧着一个长劲鹿的图。

第三篇论文[4]也是这次CVPR的投稿。这篇文章则是在$R(a,s)$这一项动了手脚。

前两篇都有一个共同特点,对所有时刻的单词,他们的$R(a,s)$都是一样的。然而这篇文章则给每个时刻的提供了不同的回报。

其实这个动机很好理解。比如说,定冠词a,无论生成的句子质量如何,都很容易在句首出现。假设说在一次采样中,a在句首,且最后的获得回报减去baseline后为负,这时候a的概率也会因此被调低,但是实际上大多数情况a对最后结果的好坏并没有影响。所以这篇文章采用了在每个时刻用$Q(w_{1:t})$来代替了原来一样的$R$。

这个$Q$的定义为,

$Q\theta(w{1:t}) = \mathbb{E}{w{t+1:T}}[R(w{1:t}, w{t+1:T})]$

也就是说,当前时刻的回报,为固定了前t个单词的期望回报。考虑a的例子,由于a作为句首生成的结果有好有坏,最后的Q值可能接近于baseline,所以a的概率也就不会被很大地更新。实际使用中,这个Q值可以通过rollout来估计:固定前t个词后,随机采样K个序列,取他们的平均回报作为Q值。文中K为3。这篇文章中的baseline则跟[1]中类似。

从实验结果上,第三篇并没有第二篇好,但是很大一部分原因是因为使用的模型和特征都比较老旧。

总结

将RL用在序列生成上似乎是现在新的潮流。但是现在使用的大多数的RL方法还比较简单,比如本文中的REINFORCE算法可追溯到上个世纪。RL本身也是一个很火热的领域,所以可以预计会有更多的论文将二者有机地结合。

参考文献

[1] Ranzato, Marc’Aurelio, Sumit Chopra, Michael Auli, and Wojciech Zaremba. “Sequence level training with recurrent neural networks.” arXiv preprint arXiv:1511.06732 (2015).

[2] Rennie, Steven J., Etienne Marcheret, Youssef Mroueh, Jarret Ross, and Vaibhava Goel. “Self-critical Sequence Training for Image Captioning.” arXiv preprint arXiv:1612.00563 (2016).

[3] Yu, Lantao, Weinan Zhang, Jun Wang, and Yong Yu. “Seqgan: sequence generative adversarial nets with policy gradient.” arXiv preprint arXiv:1609.05473 (2016).

[4] Liu, Siqi, Zhenhai Zhu, Ning Ye, Sergio Guadarrama, and Kevin Murphy. “Optimization of image description metrics using policy gradient methods.” arXiv preprint arXiv:1612.00370 (2016).

[5] Bahdanau, Dzmitry, Philemon Brakel, Kelvin Xu, Anirudh Goyal, Ryan Lowe, Joelle Pineau, Aaron Courville, and Yoshua Bengio. “An actor-critic algorithm for sequence prediction.” arXiv preprint arXiv:1607.07086 (2016).

[6] Li, Jiwei, Will Monroe, Alan Ritter, Michel Galley, Jianfeng Gao, and Dan Jurafsky. “Deep reinforcement learning for dialogue generation.” arXiv preprint arXiv:1606.01541 (2016).

本周值得读(2017.02.06-2017.02.10)

All-but-the-Top: Simple and Effective Postprocessing for Word Representations

【词表示】本文提出了一种对已有的词向量进行预处理的方法,用来对学习到的词向量降噪。基于词向量自身的几何结构 — 均值非零以及各项不同性,本文提出了一个反直观的处理方法:从所有的词向量中移除均值,以及移除部分导致各项不同性的方向。虽然这种处理方式忽略了词向量中的部分信息,但是它可以使多种通过不同方式训练出来的词向量加强词向量中包含的语义信息。经过预处理之后的词向量在一系列intrinsic衡量方式上(similarity, analogy, concept categorization)得到了一致性地提高。同时,我们通过了不同的应用上进行了测试,试验结果表明该预处理已经在诸多neural network中有所体现,进一步证实了对词向量进行预处理的重要性。本文工作来自UIUC NLP组的Jiaqi Mu,她也是Paperweekly的作者团队成员之一。

Structured Attention Networks

【注意力模型】 本文的工作是将Attention模型进行了structure的扩展,考虑了结构上的依赖,提出了所谓的Structured Attention Networks,测试了两种模型的效果,linear-chain CRF和基于图的parsing模型,比传统的attention效果要好。工作来自HarvardNLP组,代码已开源在https://github.com/harvardnlp/struct-attn

Opinion Recommendation using Neural Memory Model

【推荐系统】本文研究的问题是如何给用户推荐合适的产品评论。推荐的问题关键在于计算user和target的相似度,这里的target是指product review或者opinion。模型新意并无太多,所解决的问题比较有意思。

Comparative Study of CNN and RNN for Natural Language Processing

【CNN or RNN】 本文系统地对比了CNN和RNN在NLP各大任务上的表现,包括:情感分类、关系分类、文本蕴含、答案选择、问题关系匹配、PQA、词性标注等。RNN在大部分任务上都表现的更好,除了在关键词匹配和识别这类任务不如CNN。这篇文章有很多不错的结论,值得一读!

A Knowledge-Grounded Neural Conversation Model

【对话系统】【基于知识】 本文研究的问题是用完全数据驱动的模型生成带有知识的对话内容,在原有seq2seq模型的基础上增加了一个fact encoder来生成对话。解决方案很实用,也很有启发性,建议研读。本文工作来自Information Sciences Institute和微软研究院。

Fast and Accurate Sequence Labeling with Iterated Dilated Convolutions

【序列标注】 本文针对RNN对GPU并行计算性能利用不够的弱点,用了一种改进版的CNN模型Iterated Dilated Convolutions来代替Bi LSTM作为CRF的feature extractor,实验结果证明该方法更快更准。

Semi-Supervised QA with Generative Domain-Adaptive Nets

【问答系统】 本文研究的问题很有意思,用半监督方法来做问答系统,用无标签的文本来生成问题,通过联合人工给出的问题和生成的问题来一起训练问答模型,同时利用增强学习算法来尽量减小算法生成问题概率分布和人工给定问题概率分布之间的差异。

Trainable Greedy Decoding for Neural Machine Translation

【机器翻译】【解码算法】 本文研究的是机器翻译中一个不太被重视的方向,解码算法,创新点在于用增强学习算法对解码目标函数进行优化求解。

本周值得读(2017.01.23-2017.02.05)

Learning to Decode for Future Success

【seq2seq解码】本文研究的问题是在seq2seq解决对话生成、机器翻译、文本摘要时如何用增强学习的方法高效率地进行decoding,比起经典的softmax多分类预测next word,增强学习通过Q函数对所生成的文本内容有着更好的控制,但训练效率太低,本文的亮点在于优化和改进了传统的RL模型。建议研究机器翻译、对话生成等seq2seq任务的童鞋研读。

Adversarial Learning for Neural Dialogue Generation

【NLG】 GAN的火热逐渐地烧到了自然语言处理中,尤其是自然语言生成NLG任务上,本文工作来自Jiwei Li,一个高产的作者。对GAN和chatbot感兴趣的童鞋可以好好读一下。

Incorporating Global Visual Features into Attention-Based Neural Machine Translation

【多模态】【NMT】 本文的工作亮点在于将多种信息融合应用到机器翻译任务中,相比于传统方案有了一定的提升。但多模态的训练数据需要非常高的代价来准备,实用性是一个非常大的挑战。

Adversarial Evaluation of Dialogue Models

【对话系统】【评测】 自动评测一直是困扰对话系统研究的一个重要问题,本文尝试用了GAN的思路来对生成的对话进行效果评测,discriminator通过预测response到底是human给出的还是generator生成的来进行评测,是一个很短的文章,也是一个尝试性的工作,来自google brain和deepmind。

Image-Grounded Conversations: Multimodal Context for Natural Question and Response Generation

【IGC】【对话生成】 本文的亮点在于提出了一个新的任务,有点类似VQA,比VQA更复杂一些的是对要求机器对图像的理解更加深入,然后将图像信息作为对话的context进行QA。在找新方向的童鞋可以过来看看这个任务。

CommAI: Evaluating the first steps towards a useful general AI

【通用ai】 这是一个梦,造一个通用的ai,相比现在的针对具体领域具体任务的ai来说,本文想做的事情更加宽阔和宏观一些。工作来自facebook,并且给出了一个通用ai的框架,代码地址:https://github.com/facebookresearch/CommAI-env/

Predicting Auction Price of Vehicle License Plate with Deep Recurrent Neural Network

【车牌拍卖预测】 车牌拍卖是个常见的事儿,很多牛逼的数字,比如88888、66666通常可以拍到很高的价钱,本文研究的问题正是用深度学习模型来预测车牌号的拍卖价格,基于char-level的预测模型,模型没有太多亮点,研究的问题有点意思。

Symbolic, Distributed and Distributional Representations for Natural Language Processing in the Era of Deep Learning: a Survey

【表示学习】【综述】本文是一篇综述,非常详细地介绍了NLP中词各种表示方法,从符号到分布式表示,比较全面。

PaperWeekly 第二十三期

引言

什么是艺术?
机器的作品能否叫艺术?
机器能否取代艺术家?
这些问题,相信不同的人,会有不同的答案。很多人认为机器生成的作品只是简单的模仿人类,没有创造性可言,但是人类艺术家,不也是从模仿和学习开始的吗?本文是一篇机器诗歌生成的综述文章,希望能增进大家对这个领域的了解。

基于传统方法的诗歌生成

诗歌是人类文学皇冠上的明珠。我国自《诗经》以后,两千年来的诗篇灿若繁星。让机器自动生成诗歌,一直是人工智能领域一个有挑战性的工作。机器诗歌生成的工作,始于20世纪70年代。传统的诗歌生成方法,主要有以下几种:

  • Word Salada(词语沙拉):最早期的诗歌生成模型,只是简单将词语进行随机组合和堆砌而不考虑语义语法要求。
  • 基于模板和模式的方法:基于模板的方法类似于完形填空,将一首现有诗歌挖去一些词,作为模板,再用一些其他词进行替换,产生新的诗歌。这种方法生成的诗歌在语法上有所提升,但是灵活性太差。因此后来出现了基于模式的方法,通过对每个位置词的词性,韵律平仄进行限制,来进行诗歌生成。
  • 基于遗传算法的方法:周昌乐等[1]提出并应用到宋词生成上。这里将诗歌生成看成状态空间搜索问题。先从随机诗句开始,然后借助人工定义的诗句评估函数,不断进行评估,进化的迭代,最终得到诗歌。这种方法在单句上有较好的结果,但是句子之间缺乏语义连贯性。
  • 基于摘要生成的方法:严睿等[2]将诗歌生成看成给定写作意图的摘要生成问题,同时加入了诗歌相关的一些优化约束。
  • 基于统计机器翻译的方法:MSRA的何晶和周明[3]将诗歌生成看成一个机器翻译问题,将上一句看成源语言,下一句看成目标语言,用统计机器翻译模型进行翻译,并加上平仄押韵等约束,得到下一句。通过不断重复这个过程,得到一首完整的诗歌。

基于深度学习技术的诗歌生成

传统方法非常依赖于诗词领域的专业知识,需要专家设计大量的人工规则,对生成诗词的格律和质量进行约束。同时迁移能力也比较差,难以直接应用到其他文体(唐诗,宋词等)和语言(英文,日文等)。随着深度学习技术的发展,诗歌生成的研究进入了一个新的阶段。

RNNLM

基于RNN语言模型[4]的方法,将诗歌的整体内容,作为训练语料送给RNN语言模型进行训练。训练完成后,先给定一些初始内容,然后就可以按照语言模型输出的概率分布进行采样得到下一个词,不断重复这个过程就产生完整的诗歌。Karpathy有一篇文章,讲的很详细:http://karpathy.github.io/2015/05/21/rnn-effectiveness/

Chinese Poetry Generation with Recurrent Neural Networks

RNNPG模型[5],首先由用户给定的关键词生成第一句,然后由第一句话生成第二句话,由一,二句话生成第三句话,重复这个过程,直到诗歌生成完成。模型的模型由三部分组成:
Convolutional Sentence Model(CSM):CNN模型,用于获取一句话的向量表示。
Recurrent Context Model(RCM):句子级别的RNN,根据历史生成句子的向量,输出下一个要生成句子的Context向量。
Recurrent Generation Model(RGM):字符级别RNN,根据RCM输出的Context向量和该句之前已经生成的字符,输出下一个字符的概率分布。解码的时候根据RGM模型输出的概率和语言模型概率加权以后,生成下一句诗歌,由人工规则保证押韵。
模型结构如下图:

rnnpg

模型生成例子如下图:

rnnpg-example

Chinese Song Iambics Generation with Neural Attention-based Model

模型[6]是基于attention的encoder-decoder框架,将历史已经生成的内容作为源语言序列,将下一句要生成的话作为目标语言序列。需要用户提供第一句话,然后由第一句生成第二句,第一,二句生成第三句,并不断重复这个过程,直到生成完整诗歌。 基于Attention机制配合LSTM,可以学习更长的诗歌,同时在一定程度上,可以提高前后语义的连贯性。

模型结构如下图:

anmt

模型生成例子如下图:

anmt-example

Chinese Poetry Generation with Planning based Neural Network

模型[8]是一个端到端的模型,不需要专家领域知识。它试图模仿人类写作前先规划一个写作大纲的过程。整个诗歌生成框架由两部分组成:规划模型和生成模型。
规划模型:将代表用户写作意图的Query作为输入,生成一个写作大纲。写作大纲是一个由主题词组成的序列,第i个主题词代表第i句的主题。
生成模型:基于encoder-decoder框架。有两个encoder,其中一个encoder处理主题词,另外一个encoder处理历史生成的句子,decoder负责生成下一句话。decoder生成的时候,利用Attention机制,对主题词和历史生成内容的向量一起做打分,由模型来决定生成的过程中各部分的重要性。
前面介绍的几个模型,用户的写作意图,基本只能反映在第一句,随着生成过程往后进行,后面句子和用户写作意图的关系越来越弱,就有可能发生主题漂移问题。而规划模型可以使用户的写作意图直接影响整首诗的生成,因此在一定程度上,避免了主题漂移问题,使整首诗的逻辑语义和情感更为连贯。

总体框架图如下:
ppg

生成模型框架图如下:

ppg-2

诗歌图灵测试例子:

ppg-example1

现代概念诗歌生成例子:

ppg-example2

i, Poet: Automatic Poetry Composition through Recurrent Neural Networks with Iterative Polishing Schema

模型[7]基于encoder-decoder框架,一个比较有意思的地方,是想模拟人类写诗反复修改的过程,加入了打磨机制,通过反复迭代来提高诗歌生成质量。
encoder阶段:用户提供一个Query作为自己的写作意图,由CNN模型获取Query的向量表示。
decoder阶段:使用了hierarchical的RNN生成框架,由句子级别和词级别两个RNN组成。 句子级别RNN:输入句子向量表示,输出下一个句子的Context向量。字符级别RNN:输入Context向量和历史生成字符,输出下一个字符的概率分布。当一句生成结束的时候,字符级别RNN的最后一个向量,作为表示这个句子的向量,送给句子级别RNN。

总体框架图如下:

ipoet

Generating Topical Poetry

模型[9]基于encoder-decoder框架,分为两步。先根据用户输入的关键词得到每句话的最后一个词,这些词都押韵且与用户输入相关。再将这些押韵词作为一个序列,送给encoder,由decoder生成整个诗歌。这种机制一方面保证了押韵,另外一方面,和之前提到的规划模型类似,在一定程度上避免了主题漂移问题。

SeqGAN: Sequence Generative Adversarial Nets with Policy Gradient

模型[10]将图像中的对抗生成网络,用到文本生成上。生成网络是一个RNN,直接生成整首诗歌。而判别网络是一个CNN。用于判断这首诗歌是人写的,还是机器生成的,并通过强化学习的方式,将梯度回传给生成网络。
模型框架图如下:
seqgan

总结

从传统方法到深度学习,诗歌生成技术有了很大发展,甚至在一定程度上,已经可以产生普通人真假难辨的诗歌。但是目前诗歌生成技术,学习到的仍然只是知识的概率分布,即诗句内,诗句间的搭配规律。而没有学到诗歌蕴含思想感情。因此尽管生成的诗歌看起来有模有样,但是仍然感觉只是徒有其表,缺乏一丝人的灵性。
另外一方面,诗歌不像机器翻译有BLEU作为评价指标,目前仍然依赖人工的主观评价,缺乏可靠的自动评估方法,因此模型优化的目标函数和主观的诗歌评价指标之间,存在较大的gap,也影响了诗歌生成质量的提高。AlphaGo已经可以击败顶尖人类选手,但是在诗歌生成上,机器尚有很长的路要走。

参考文献

[1] 一种宋词自动生成的遗传算法及其机器实现
[2] i,Poet: Automatic Chinese Poetry Composition through a Generative Summarization Framework under Constrained Optimization
[3] Generating Chinese Classical Poems with Statistical Machine Translation Models
[4] Recurrent neural network based language model
[5] Chinese Poetry Generation with Recurrent Neural Networks
[6] Chinese Song Iambics Generation with Neural Attention-based Model
[7] i, Poet: Automatic Poetry Composition through Recurrent Neural Networks with Iterative Polishing Schema
[8] Chinese Poetry Generation with Planning based Neural Network
[9] Generating Topical Poetry
[10] SeqGAN: Sequence Generative Adversarial Nets with Policy Gradient

本周值得读(2017.01.16-2017.01.20)

Dialog Context Language Modeling with Recurrent Neural Networks

【对话语言模型】传统的基于上下文的(context dependent)语言模型多是先将前文中的信息做特征表达,例如用LDA、n-gram、或是RNN等方法做文本的特征提取,再将其加入到RNN语言模型中。这些方法比较适合于表达文档(document)的上下文信息,但他们并没有针对上下文中的交互做建模,因此并不一定适用于对话中(dialog)的上下文信息表达。本文针对如何有效表达对话中的交互做了探索,提出了两种基于RNN的上下文关联语言模型,在Switchboard Dialog Act Corpus (SwDA)上取得了一定的效果,并尝试对实验结果做了进一步分析。本文采用的数据集地址:http://compprag.christopherpotts.net/swda.html
本文作者是CMU的bing liu博士,也是paperweekly的写作成员之一。

A Copy-Augmented Sequence-to-Sequence Architecture Gives Good Performance on Task-Oriented Dialogue

【对话系统】【seq2seq】本文尝试了用seq2seq+attention+copynet的思路来做面向具体任务的chatbot,在所提指标上得到了不错的效果,所用数据集为DSTC2,工作来自stanford Christopher D. Manning 教授组,建议精读。

Deep Memory Networks for Attitude Identification

【观点挖掘】通过算法分析一句话中人对某一个实体的态度是一件不容易的事情,现在的方法也比较多,本文的亮点在于用Memory Network模型来做这件事情。对观点挖掘、情感分析感兴趣的童鞋可以深入读一下。

Neural Models for Sequence Chunking

【Chunking】很多的NLP任务,比如浅层分析、slot filling、ner等等都可以当成是序列标注任务,用经典的概率图模型、RNN模型及其变种和两者的混合模型来处理,本文提出了用seq2seq+pointer的方法来解决这一经典问题,并且取得了不错的效果。关注序列标注的童鞋可以精读此文。本文工作来自IBM,被AAAI2017 accepted。

DyNet: The Dynamic Neural Network Toolkit

【深度学习框架】 这个框架是由CMU推出的一款深度学习框架,最大的特点是动态性,尤其擅长解决自然语言处理相关问题,c++实现,python封装,代码地址:https://github.com/clab/dynet

LightNet: A Versatile, Standalone Matlab-based Environment for Deep Learning

【深度学习框架】推荐一个基于matlab的深度学习框架,包括了常见的CNN、RNN模型和各种模块以及增强学习,支持cpu和gpu两种训练模式,简单易用,方便灵活。感兴趣的童鞋可以看过来,fork一下。代码地址:https://github.com/yechengxi/LightNet

PaperWeekly 第二十二期

引言

Image Caption是一个融合计算机视觉、自然语言处理和机器学习的问题,它类似于翻译一副图片为一段描述文字。该任务对于人类来说非常容易,但是对于机器却非常具有挑战性,它不仅需要利用模型去理解图片的内容并且还需要用自然语言去表达它们之间的关系。除此之外,模型还需要能够抓住图像的语义信息,并且生成人类可读的句子。
随着机器翻译和大数据的兴起,出现了Image Caption的研究浪潮。当前大多数的Image Caption方法基于encoder-decoder模型。其中encoder一般为卷积神经网络,利用最后全连接层或者卷积层的特征作作为图像的特征,decoder一般为递归神经网络,主要用于图像描述的生成。由于普通RNN存在梯度下降的问题,RNN只能记忆之前有限的时间单元的内容,而LSTM是一种特殊的RNN架构,能够解决梯度消失等问题,并且其具有长期记忆,所以一般在decoder阶段采用LSTM.

问题描述

Image Caption问题可以定义为二元组(I,S)的形式, 其中I表示图,S为目标单词序列,其中S={S1,S2,…},其中St为来自于数据集提取的单词。训练的目标是使最大似然p(S|I)取得最大值,即使生成的语句和目标语句更加匹配,也可以表达为用尽可能准确的用语句去描述图像。

数据集

论文中常用数据集为Flickr8k,Flick30k,MSCOCO,其中各个数据集的图片数量如下表所示。

数据集图片和描述示例如图

其中每张图像都至少有5张参考描述。为了使每张图像具有多种互相独立的描述,数据集使用了不同的语法去描述同一张图像。如示例图所示,相同图像的不同描述侧重场景的不同方面或者使用不同的语法构成。

模型

本文主要介绍基于神经网络的方法

1 NIC[1]

Show and Tell: A Neural Image Caption Generator
本文提出了一种encoder-decoder框架,其中通过CNN提取图像特征,然后经过LSTM生成目标语言,其目标函数为最大化目标描述的最大似然估计。

该模型主要包括encoder-decoder两个部分。encoder部分为一个用于提取图像特征的卷积神经网络,可以采用VGG16,VGG19, GoogleNet等模型, decoder为经典的LSTM递归神经网络,其中第一步的输入为经过卷积神经网络提取的图像特征,其后时刻输入为每个单词的词向量表达。对于每个单词首先通过one-hot向量进行表示,然后经过词嵌入模型,变成与图像特征相同的维度。

2 MS Captivator[2]

From captions to visual concepts and back
本文首先利用多实例学习,去训练视觉检测器来提取一副图像中所包含的单词,然后学习一个统计模型用于生成描述。对于视觉检测器部分,由于数据集对图像并没有准确的边框标注,并且一些形容词、动词也不能通过图像直接表达,所以本文采用Multiple Instance Learning(MIL)的弱监督方法,用于训练检测器。

3 Hard-Attention Soft-Attention[3]

Show, atten and tell: Neural image caption generation with visual attention
受最近注意机制在机器翻译中发展的启发,作者提出了在图像的卷积特征中结合空间注意机制的方法,然后将上下文信息输入到encoder-decoder框架中。在encoder阶段,与之前直接通过全连接层提取特征不同,作者使用较低层的卷积层作为图像特征,其中卷积层保留了图像空间信息,然后结合注意机制,能够动态的选择图像的空间特征用于decoder阶段。在decoder阶段,输入增加了图像上下文向量,该向量是当前时刻图像的显著区域的特征表达。

4 gLSTM[4]

Guiding long-short term memory for image caption generation
使用语义信息来指导LSTM在各个时刻生成描述。由于经典的NIC[1]模型,只是在LSTM模型开始时候输入图像,但是LSTM随着时间的增长,会慢慢缺少图像特征的指导,所以本文采取了三种不同的语义信息,用于指导每个时刻单词的生成,其中guidance分别为Retrieval-based guidance (ret-gLSTM), Semantic embedding guidance(emb-gLSTM) ,Image as guidance (img-gLSTM).

5 sentence-condition[5]

Image Caption Generation with Text-Conditional Semantic Attention

该模型首先利用卷积神经网络提取图像特征,然后结合图像特征和词嵌入的文本特征作为gLSTM的输入。由于之前gLSTM的guidance都采用了时间不变的信息,忽略了不同时刻guidance信息的不同,而作者采用了text-conditional的方法,并且和图像特征相结合,最终能够根据图像的特定部分用于当前单词的生成。

6 Att-CNN+LSTM [6]

What value do explicit high level concepts have in vision to language problems?
如图,作者首先利用VggNet模型在ImageNet数据库进行预训练,然后进行多标签数训练。给一张图片,首先产生多个候选区域,将多个候选区域输入CNN产生多标签预测结果,然后将结果经过max pooling作为图像的高层语义信息,最后输入到LSTM用于描述的生成。该方法相当于保留了图像的高层语义信息,不仅在Image Caption上取得了不错的结果,在VQA问题上,也取得很好的成绩。

7 MSM[7]

BOOSTING IMAGE CAPTIONING WITH ATTRIBUTES

该文研究了图像属性特征对于描述结果的影响,其中图像属性特征通过多实例学习[2]的方法进行提取。作者采用了五种不同的组合形式进行对比。其中第3种、第5种,在五种中的表现出了比较好的效果。由于提取属性的模型,之前用于描述图像的单词的生成,所以属性特征能够更加抓住图像的重要特征。而该文中的第3种形式,相当于在NIC模型的基础上,在之前加上了属性作为LSTM的初始输入,增强了模型对于图像属性的理解。第5种,在每个时间节点将属性和文本信息进行结合作为输入,使每一步单词的生成都能够利用图像属性的信息。

8 When to Look[8]

Knowing When to Look: Adaptive Attention via A Visual Sentinel for Image Captioning

该文主要提出了何时利用何种特征的概念。由于有些描述单词可能并不直接和图像相关,而是可以从当前生成的描述中推测出来,所以当前单词的生成可能依赖图像,也可能依赖于语言模型。基于以上思想,作者提出了“视觉哨兵”的概念,能够以自适应的方法决定当前生成单词,是利用图像特征还是文本特征。

当前结果

本文列出的模型的在COCO测试集上的结果如下:

以下为online MSCOCO testing server的结果:

总结

最近的Image Caption的方法,大多基于encoder-decoder框架,而且随着flickr30,mscoco等大型数据集的出现,为基于深度学习的方法提供了数据的支撑,并且为论文实验结果的比较提供了统一的标准。模型利用之前在机器翻译等任务中流行的Attention方法,来加强对图像有效区域的利用,使在decoder阶段,能够更有效地利用图像特定区域的特征[3]。模型利用图像的语义信息在decoder阶段指导单词序列的生成,避免了之前只在decoder开始阶段利用图像信息,从而导致了图像信息随着时间的增长逐渐丢失的问题[4][5]。模型为了更好的得到图像的高层语义信息,对原有的卷积神经网络进行改进,包括利用多分类和多实例学习的方法,更好的提取图像的高层语义信息,加强encoder阶段图像特征的提取[6][7]。随着增强学习,GAN等模型已经在文本生成等任务中取得了不错的效果,相信也能为Image Caption效果带来提升。

参考文献

  1. Vinyals O, Toshev A, Bengio S, et al. Show and tell: A neural image caption generator[J]. Computer Science, 2015:3156-3164.
  2. Fang H, Gupta S, Iandola F, et al. From captions to visual concepts and back[C]// IEEE Conference on Computer Vision and Pattern Recognition. IEEE, 2015:1473-1482.
  3. Xu K, Ba J, Kiros R, et al. Show, Attend and Tell: Neural Image Caption Generation with Visual Attention[J]. Computer Science, 2016:2048-2057.
  4. Jia X, Gavves E, Fernando B, et al. Guiding Long-Short Term Memory for Image Caption Generation[J]. 2015.
  5. Zhou L, Xu C, Koch P, et al. Image Caption Generation with Text-Conditional Semantic Attention[J]. 2016.
  6. Wu Q, Shen C, Liu L, et al. What Value Do Explicit High Level Concepts Have in Vision to Language Problems?[J]. Computer Science, 2016.
  7. Yao T, Pan Y, Li Y, et al. Boosting Image Captioning with Attributes[J]. 2016.
  8. Lu J, Xiong C, Parikh D, et al. Knowing When to Look: Adaptive Attention via A Visual Sentinel for Image Captioning[J]. 2016.

近期对话系统领域高质量paper汇总

1 Dialog Context Language Modeling with Recurrent Neural Networks

Authors: Bing Liu, Ian Lane
Link: https://arxiv.org/abs/1701.04056
Tags: Context; LM

2 A Copy-Augmented Sequence-to-Sequence Architecture Gives Good Performance on Task-Oriented Dialogue

Authors: Mihail Eric, Christopher D. Manning
Link: https://arxiv.org/abs/1701.04024
Tags: Copy-Augmented Seq2Seq; Task-Oriented

3 Generating Long and Diverse Responses with Neural Conversation Models

Authors: Louis Shao, Stephan Gouws, Denny Britz, Anna Goldie, Brian Strope, Ray Kurzweil
Link: https://arxiv.org/abs/1701.03185
Tags: Long; Diverse

4 RUBER: An Unsupervised Method for Automatic Evaluation of Open-Domain Dialog Systems

Authors: Chongyang Tao, Lili Mou, Dongyan Zhao, Rui Yan
Link: https://arxiv.org/abs/1701.03079
Tags: Automatic Evaluation; Open Domain

5 Neural Personalized Response Generation as Domain Adaptation

Authors: Weinan Zhang, Ting Liu, Yifa Wang, Qingfu Zhu
Link: https://arxiv.org/abs/1701.02073
Tags: Personalize; Response Generation

6 A User Simulator for Task-Completion Dialogues

Authors: Xiujun Li, Zachary C. Lipton, Bhuwan Dhingra, Lihong Li, Jianfeng Gao, Yun-Nung Chen
Link: https://arxiv.org/abs/1612.05688
Tags: User Simulator

7 Learning Through Dialogue Interactions

Authors: Jiwei Li, Alexander H. Miller, Sumit Chopra, Marc’Aurelio Ranzato, Jason Weston
Link: https://arxiv.org/abs/1612.04936
Tags: Reinforcement Learning

8 Online Sequence-to-Sequence Reinforcement Learning for Open-Domain Conversational Agents

Authors: Nabiha Asghar, Pascal Poupart, Xin Jiang, Hang Li
Link: https://arxiv.org/abs/1612.03929
Tags: Seq2Seq; Reinforcement Learning; Open Domain

9 Sequential Match Network: A New Architecture for Multi-turn Response Selection in Retrieval-based Chatbots

Authors: Yu Wu, Wei Wu, Ming Zhou, Zhoujun Li
Link: https://arxiv.org/abs/1612.01627
Tags: Multi-turn; Retrieval-based

10 End-to-End Joint Learning of Natural Language Understanding and Dialogue Manager

Authors: Xuesong Yang, Yun-Nung Chen, Dilek Hakkani-Tur, Paul Crook, Xiujun Li, Jianfeng Gao, Li Deng
Link: https://arxiv.org/abs/1612.00913
Tags: Joint Learning; NLU; Dialogue Manager

11 Dialogue Learning With Human-In-The-Loop

Authors: Jiwei Li, Alexander H. Miller, Sumit Chopra, Marc’Aurelio Ranzato, Jason Weston
Link: https://arxiv.org/abs/1611.09823
Tags: Interactive; Reinforcement Learning

12 A Simple, Fast Diverse Decoding Algorithm for Neural Generation

Authors: Jiwei Li, Will Monroe, Dan Jurafsky
Link: https://arxiv.org/abs/1611.08562
Tags: Diverse

13 Coherent Dialogue with Attention-based Language Models

Authors: Hongyuan Mei, Mohit Bansal, Matthew R. Walter
Link: https://arxiv.org/abs/1611.06997
Tags: Coherent; Attention

14 Generative Deep Neural Networks for Dialogue: A Short Review

Authors: Iulian Vlad Serban, Ryan Lowe, Laurent Charlin, Joelle Pineau
Link: https://arxiv.org/abs/1611.06216
Tags: Review; Generative DNN

15 Detecting Context Dependent Messages in a Conversational Environment

Authors: Chaozhuo Li, Yu Wu, Wei Wu, Chen Xing, Zhoujun Li, Ming Zhou
Link: https://arxiv.org/abs/1611.00483
Tags: Context

16 Two are Better than One: An Ensemble of Retrieval- and Generation-Based Dialog Systems

Authors: Yiping Song, Rui Yan, Xiang Li, Dongyan Zhao, Ming Zhang
Link: https://arxiv.org/abs/1610.07149
Tags: Retrieval-Based; Generation-Based

17 Exploiting Sentence and Context Representations in Deep Neural Models for Spoken Language Understanding

Authors: Lina M. Rojas Barahona, Milica Gasic, Nikola Mrkšić, Pei-Hao Su, Stefan Ultes, Tsung-Hsien Wen, Steve Young
Link: https://arxiv.org/abs/1610.04120
Tags: Context; SLU

18 Dialogue Session Segmentation by Embedding-Enhanced TextTiling

Authors: Yiping Song, Lili Mou, Rui Yan, Li Yi, Zinan Zhu, Xiaohua Hu, Ming Zhang
Link: https://arxiv.org/abs/1610.03955
Tags: Context

19 Personalizing a Dialogue System with Transfer Learning

Authors: Kaixiang Mo, Shuangyin Li, Yu Zhang, Jiajun Li, Qiang Yang
Link: https://arxiv.org/abs/1610.02891
Tags: Personalize; Transfer Learning

20 Dialogue manager domain adaptation using Gaussian process reinforcement learning

Authors: Milica Gasic, Nikola Mrksic, Lina M. Rojas-Barahona, Pei-Hao Su, Stefan Ultes, David Vandyke, Tsung-Hsien Wen, Steve Young
Link: https://arxiv.org/abs/1609.02846
Tags: Dialogue Manager; Gaussian Process Reinforcement Learning

21 Joint Online Spoken Language Understanding and Language Modeling with Recurrent Neural Networks

Authors: Bing Liu, Ian Lane
Link: https://arxiv.org/abs/1609.01462
Tags: Joint Learning; SLU; LM

22 End-to-End Reinforcement Learning of Dialogue Agents for Information Access

Authors: Bhuwan Dhingra, Lihong Li, Xiujun Li, Jianfeng Gao, Yun-Nung Chen, Faisal Ahmed, Li Deng
Link: https://arxiv.org/abs/1609.00777
Tags: Reinforcement Learning; Task-oriented

23 A Context-aware Natural Language Generator for Dialogue Systems

Authors: Ondřej Dušek, Filip Jurčíček
Link: https://arxiv.org/abs/1608.07076
Tags: Context; NLG

24 Sequence to Backward and Forward Sequences: A Content-Introducing Approach to Generative Short-Text Conversation

Authors: Lili Mou, Yiping Song, Rui Yan, Ge Li, Lu Zhang, Zhi Jin
Link: https://arxiv.org/abs/1607.00970
Tags: Seq2Seq; Short-Text

本周值得读(2017.01.09-2017.01.13)

Neural Personalized Response Generation as Domain Adaptation

【个性化】【对话生成】 本文研究的问题是如何生成个性化的对话,模型仍是基于经典的seq2seq+attention,在该模型的基础上通过两个步骤来生成特定style的对话,第一步是initialization,第二步是adaptation。工作来自哈工大 @刘挺 老师组,他们推出了一个聊天机器人 “笨笨” (可微信搜),而且具有中文阅读理解的功能。关于生成更多样的对话内容,可以参考 PaperWeekly 第十八期 — 提高seq2seq方法所生成对话的流畅度和多样性 http://t.cn/RIVUKnr

RUBER: An Unsupervised Method for Automatic Evaluation of Open-Domain Dialog Systems

【对话系统】【评价】 本文研究的问题也是当前对话系统中非常关键的一个问题,如何更加准确地自动评价模型的效果,本文提出了一种新的评价方法RUBER,旨在通过生成的reply和用户的当前query来联合评判效果,建议从业者和相关研究人员精读。

Generating Long and Diverse Responses with Neural Conversation Models

【对话生成】【seq2seq】 本文研究的问题是如何生成一个又长、又多样的对话,模型仍是基于经典的seq2seq,在decoding部分,加了一个所谓的self-attention部件来保证对话长度和连贯性,在解空间中用随机beam search来搜索候选对话,然后进行重排得到最终结果。关于seq2seq生成对话,可以参看PaperWeekly 第十八期 — 提高seq2seq方法所生成对话的流畅度和多样性http://t.cn/RIVUKnr

Decoding as Continuous Optimization in Neural Machine Translation

【seq2seq】【解码】 本文的亮点在于将seq2seq模型中的解码部分转化成一个连续优化的问题,通过比较成熟的优化算法来解决解码问题,这个思路可以被应用到所有seq2seq解决方案中。

OpenNMT: Open-Source Toolkit for Neural Machine Translation

【NMT】【开源】 Harvard NLP组和SYSTRAN公司联合推出的开源机器翻译系统OpenNMT,torch实现,代码地址:https://github.com/opennmt/opennmt 主页地址:http://opennmt.net/

Implicitly Incorporating Morphological Information into Word Embedding

【词向量】将词形信息考虑在词向量模型中是一种常见的增强手段,一般的做法是将词的前缀、后缀和词根作为独立的token进行建模,而本文的思路则是用能够代表前缀、后缀意思的词来代替进行建模。

Real Multi-Sense or Pseudo Multi-Sense: An Approach to Improve Word Representation

【真假多义词】 词向量是一个非常活跃的研究领域,word2vec提供了一种非常简单粗暴、充满问题的词向量,比如一个典型的问题是一词多义,于是很多的工作都是在解决一词多义的问题,但一个词对应的多个向量其实都指向同一个词义,本文的工作正是对这些伪一词多义进行识别,降低语言研究的复杂度。

Multi-level Representations for Fine-Grained Typing of Knowledge Base Entities

【entity表示】 entity是知识图谱的基础组件,很多的entity都是罕见词(短语),entity的表示是一个相对困难的问题。本文提出了一种char-level、word-level和entity-level三种level的联合表示模型,得到了不错的效果。本文非常值得精读!数据和代码都已公开 http://cistern.cis.lmu.de/figment/

Task-Specific Attentive Pooling of Phrase Alignments Contributes to Sentence Matching

【短语对齐】 本文研究的问题是句子匹配,该问题常常被应用于文本蕴含和答案选择两个任务上,针对短语识别、表示和对齐等关键问题,本文提出了一种基于GRU的NN模型,取得了不错的效果。本文作者是@Wenpeng_Yin

Parsing Universal Dependencies without training

【依存分析】【无监督】 本文的工作是基于pagerank和一些规则来做无监督式的依存文法分析,无监督的paper总是让人眼前一亮,EACL2017。”在现今去规则化和拼语料库的机器学习型parser盛行时,少有的使用规则,无监督的Parser。每人研究都有自己支撑点,在没有被完全推翻时,自然会坚持,不为热潮激流所动,我认为这是理性研究者的主骨,我一直有敬畏之心。尽管各家学说各异,相信还是以结果优良和可发展性为最终评价标准”(观点来自微博 王伟DL)

高考机器人距离我们还有多远?

引言

2016年初,随着AlphaGo战胜韩国棋王李世乭九段,人工智能重新被推到风口浪尖,一时间大家纷纷开始讨论人工智能将会带来什么,将会改变什么,不管是媒体还是学者纷纷将关注点转移到了人工智能上面;号称将改变人类交互方式的聊天机器人也如雨后春笋般地出现在街上、桥下和田野中;2016年末,一个叫做master的计算机程序在网络上接连战胜了几乎所有的围棋高手,经过证实正是AlphaGo的升级版;接着,德州扑克在新年伊始也被人工智能攻破。

“还有谁?!”人工智能仿佛没了对手,仿佛人类的生活马上就会迎来革命性的变化,不由自由地陷入到人工智能威胁的恐惧当中。但,近日一则题为《日本AI机器人Torobo-kun放弃高考计划:阅读理解难以逾越》的新闻备受关注,给处在沸腾边缘的人工智能浪潮浇了一盆冷水。

最近,日本国立情报学研究所(NII)的研究人员宣布,放弃让人工智能系统“Torobo-kun”参加东京大学入学考试的计划。作为NII开发的人工智能机器人,Torobo-kun的终极目标是通过日本顶尖高校东京大学的入学考试,而目前的研究结果表明,这一计划遇到了难以逾越的障碍。

高考对于大家来说是一个充满回忆的词,也是一种相对来讲公平(但不一定科学)的评价体系,对一个学生的知识掌握程度和推理、归纳、总结等能力有比较好的评判。人工智能的研究既然达到了不错的水准,自然而然会来挑战一下高考这种高智力的测试。其实,不仅仅是日本开展了针对机器人高考的研究,国家863“超脑计划”也开展了相关的项目,准备在2017年同高中生们一同参加文科高考,考试科目分别是语文、数学和文综。

如果不仅仅限于高考这种形式的话,很多的顶尖研究机构在很早的时候就开展了利用人工智能来解数学、物理、化学、生物、地理、历史等各门学科的题,比如大名鼎鼎的Halo Project和OpenAI的Aristo Project,其中有的已经宣告失败,有的仍在努力尝试。

高考机器人

高考机器人计划(Todai Robot Project)

Todai机器人计划是日本国立情报学研究所(NII)于2011年提出的研究计划,目标是开发一套机器人系统,参加东京大学入门测试并且通过,在项目的早期研发中,顺利地通过了绝大多数的私立大学和一部分公立大学的入学考试,但水平离东京大学的要求仍有较大差距。究其原因,尽管现有的研究水平在很多任务上相比于传统的方法已经有较大的进步了,但对于真正理解人类语言,然后进行推理、归纳和总结还有很长的路要走。比如“谁是曹丕的父亲,谁是中国三国时期魏国的第一位皇帝?”,高考机器人Torobo-kun未能给出正确的答案。虽然Torobo-kun知道曹丕是曹操的儿子,但它没能想出曹操就是曹丕的父亲,因为它不理解父子关系。历时近6年的研究项目就此宣布失败,项目期间共发表了14篇相关的论文。

题型分析

直观地理解,对于机器人来说,考察记忆的题目会比考察推理、归纳的题目更容易一些,选择题比填空题更容易一些,客观题比主观题更容易一些,文科的题目比理科的题目更容易一些。高考机器人是一个非常综合的任务,包括了图像识别、语音识别、自然语言处理和生成、问答系统和知识图谱等许多研究内容,而现如今流行的深度学习成功地将图像识别和语音识别的精度提升到了工业级的标准,同时也为自然语言处理的很多任务带来了全新的解决方案,但仍无法达到工业级的标准。

考试题目分类众多,本文选择几个典型的题型进行分析。

###

###

###

###

结论

1、失败原因(与研究难点关联)
2、评论(对这件事进行评论)

PaperWeekly 第二十一期

多信息融合是一个重要的研究趋势,尤其是对于训练数据缺乏的任务来说,如何融入其他相关信息来提高本任务的准确率是一个非常值得研究的问题。机器翻译是一个热门的研究领域,随着训练数据规模地增加,各种NN模型的效果也取得了突破的进展,google和百度均已部署上线NMT系统;融合图像、音频、视频、文本等各种模态数据的多模态研究也是一个非常热门的研究方向,本期PaperWeekly将为大家带来NMT和多模态交叉研究的paper解读,共3篇paper:

1、Attention-based Multimodal Neural Machine Translation, 2016
2、Multimodal Attention for Neural Machine Translation, 2016
3、Zero-resource Machine Translation by Multimodal Encoder-decoder Network with Multimedia Pivot, 2016

Attention-based Multimodal Neural Machine Translation

作者

Po-Yao Huang, Frederick Liu, Sz-Rung Shiang, Jean Oh, Chris Dyer

单位

CMU

关键词

Visual Features, Attention, Multimodal NMT

文章来源

ACL 2016

问题

多模态神经机器翻译,在传统的seq2seq翻译模型上,利用图像特征信息帮助提高机器翻译的结果

模型

在WMT16的多模态神经网络机器翻译新任务上的工作。
提出了3种如何将visual feature加入到seq2seq网络中的encoder,从而使得decoder更好的attention到与图像,语义相关部分的模型: global visual feature, regional visual feature,paralle threads.

global_visua

global visual: 直接将VGG中的fc7抽出的feature加入到encoder的first step(head)或者是last step(tail)

region_visua

regional visual: 先用R-CNN抽出region box的信息,再用VGG得到fc7的特征,将top4对应的region feature,以及global visual feature分别作为每一个step输入到encoder中

parallel_threads

parallel threads: 与regional visual相对应的是,每个thread只利用一个region box的feature,和global visual一样的网络,将top 4对应的4 threads和gloabl thread一起做average pooling,每个therad的参数共享; attention则对应所有threads中的所有hidden states

同时本文还提出了三种rescoring translation的结果的方法, 用 1)language model 2)bilingual autoencoder 3)bilingual dictionary分别来挑选translation的句子,发现bilingual dictionary来删选翻译的句子效果最好

资源

数据集: WMT2016 (En-Ge)
图像特征提取: VGG, R-CNN

实验结果

在En-Ge的结果如图:
en-ge

相关工作

NMT: Kalchbrenner and Blunsom 2013
Attention NMT: Bahdanau 2014
Joint Space Learning: Zhang 2014,Su 2015,Kiros 2014
多模态上相关工作目前并没有很多,值得快速入手

简评

本文提出了一种针对图像和文本结合的神经网络翻译模型,非常自然的将图像特征加入到seq2seq模型的encoder部分,使decoder不仅能够attention在文本上,同时也能够focus到图像上(global或者region);并且模型的设计比较简单,没有加入太多复杂的模块。
不过只是简单的将图像的特征作为seq中的一个step,并没有考虑文本和图像之间的相关关系,如joint space,相信加入joint learing会有提升。

完成人信息

Lijun Wu from SYSU.

Multimodal Attention for Neural Machine Translation

作者

Ozan Caglayan, Loïc Barrault, Fethi Bougares

单位

University of Le Mans, Galatasaray University

关键词

NMT, Attention

文章来源

arXiv 2016.09

问题

给定图片和源语言描述的情况下,基于attention机制,生成目标语言的图片描述。

模型

模型有两个encoder,一个是textual encoder,是一个双向GRU,用于获取源语言文本的向量表示$A^{txt} = {a^{txt}_1,a^{txt}_2,…}$,另外一个是visual encoder,使用的是现成由ImageNet数据集训好的ResNet-50网络,用于获取图片的向量表示。$A^{im} = {a^{im}_1,a^{im}_2,…}$. Decoder部分,是两层的stakced GRU,先用attention方式,分别获取文本部分和图像部分的context向量$c^{txt}$和$c^{im}$,然后将两个向量concat在一起,作为新的context 向量$c$。
如图:

mul_attention

这样decoder部分的解码翻译的时候,不仅可以考虑到源语言的文本信息,也可以考虑到原始图片的信息。

资源

IAPRTC-12 dataset for English and German

相关工作

2014年Bahdanau的Neural Machine Translation by Jointly Learning to Align and Translate,使NMT超过了传统的PBMT,后来的NMT论文基本都是在这个文章基础上进行的改进。
2015年Elliott的工作Multi-language image description with neural sequence models. 也是在给定源语言和图片的情况下,生成目标语言。不过并没有使用attention机制。

简评

该文章的创新之处,在于对图片描述文字进行翻译的时候,考虑到了图片本身的特征信息并引入attention机制。在源语言文本生成出错的情况下,因为有图片信息参考,在一定程度上,可以减轻这种错误带来的影响。不过文章并没有利用外部英德平行语料,这可以考虑作为后面的改进方向。

完成人信息

xiaose@mail.ustc.edu.cn
中国科学技术大学

Zero-resource Machine Translation by Multimodal Encoder-decoder Network with Multimedia Pivot

作者

Hideki Nakayama,Noriki Nishida

单位

The University of Tokyo

关键词

pivot, multimodal, NMT

文章来源

arXiv, 2016.11

问题

在没有平行语料的情况下,用image当作pivot来实现机器翻译

模型

整体上讲,模型分成两部分。第一部分是多模态embedding,采用pairwise ranking loss来定义损失函数;第二部分是用RNN来实现的decoder,跟image caption里面的decoder类似。对这个问题来说,我们的训练数据包括$i^{s}$:源端的图片,$d^{s}$:源端图片对应的句子描述;$i^{t}$:目标端的图片,$d^{t}$:目标端图片对应的句子描述,和源端用的不一样的语言。文中提出了2个模型来解决这个问题:
21-1

模型1的多模态端包括了图片的encoder和源句子的encoder。图片encoder可以对源图片和目标图片通用。多模态端用$i^{s}$,$d^{s}$进行训练,损失函数为:

21-2

$E^{v}$表示图片的encoder(比如用VGG-16提取图片的feature), $E^{s}$表示源句子的encoder(比如用RNN),$d^{s}_{ng}$表示和源端图片不相关的描述。Decoder端用$i^{t}$,$d^{t}$进行训练,损失函数为标准的 cross-entropy loss(称作图片损失):

21-3

模型2比模型1更复杂一点。在源端增加了一个目标句子描述的encoder。因此,在多模态embedding的学习中,损失函数增加了目标图片和目标图片描述的pairwise ranking loss.

21-4

在decoder的学习中,模型2除了前面的公式2定义的图片损失外,还增加了目标描述的reconstruction loss,即从多模态端输入目标描述,希望通过embedding和decoder重建这个目标描述。
21-5

资源

两个Multilingual image-description的数据集:IAPR-TC12(包含2万图片以及英语和德语的描述)和 Multi30K(包含3万图片以及英语和德语的描述)

相关工作

对于没有平行语料的机器翻译,多数文章是用某种常见语言作为pivot,比如“Neural Machine Translation with Pivot Languages”, 用英语作为西班牙语法语以及德语法语之间的pivot。缺点是翻译的时候还是要经过pivot那一步。 另外,还要一些工作是用一个模型实现many to many的翻译。在这种情况下,没有平行语料的语言对也能用这个模型进行翻译。不需要经过pivot那个中间层,但是效果一般会差一点。比如“Google’s Multilingual Neural Machine Translation System”这篇文章。

简评

这篇文章的思路很新颖,考虑用图片来作为pivot,实现没有平行语料的语言对之间的翻译。训练完成后可以直接从源语言到目标语言进行翻译,不需要经过图片。但是正如文中提到的,这种方法跟有语料训练出来的翻译效果比起来还是差很多,并且翻译的句子都比较短。另外,对一些图片难以表达的信息很难通过这种方式学到。

总结

交叉领域的研究总是会带给大家惊喜,交叉领域的交叉领域更是如此,这个领域刚刚开坑,欢迎各位有志之士跳坑。并且在2016年举办了第一届多模态机器翻译(Multimodal Machine Translation)和多语看图说话(Crosslingual Image Description)比赛,比赛主页http://www.statmt.org/wmt16/multimodal-task.html, 总结性的paper http://anthology.aclweb.org/W/W16/W16-2346.pdf

本周值得读(2016.12.26-2017.01.06)

The Neural Hawkes Process: A Neurally Self-Modulating Multivariate Point Process

【时间序列模型】 本文提出了一个通用的连续时间序列模型—Neural Hawkes process,用来学习事件流中不同事件之间的影响关系,进而对未来事件的发生时间和类型进行预测。该模型在传统Hawkes process的基础上,用 Recurrent Neural Network 来总结事件流的历史信息,并动态地估计不同时刻不同事件之间复杂的相互影响关系,进而得出未来事件的发生时间和类型的概率分布。此模型可以用于多种事件流的分析,包括医学诊断,消费者行为,和社交网络活动的预测等,并在多个数据集上表现出了显著的优势。作者来自约翰霍普金斯大学NLP组,主页地址http://www.cs.jhu.edu/~hmei/ 有需要讨论的可以直接联系作者本文 hmei@cs.jhu.edu

Understanding Image and Text Simultaneously: a Dual Vision-Language Machine Comprehension Task

【多模态】image caption任务的自动评价存在一定的弊端,本文提出了新的任务,即给定一幅图,给出n个caption选项,只有一个是正确答案,通过准确率来评价算法的效果。构建这样一个任务需要先针对每一张图生成多个难度较高的干扰选项,本文提出了一些构造方法,并且在coco数据集上生成了本文的数据集,通过人工选择获得该任务的准确率上限。数据集已开放,地址 https://github.com/google/mcic-coco

A Joint Speaker-Listener-Reinforcer Model for Referring Expressions

【多模态】本文研究的问题非常有趣,是Referring Expressions,简单点说就是给一张图和一个描述,要求找到描述中对应的object,通常包括两个任务:1、根据图片和指定object生成一个描述;2、根据图片和描述来找object。本文构建了一个联合训练模型,将两个任务一起训练,加上一层增强学习来提高所生成描述的多样性,得到了不错的结果。demo和dataset地址:https://vision.cs.unc.edu/refer/

Supervised Opinion Aspect Extraction by Exploiting Past Extraction Results

【观点挖掘】【迁移学习】本文做的工作是将某一些领域中已经抽取的非常好的aspect迁移至新的领域,比如screen在苹果手机中存在这么一个aspect,其他品牌的手机也存在,其他的电子设备可能也存在,利用已有的“知识”来提高准确率。

Language Modeling with Gated Convolutional Networks

【CNN语言模型】本文的工作是将CNN模型和一种gate机制结合起来做语言模型,挑战了RNN在这个领域的霸主地位。工作来自Facebook,他们对CNN有非常的偏好。

Understanding Neural Networks through Representation Erasure

【解释神经网络】大家都知道深度学习效果好,但原因确实解释不清楚。本文尝试着做了一些解释方面的工作,通过“erase”掉一些representation来研究结果的变化,甚至通过增强学习来研究最多“erase”掉哪些representation仍不影响最终的结果。深度学习如果有了可解释性,相信又将会是一个新的研究水平了。

Shortcut Sequence Tagging

【新网络结构】本文针对多层RNN难训练的问题,提出了一种gate机制和shortcuts机制混合的方法,并研究了不同的组合效果。方法在序列标注问题上进行验证,从结果上来看,提高的不多,也从侧面反映出一个问题,现有的网络结构加一些排列组合或者小改动很难解决根本性的问题。

Unsupervised neural and Bayesian models for zero-resource speech processing

【无监督】【贝叶斯】本文是一篇来自爱丁堡大学的博士论文。

Textual Entailment with Structured Attentions and Composition

【文本蕴含】本文的贡献在于将attention应用到了句法树上,而不是只对句子做attention。

PaperWeekly 第二十期

GAN(Generative Adversarial Nets)研究进展

Model

1、Unsupervised learning

首先我们从generative model说起。generattive model的目的是找到一个函数可以最大的近似数据的真实分布。如果我们用 f(X; 𝜃) 来表示这样一个函数,那么找到一个使生成的数据最像真实数据的 𝜃 就是一个maximum likelihood estimation的过程。问题在于,当数据的分布比较复杂时,我们需要的 f 也会变复杂。现在我们有深度网络结构可以表达这样一个复杂的函数(deep generative model),但是训练过程成为了关键。基于sampling的训练过程显然不是很高效的。因此,如何设计模型以便利用backpropagation来训练网络成为了一个重要的目标。当前两个比较突出的模型实现的就是这个目的,一个是variational autoencoder(VAE),另一个就是这篇文章的主题generative adversarial nets。

这篇文章会从基本的GAN模型讲起,重点讨论模型公式背后的原理。之后会讨论几篇GAN的扩展工作,希望能够扩展一下大家的思路,也可以加深对GAN模型的理解。下面的关系图大致描述了这些模型之间的继承关系。我们会按照图中的关系一个一个展开。

gan-kg

2、GAN

首先是最经典的GAN模型。由Ian Goodfellow和Bengio等在2014年提出。为了简明扼要,我们直接看图说话。

gan-formula

图中上半部分是GAN模型的基本架构。我们先从一个简单的分布中采样一个噪声信号 z(实际中可以采用[0, 1]的均匀分布或者是标准正态分布),然后经过一个生成函数后映射为我们想要的数据分布 Xg (z 和 X 都是向量)。生成的数据和真实数据都会输入一个识别网络 D。识别网络通过判别输出一个标量,表示数据来自真实数据的概率。在实现上,G 和 D 都是可微分函数,都可以用多层神经网络实现。因此上面的整个模型的参数就可以利用backpropagation来训练得到。

图中的下半部分是模型训练中的目标函数。仔细看可以发现这个公式很像cross entropy,注意D是 P(Xdata) 的近似。对于 D 而言要尽量使公式最大化(识别能力强),而对于 G 又想使之最小(生成的数据接近实际数据)。整个训练是一个迭代过程,但是在迭代中,对 D 的优化又是内循环。所以每次迭代,D 先训练 k次,G 训练一次。

GAN模型最大的优势就是训练简单,但是也有缺点比如训练的稳定性。有趣的是,在这篇文章future work部分,作者提出了5个可能扩展的方向,而现在回过头来看,后续的很多工作真的就是在照着这几个思路填坑。比如第一个conditional generative model就是后面要讲的conditional GAN的思路,而最后一个determing better distribution to sample z from during training则是后面InfoGAN的思路。

下面是来自twitter[9] 的一幅图,很好的总结了各种衍生模型的结构。

gan

2.1 DCGAN

上面Ian J. Goodfellow等人的文章提出了GAN的模型和训练框架,但是没有描述具体的实现,而DCGAN[2] 这篇文章讲的就是用deep convolutional network实现一个生成图片的GAN模型。这篇文章没有在基本模型上有所扩展,但是他描述了很多实现上细节,尤其是让GAN模型stable的方法。所以如果对于GAN的实现有兴趣,这篇文章也是必读。此外,最新NIPS2016也有最新的关于训练GAN模型的总结 [How to Train a GAN? Tips and tricks to make GANs work] (https://github.com/soumith/ganhacks “GAN tricks”)。

3、InfoGAN

在GAN模型中,生成模型的输入是一个连续的噪声信号,由于没有任何约束,即便我们得到一个有效的生成模型,z也不能被很好的解释。为了使输入包含可以解释,更有信息的意义,InfoGAN[7]的模型在z之外,又增加了一个输入c,称之为隐含输入(latent code),然后通过约束c与生成数据之间的关系,使得c里面可以包含某些语义特征(semantic feature),比如对MNIST数据,c可以是digit(0-9),倾斜度,笔画厚度等。具体做法是:首先我们确定需要表达几个特征以及这些特征的数据类型,比如是类别(categorical)还是连续数值,对每个特征我们用一个维度表示ci 。

接下来,利用互信息量来约束c。原理在于,如果 c 和生成的图像之间存在某种特定的对应(如果c是图像的某些特征,则有这样的函数存在),那么c和G(z,c)之间就应该有互信息量。如果是无约束的情况,比如z单独的每一个维度都跟和G(z)没有特定的关系,那么它们之间的互信息量应该接近0。所以加上这个约束之后,要优化的目标函数就变成了

min max V(D,G) = V(D,G) - 𝜆 I(c;G(z,c))

接下来就是如何处理 I(c; G)​。由于 I(c;G(z,c))​ 的计算需要 p(c|x)​,而我们并不知道真实的分布。这时候,我们需要用一个 Q(c|x)​ 来近似,很显然,Q可以用神经网络来实现。此外, 可以利用reparametrization(见附录)的技巧来简化网络。

在实际中,由于Q和D都是输入 x,而且识别网络D除了可以输出概率,也可以做特征提取,因此Q可以和D共享参数。在正常的D之后,额外加一层full connected layer,利用softmax等可以输出c。这也是图3中的结构。

4、 Conditional GAN

Conditional GAN的基本模型见图3。所谓conditional的意思就是,生成图片的模型变成了 P(X|z, c),而c是我们额外提供的信息。这里要注意conditional GAN和Info GAN的结构区别

  • Info中c信息是需要网络去学习提取的特征,而这里是需要我们输入网络的信息。
  • Info中c只输入生成网络,而这里需要同时输入生成和识别网络,以便让网络学习到它们之间的关联。

在Conditional GAN中,随着c的变换可以衍生出很多应用,比如输入可以是label,可以是分类。甚至是另外一个图片,比如可以做image to image的风格转换,也可以做分辨率提升super-resolution。这里我们以Text-to-Image[5] 为例,讲一下conditional GAN的一种建模方法。

同样,先上图:

text2img

模型的任务是给定一句文字描述,然后可以生成符合描述的图像。可以看到,网络的输入除了采样噪声z以外还有文字信息。整个任务分为两大部分:第一部分是要对文字进行编码(text encoding),这部分并不是Conditonal GAN模型的一部分,可以使用RNN或者char-CNN等。文中用的是deep convolutional and recurrent text encoder[4] ,感兴趣可以去看这篇文章[4]。

在模型中,文字信息同时输入 G 和 D 是关键所在,这样网络才能够将文字和图片关联起来。其次,在训练中,原GAN中 D 只需要判断两种数据:real/fake的图片。而这里,D 需要判断(输入)三种数据{real image, right text},{real image, wrong text}以及{fake image, right text}。

5、 StackGAN

StackGAN[8] 模型本质就是是Conditional GAN,只不过它使用了两层conditional GAN模型,第一层模型 P(X1|z, c) 利用输入的文字信息c生成一个较低分辨率的图片。之后第二层模型 P(X|c,,X1) 基于第一层生成的图片以及文字信息生成更加优化的图片。文中给出的实验效果非常的惊人,可以生成256x256的非常真实的图片。这里不再重复细节。下图为简化的StackGAN模型。

stackGAN

Reference

  1. Goodfellow, Ian, et al. “Generative adversarial nets.” Advances in Neural Information Processing Systems. 2014.
  2. Radford, Alec, Luke Metz, and Soumith Chintala. “Unsupervised representation learning with deep convolutional generative adversarial networks.” arXiv preprint arXiv:1511.06434 (2015).
  3. Reed, Scott, et al. “Generative adversarial text to image synthesis.” arXiv preprint arXiv:1605.05396 (2016).
  4. Reed, Scott, et al. “Learning Deep Representations of Fine-Grained Visual Descriptions.” arXiv preprint arXiv:1605.05395 (2016).
  5. Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network
  6. Image-to-Image Translation with Conditional Adversarial Networks
  7. Chen, Xi, et al. “Infogan: Interpretable representation learning by information maximizing generative adversarial nets.” Advances in Neural Information Processing Systems. 2016.
  8. Zhang, Han, et al. “StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks.” arXiv preprint arXiv:1612.03242 (2016).
  9. https://twitter.com/ch402/status/793535193835417601

Appendix

看了几篇关于GAN的文章,发现有几个建模的小trick

  • 在生成模型中,之所以可以从一个简单的分布采样,然后通过一个网络(参数需要学习)去近似数据的分布 背后的原理是

Any distribution in d dim can be generated by taking a set of d normal distribution variables. mapping through a sufficiently complicated function. So provided powerful function approximators, we can simply learn a function mapping independent norm distribution z to whatever X.

  • 在模型中,如果目标函数中某个条件概率无法直接得到,那么可以学习一个网络Q去近似。利用KL divergence D{KL}[P||Q] = H(P,Q) - H(P) 以及
    D{KL} >= 0 可以推出一个更易优化的上/下界。

  • reparametrization trick 举个例子,比如模型中用一个网络 Q(z|x) 来近似真实的 P(z|x),我们常用正态分布来建模Q,即
    N(μ, 𝛴)(这里 μ 和 𝛴 都是带参数的网络,通过学习得到)。当采样的 x 通过 Q 后就可以得到z。但是由于这一步是随机过程,backpropagation就会中断。这个时候我们就可以利用 N(μ, 𝛴) = N(0, I) ⨉ 𝜮 + μ 将随机过程转移到输入端。先从标准正态分布采样 z0,此时网络 Q 并不直接输出z,而是输出两个参数μ 和 𝛴,之后在通过 z=z0 ⨉ 𝛴 + μ 得到z。由于中间节点变成了常规运算,因此backpropagation可以正常传回输入端。

2016年自然语言处理领域15篇值得读的Paper

Learning to Compose Neural Networks for Question Answering

作者

Jacob Andreas, Marcus Rohrbach, Trevor Darrell, Dan Klein

单位

Department of Electrical Engineering and Computer Sciences
University of California, Berkeley

关键词

Question Answering

Text understanding with the attention sum reader network

作者

Rudolf Kadlec, Martin Schmid, Ondrej Bajgar, Jan Kleindienst

单位

IBM Watson

关键词

Machine Reading Comprehension

Improving Information Extraction by Acquiring External Evidence with Reinforcement Learning

作者

Karthik Narasimhan, Adam Yala, Regina Barzilay

单位

CSAIL, MIT

关键词

Information Extraction; Reinforcement Learning

Pointing the Unknown Words

作者

Caglar Gulcehre, Sungjin Ahn, Ramesh Nallapati, Bowen Zhou, Yoshua Bengio

单位

Universite de Montr´eal
IBM T.J. Watson Research
CIFAR Senior Fellow

关键词

Unknown Words

Sequence-to-Sequence Learning as Beam-Search Optimization

作者

Sam Wiseman, Alexander M. Rush

单位

School of Engineering and Applied Sciences, Harvard University

关键词

Seq2Seq; Beam Search

SQuAD: 100,000+ Questions for Machine Comprehension of Text

作者

Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, Percy Liang

单位

Computer Science Department
Stanford University

关键词

Machine Reading Comprehension; Dataset

End-to-End Reinforcement Learning of Dialogue Agents for Information Access

作者

Bhuwan Dhingra, Lihong Li, Xiujun Li, Jianfeng Gao, Yun-Nung Chen, Faisal Ahmed, Li Deng

单位

School of Computer Science, Carnegie Mellon University
Microsoft Research
National Taiwan University

关键词

Reinforcement Learning; Dialogue System

ReasoNet: Learning to Stop Reading in Machine Comprehension

作者

Yelong Shen, Po-Sen Huang, Jianfeng Gao, Weizhu Chen

单位

Microsoft Research Redmond

关键词

Machine Reading Comprehension

Personalizing a Dialogue System with Transfer Learning

作者

Kaixiang Mo, Shuangyin Li, Yu Zhang, Jiajun Li, Qiang Yang

单位

The Hong Kong University of Science and Technology

关键词

Dialogue System; Transfer Learning

LightRNN Memory and Computation-Efficient Recurrent Neural Network

作者

Xiang Li, Tao Qin, Jian Yang, Tie-Yan Liu

单位

Nanjing University of Science and Technology
Microsoft Research Asia

关键词

New Recurrent Neural Network

Dual Learning for Machine Translation

作者

Yingce Xia, Di He, Tao Qin, Liwei Wang, Nenghai Yu, Tie-Yan Liu, Wei-Ying Ma

单位

University of Science and Technology of China
Key Laboratory of Machine Perception (MOE), School of EECS, Peking University
Microsoft Research

关键词

Dual Learning; Neural Machine Translation

Neural Machine Translation with Reconstruction

作者

Zhaopeng Tu, Yang Liu, Lifeng Shang, Xiaohua Liu, Hang Li

单位

Noah’s Ark Lab, Huawei Technologies
Department of Computer Science and Technology, Tsinghua University

关键词

Neural Machine Translation

Linguistically Regularized LSTMs for Sentiment Classification

作者

Qiao Qian, Minlie Huang, Xiaoyan Zhu

单位

State Key Lab. of Intelligent Technology and Systems, National Lab. for Information Science and Technology
Dept. of Computer Science and Technology, Tsinghua University

关键词

Sentiment Classification; LSTM

Google’s Multilingual Neural Machine Translation System: Enabling Zero-Shot Translation

作者

Melvin Johnson, Mike Schuster, Quoc V. Le, Maxim Krikun, Yonghui Wu, Zhifeng Chen, Nikhil Thorat, Fernanda Viégas, Martin Wattenberg, Greg Corrado, Macduff Hughes, Jeffrey Dean

单位

Google

关键词

Multilingual Neural Machine Translation; Zero-Shot

Language Modeling with Gated Convolutional Networks

作者

Yann N. Dauphin, Angela Fan, Michael Auli, David Grangier

单位

Facebook AI Research

关键词

Language Modeling; Gated CNN

告别2016,迎接2017

2016年即将结束,首先对支持PaperWeekly的各位童鞋表示衷心的感谢,感谢你们让我有动力将这个用来督促我自己多读paper的side project坚持一直做下来,感谢各位对自然语言处理感兴趣并且愿意牺牲一些个人时间来写paper note的小伙伴,也感谢每天坚持一起刷arXiv来保证周末推荐“每周值得读”质量的几位童鞋,感谢加入PaperWeekly交流群每天都贡献很多高质量讨论内容的各位朋友,感谢为三个交流群做消息同步机器人的种瓜同学。

PaperWeekly从刚开始只有我一个人,到现在一共有50多位一起愿意分享内容的小伙伴,并且这个数字随着大家的热情参与会逐渐增加,正是有了这么多积极参与的小伙伴,才有了PaperWeekly一周敢做一个topic的底气。从9月1号重新组织PaperWeekly的内容形式,到今天为止,一共发布了17期内容,加上之前我自己写的2期内容,一共是19期内容,19期意味着19周的时间,19周的时间我们可以走过很多地方,吃过很多美食,看过很多美景,而我们选择了读19周的paper,选择了写19周的paper note,选择了推荐这19周中高质量的paper,选择了分享这19周以来大家的成长、积累与思考。

19周的时间,PaperWeekly一共完成了83篇paper notes,而这83篇paper可以用19个独立的topic组织起来,比如:

1、提高seq2seq生成对话的流畅性和多样性;
2、通过无监督/半监督的方法来做命名实体识别(NER);
3、哪些ICLR2017的paper值得关注;
4、Attention模型在NMT任务中的应用和进展;
5、文本摘要技术的进展情况;
6、增强学习在对话生成中的应用;
7、GAN的研究进展;

每个topic都涉及到了一个研究方向,有的内容非常热门,比如GAN,有的内容非常经典,比如NER,每个topic都会抓住一些特点来归纳几篇paper,为准备入门、正在入门、已经入门的同学提供了服务和方便。

从8.25开始,PaperWeekly推出了“每周值得读”栏目,旨在充当arXiv上自然语言处理方面的人工过滤器,旨在解决信息过载问题,旨在帮助大家更快地了解到哪些paper更值得关注。

从8.25开始,PaperWeekly一共推荐了153篇高质量的paper,当然每个人对于质量的理解都会有所偏差,有的paper给整个研究带来了巨大的影响,有的paper可能对某个领域有所提高,有的paper所蕴含的思想会带来很多的启发,这是一件仁者见仁智者见智的事情。

在做PaperWeekly的时候,我观察到大家有一定的招聘需求,可能是公司,也可能是院校或者科研机构,但是在交流群中发的效果又不是很好,于是做了个决定,在11月中旬开始推出了一项新的服务—公益广告服务,从第一个帮助清华大学刘知远老师招博士后开始至今已经发了一些广告了,虽然还没有做效果反馈工作,但我们确实尽力在帮这些需要帮助的企业或者院校,如果您有这样的招聘需求,可以私信来联系我,如果可以与PaperWeekly合作写一期文章会更好!

在做PaperWeekly的时候,我也有过一阵迷茫,就是关于PaperWeekly到底是什么的思考,记得是一个周日晚上,我到了夜里3点仍没有睡着,就爬起来写了一篇《PaperWeekly到底是什么》的文章,来好好地定义了一下我们所做的事情以及所想追求的东西。最后,我是这么定义PaperWeekly的,“PaperWeekly是一个由50多名喜欢分享知识的童鞋利用宝贵的业余时间来一起,以一周为单位、对一个topic进行多篇paper解读和对比总结的、不追求热点、不搞些噱头的爱心公益组织,旨在分享知识。”

对一个东西的定位很重要,直接决定了对这个东西的态度和所应采取的方式、方法。我做不到拿一些哗众取宠的名字来命名文章标题,也做不到过分地夸大或者贬低某一个东西,我只想纯粹地做这么一件事情。各种指标对我们来说没有意义,哪怕没有人来读文章,而我们每天所读的这些paper,所学到的知识都不会减少,当然我希望大家写的东西可以分享给更多的人,让更多的人一起来感受科技的进步和学术的前沿,但我们不会刻意地去追求什么。我一直认为人能够坚持并且努力做好一件事情的最大动力是热爱,是那种没有半点虚伪、没有半点功利的热爱。因为热爱,所以纯粹。

PaperWeekly不是一个完美的东西,但是一个成长的东西,是一个一直在努力变好的东西。2016快要结束了,在2017年里,我们将不断地完善文章质量,丰富文章的形式,增加一些群内的直播交流活动,比如针对某一篇、某几篇paper的讨论,不定期地邀请更多的业界大牛来讲一讲理论和技术如何在工业界落地等等。

PaperWeekly是一个非常开放的组织,随时欢迎想一起写paper notes或者写分享的童鞋加入,让我们不断地努力,不断地壮大力量,在2017年书写出更多值得读的文章,产生更多高质量的讨论内容,一起为国内自然语言处理的发展贡献一点点力量。

最后,感谢各位合作伙伴对PaperWeekly的大力支持,感谢机器之心、科研圈、IEEE计算科学评论、ChatbotChina、将门创投等媒体和机构的支持。

2016年是一个开始,也仅仅是一个开始,2017年即将到来,PaperWeekly将与深度学习社区AI100进行深度合作,为大家提供更好的服务!

本周值得读(2016.12.19-2016.12.23)

Machine Reading with Background Knowledge

【语义理解】在理解一句话的时候通常是直接分析该句话,而没有借助其他外部的知识,所以常常会产生一些歧义或者错误。本文的思路是在分析一句话时,借助一些背景知识来进行辅助,文中给出了两个任务,一个是句法分析中的介词短语消歧,一个是名词短语的关系抽取,都取得了明显的效果。本文作者包括了《机器学习》的作者Tom M. Mitchell教授。单纯地基于统计方法来做句法分析或者语义角色标注确实会遇到一些瓶颈,借助外部的背景知识是一个不错的思路。随着本文一起还开放了一个数据集 Prepositional Phrase Attachment Ambiguity (PPA) dataset http://t.cn/RIx1lEm

A User Simulator for Task-Completion Dialogues

【对话系统】本文研究的问题非常有用,人人都在做chatbot,却苦于没有训练数据,用户模拟是一个不错的思路。本文探索了一种模拟真实用户来训练chatbot的方法,文中给出了模拟器的设计和部分代码,涉及到的领域包括找电影和订电影票。虽然效果有很大提升空间,但是个不错的尝试。推荐给研究和开发chatbot的童鞋。源代码也同时开放了,地址 http://t.cn/RICfMSB 感兴趣的童鞋可以研究下。

Reducing Redundant Computations with Flexible Attention

【注意力模型优化】注意力已经是一个应用比较广泛的深度学习模型,本文对decoding过程中的计算效率进行了优化,提出了一种Flexible注意力模型,在每一步解码时都会通过一个惩罚函数来过滤掉一些不重要的encoder unit,从而降低计算量。

Improving Tweet Representations using Temporal and User Context

【用户画像】本文在对tweet进行表示学习时,通过引入用户timeline上相邻的tweets来提高准确度。

Automatic Generation of Grounded Visual Questions

【VQA】【问题生成】可视化问答是个很有意思的东西,本文提出了一种新的任务,自动生成与图片内容相关的问题,有一点image caption的意思,只是说这里用来提问。感兴趣的童鞋可以关注一下。

CLEVR: A Diagnostic Dataset for Compositional Language and Elementary Visual Reasoning

【VQA】【数据福利】Li Feifei组发布的一组VQA数据集,100k规模的图片集,值得关注!文中提到数据和相关的处理代码近期会公开。

Fast Domain Adaptation for Neural Machine Translation

【机器翻译】【迁移学习】本文的工作是将某一个领域中训练好的模型以最低的代价迁移到领域外,同时保证领域内和领域外都有不错的效果。具体的思路是:先训练出一个不错的baseline model,然后在baseline的基础上使用领域外的少量数据进行几个回合的训练,得到一个continue model,然后将baseline和continue进行mix,得到最终的model。

A Context-aware Attention Network for Interactive Question Answering

【交互式QA】本文的工作亮点在于做问答时提供了一种交互机制,当answer模块觉得现有的信息无法回答question的话,会生成一个更加深入的问题给用户,通过学习用户的反馈来生成答案。

中文信息处理发展报告

中国中文信息学会发布2016年《中文信息处理发展报告》,值得一读!

PaperWeekly 第十九期

本期的PaperWeekly一共分享四篇最近arXiv上发布的高质量paper,包括:情感分析、机器阅读理解、知识图谱、文本分类。人工智能及其相关研究日新月异,本文将带着大家了解一下以上四个研究方向都有哪些最新进展。四篇paper分别是:

1、Linguistically Regularized LSTMs for Sentiment Classification, 2016.11
2、End-to-End Answer Chunk Extraction and Ranking for Reading Comprehension, 2016.10
3、Knowledge will Propel Machine Understanding of Content: Extrapolating from Current Examples, 2016.10
4、AC-BLSTM: Asymmetric Convolutional Bidirectional LSTM Networks for Text Classification, 2016.11

Linguistically Regularized LSTMs for Sentiment Classification

作者

Qiao Qian, Minlie Huang, Xiaoyan Zhu

单位

State Key Lab. of Intelligent Technology and Systems, National Lab. for Information Science and Technology, Dept. of Computer Science and Technology, Tsinghua University

关键词

sentiment classification, neural network models, linguistically coherent representations,

文章来源

arXiv, 2016.11

问题

利用语言资源和神经网络相结合来提升情感分类问题的精度

模型

在LSTM和Bi-LSTM模型的基础上加入四种规则约束,这四种规则分别是: Non-Sentiment Regularizer,Sentiment Regularizer, Negation Regularizer, Intensity Regularizer.因此,新的loss function变为:

eqn

不同的规则约束对应不同的L函数

资源

1、Movie Review (MR) https://www.cs.cornell.edu/people/pabo/movie-review-data/
2、Stanford Sentiment Tree- bank (SST) http://nlp.stanford.edu/sentiment/treebank.html

相关工作

1、Neural Networks for Sentiment Classification
Empirical evaluation of gated recurrent neural networks on sequence modeling
Hybrid speech recognition with deep bidirectional lstm
2、Applying Linguistic Knowledge for Sentiment Classification
Sentiment classification of movie reviews using contextual valence shifters

简评

本文提出了一种新的基于语言资源约束和LSTM/Bi-LSTM的模型用于情感分类,并通过在MR和SST数据集上的实验和对RNN/RNTN,LSTM,Tree-LSTM,CNN的效果对比证明了这一模型的有效性。除此之外,本文还基于不同的约束进行了实验,证明的不同的约束在提高分类精度上的作用。本文实验丰富,效果的提升虽不显著,但新的模型确实在不同程度上克服了旧模型的一些不足。

End-to-End Answer Chunk Extraction and Ranking for Reading Comprehension

作者

Yang Yu, Wei Zhang, Kazi Hasan, Mo Yu, Bing Xiang, Bowen Zhou

单位

IBM Watson

关键词

Reading Comprehension, Chunk extraction, Ranking

文章来源

arXiv, 2016.10

问题

针对答案非定长的阅读理解任务,本文提出了DCR(dynamic chunk reader)模型
来从给定的文档中抽取可能的候选答案并进行排序。

模型

本文提出的模型结构共分为四部分,
1、Encoder Layer
如图所示,这部分是用双向GRU分别对文档(Passage)和问题(Question)进行编码。
2、Attention Layer
该层采用的方法与相关工作中的mLSTM类似,文档每个时刻的状态hjp都与问题中的每个状态hkq进行匹配得到一个权重向量αk,然后再根据该权重向量对问题的GRU隐层输出hp进行加权求和,得到文档中该时刻状态hjp对应的上下文向量βj,两个向量hjp和βj拼接在一起作为该时刻新的表示vj。最后再将上述与问题相关的新文档表示v通过双向GRU,得到文档最终的表示γ。
DC

3、Chunk-Representation Layer
上一部分获得了与问题相关的文档表示γ,那么这部分则是考虑如何抽取候选答案,并获得候选答案的表示向量。本文提出了两种候选答案抽取方法,第一种方法是抽取所有满足训练数据中答案对应词性标注模式的候选项,第二种方法则是简单粗暴地确定一个候选项最大长度,然后遍历所有可能的候选项。至于候选答案的表示方式,本文将候选答案前向GRU的最后一个时刻状态和反向GRU第一个时刻状态拼接在一起作为最终候选项的表示。
4、Ranker Layer
已经获得了所有候选项的表示,那么接着就是对所有候选项进行打分排序。本文中打分是采用问题的表示和候选项的表示计算内积的方式得到的,本文训练过程中没有采用常见于排序任务的Margin ranking loss,而是先用softmax对所有候选项计算一个概率值,然后采用交叉熵损失函数进行训练。

本文在SQuAD数据集上进行实验,提出的方法效果比之前两篇SQuAD相关paper的方法有较大的提升。

资源

1、SQuAD https://rajpurkar.github.io/SQuAD-explorer/

相关工作

1、数据集相关论文
SQuAD: 100,000+ Questions for Machine Comprehension of Text
2、模型相关论文
MACHINE COMPREHENSION USING MATCH-LSTM

简评

在对文档和问题编码阶段,本篇论文提出的模型与之前mLSTM那篇paper有些相似。两篇论文中模型的主要区别在于:mLSTM那篇论文采用预测起始、终止位置的方法来确定答案,而本文则是先采用一些规则或Pattern的方法来抽取一些候选答案,然后再对候选答案进行排序。

联系方式

有DL或者NLP相关话题,欢迎讨论。destin.bxwang@gmail.com

Knowledge will Propel Machine Understanding of Content: Extrapolating from Current Examples

作者

Amit Sheth, Sujan Perera, and Sanjaya Wijeratne

单位

Kno.e.sis Center, Wright State University Dayton, Ohio, USA

关键词

Semantic analysis of multimodal data,Machine intelligence,Understanding complex text,EmojiNet

文章来源

arXiv, 2016.10

问题

利用知识和多模态数据来解决特定情况下的复杂文本的深层理解问题

模型

1、现知识库在处理特定领域问题中的局限性及解决方法
(1)知识库的杂乱
解决方法:采用自动判别技术,领域知识库索引技术,利用实体和关系的语义去判别所给定知识库领域中的相关部分。
(2)知识库数据的不完备和不充足
解决方法:使用 human-in-the-loop模型在真实的临床数据和已有的知识库中去发现更多的实体与实体之间的关系。
(3)知识表示技术和推理技术的局限性
解决方法:在单个属性的表示中加入了三元组和软逻辑的解释能力及其相关概率值和理由。

2、新的研究应用
(1)隐实体链接
(2)表情符号语义消歧
(3)理解和分析web论坛中关于药物滥用的相关讨论
利用相关背景知识加强不同种类信息的信息抽取模型
img1

3、在健康领域中的文本理解模型
img2

4、使用感知器和文本资料了解城市交通情况
(1)交通领域的概念关系网模型
(2)概率图模型
img3

使用领域知识关联不同模态下的上下文相关数据
img4

简评

本文主要举例说明了知识将推动机器对内容的理解。总体来看本文像一篇综述性的文章,给出了在知识库创建过程中所遇到的问题的解决方案,同时以实际案例来阐述知识在我们实际问题中应用。

AC-BLSTM: Asymmetric Convolutional Bidirectional LSTM Networks for Text Classification

作者

Depeng Liang and Yongdong Zhang

单位

Guangdong Province Key Laboratory of Computational Science, School of Data and
Computer Science, Sun Yat-sen University, Guang Zhou, China

关键词

ACNN; BLSTM; Text Classification

文章来源

arXiv, 2016.11

问题

本文提出了一个新的深度学习的模型–AC-BLSTM的模型(即:将ACNN和BLSTM组合在一起),用于句子和文章层面的分类。

模型

AC-BLSTM模型可以分成四个部分,如Figure 1所示:
1.输入: 输入是一个sentence,使用 ( L d )的矩阵表示,其中L表示句子中的L个词,d表示每个词的词向量的维度
2.ACNN(Asymmetric CNN): 传统的CNN采用的是 ( k
d ) 大小的filter,ACNN则把filter的过程分成 ( 1 d ) 和 ( k 1 ) 的两个过程,相当于是把 ( k d ) 的filter做因式分解。
这一层的输入是一个 ( L
d ) 的矩阵,对于n个尺度为( 1 d ) 和( ki 1 )的卷积层的输出是一个 [ (L - ki + 1) n ]的矩阵,如下图所示,本文采用了3种不同的卷积核,所以输出是3种不同的[ (L - ki + 1) n ]的矩阵(图中一个彩色的小方块表示 (1 * n)的向量)
3.连接层: 为了给BLSTM构造输入,连接层将3种不同卷积层的输出,以Ct^i表示第1种卷积层为LSTM第t个time step贡献的输入,则LSTM网络的第t步输入Ct = [Ct^1, Ct^2, Ct^3],其中t属于{1,2,…,L-K+1}, K = max{ki}
4.BLSTM: LSTM能够很好的解决long time delay 和long range context的问题,但其处理是单向的,而BLSTM能够解决given point的双边的依赖关系,因此,本文选择了BLSTM网络层来学习ACNN输入的特征的dependencies
5.Softmax层: 为了应用于分类问题,本文在最后使用全连接层和softmax函数来实现分类。
Figure1

资源

文章中使用的数据集
1、SST-1 http://nlp.stanford.edu/sentiment/index.html
2、SST-2 http://nlp.stanford.edu/sentiment/index.html
3、Movie Review(MR) https://www.cs.cornell.edu/people/pabo/movie-review-data/
4、SUBJ https://www.cs.cornell.edu/people/pabo/movie-review-data/
5、TREC http://cogcomp.cs.illinois.edu/Data/QA/QC/
6、YELP13 https://www.yelp.com/dataset_challenge

相关工作

1、Yoon Kim于2014年在Convolutional neural networks for sentence classification一文中提出将词向量和CNN结合,用于句子分类的模型。在该文中,Kim将不同长度的filter的组合在一起,且提出了static或者可以fine-tuning的word embedding模型
2、Zhou et al.则于2015年在A C-LSTM neural network for text classification一文中提出将CNN和LSTM叠加的模型,且使用固定的word embedding
3、Szegedy et al.于2015年在Rethinking the Inception Architecture for Computer Vision中提出了ACNN模型,这减少了参数的个数且提高了模型的表征

简评

这篇文章主要贡献就是提出了一个AC-BSLTM的模型用于文本分类,亮点就在于:ACNN可以在减少参数的个数的同时通过增加更多的非线性性来提高表达能力,而BLSTM能够捕捉输入的两端的信息。两者的结合就提高了分类的精度。但事实上,这两个网络模型都是现有的,本文的工作感觉只是两个网络的连接,在本质上没有太大的改进,且在分类精度上的提高也比较有限。

致谢

感谢@方嘉倩 @destin wang 和 @min279 三位童鞋的辛勤工作。

本周值得读(2016.12.12-2016.12.16)

Building Large Machine Reading-Comprehension Datasets using Paragraph Vectors

【机器阅读理解】【数据福利】
本文利用一种无监督的方法构建了一组大型的机器阅读理解数据集。其中机器阅读理解问题是提供一篇新闻,从5个候选标题中选择一个正确的。无监督的方法用了Mikolov提出的Paragraph Vector(Word2Vec的文档版),用来训练和计算各个新闻标题之间的相似度,产生候选答案。本文所生成的数据集地址:https://github.com/google/mcafp

Multi-Perspective Context Matching for Machine Comprehension

【机器阅读理解】本文的研究基于SQuAD数据集,提出了一个端到端训练模型,主要的思路是passage中与问题相似的span更加倾向于是正确答案。SQuAD是这个领域中有名的数据集,相应的模型很多,本文的结果相对一般。

ConceptNet 5.5: An Open Multilingual Graph of General Knowledge

【知识图谱】【资源推荐】本文介绍了一个通用知识图谱ConceptNet 5.5,图谱主页的地址:http://conceptnet.io/ 相关的code和文档地址: https://github.com/commonsense/conceptnet5

Tracking the World State with Recurrent Entity Networks

【Dynamic Memory】本文介绍了一种新的模型,Recurrent Entity Network (EntNet),引用外部动态长程记忆来做推理,并在 SYNTHETIC WORLD MODEL、bAbI和CBT三个任务上得到了验证,值得关注。本文工作来自FB LeCun组。

Online Sequence-to-Sequence Reinforcement Learning for Open-Domain Conversational Agents

【对话系统】用几个关键词来概括一下本文的工作:1、在线训练;2、seq2seq;3、深度增强学习;4、开放域问题。建议对对话系统感兴趣的童鞋研读。

Neural Emoji Recommendation in Dialogue Systems

【对话系统】【Emoji】Emoji表情是大家在平时聊天时经常会用到的,往往一个表情胜过一句话的表达。本文研究了在多轮对话中如何通过上下文来预测和推荐emoji表情,是个很好玩的工作。如果能够分析和预测更广泛的表情包(不仅限于emoji)的话,可能是件更好玩的事情。

Learning Through Dialogue Interactions

【对话系统】Jiwei Li的新文章,通过和Teacher的交互(基于知识库相互问和答)来提高bot的学习能力,整体框架仍是增强学习,值得精读。代码和数据都已开放,地址:https://github.com/facebook/MemNN/tree/master/AskingQuestions torch实现。

Diverse Beam Search: Decoding Diverse Solutions from Neural Sequence Models

【seq2seq多样性】【柱搜索】一篇考虑了生成内容多样性的beam search改进算法,可以应用在chatbot、nmt、image caption、vqa等各种场景中。开源代码用torch实现的,基于neuraltalk2代码。地址:https://github.com/ashwinkalyan/dbs 在线demo地址:http://dbs.cloudcv.org/captioning

Multilingual Word Embeddings using Multigraphs

【词向量】本文给了一组单语和多语的词向量学习方法,基于SkipGram模型,skipgram的context考虑比较简单,本文主要是在context上做了一些文章,添加了一些特征,比如syntactic dependencies and word alignments等。

FastText.zip: Compressing text classification models

【模型压缩】模型过大是DL的一个问题,尤其是在部署模型时,这个问题尤其明显。本文工作来自FB,是开源分类工具fasttext的一个模型压缩版。FastText的地址:https://github.com/facebookresearch/fastText

Mining Compatible/Incompatible Entities from Question and Answering via Yes/No Answer Classification using Distant Label Expansion

【评论挖掘】本文针对的应用场景是从商品评论中挖掘各种商品的兼容性,比如买了个鼠标,想知道这个鼠标和ipad、pc的兼容性如何。文中的Complementary Entity Recognition 方法来自上周同作者的一篇文章,地址是https://arxiv.org/abs/1612.01039 这个应用场景比较接地气,建议对评论挖掘感兴趣的童鞋阅读。

PaperWeekly 第十八期

引言

对话系统是当前的研究热点,也是风险投资的热点,从2016年初开始,成立了无数家做chatbot、语音助手等类似产品的公司,不管是对用户的,还是对企业的,将对话系统这一应用推到了一个新的高度。seq2seq是当前流行的算法框架,给定一个输入,模型自动给出一个不错的输出,听起来都是一件美好的事情。seq2seq在对话系统中的研究比较多,本期PaperWeekly分享4篇非常新的paper notes,涉及到如何提高所生成对话的流畅度和多样性,使得对话系统能够更加接近人类的对话。4篇paper如下:

1、Sequence to Backward and Forward Sequences: A Content-Introducing Approach to Generative Short-Text Conversation, 2016
2、A Simple, Fast Diverse Decoding Algorithm for Neural Generation, 2016
3、DIVERSE BEAM SEARCH: DECODING DIVERSE SOLUTIONS FROM NEURAL SEQUENCE MODELS, 2016
4、A Diversity-Promoting Objective Function for Neural Conversation Models, 2015

Sequence to Backward and Forward Sequences: A Content-Introducing Approach to Generative Short-Text Conversation

作者

Lili Mou, Yiping Song, Rui Yan, Ge Li, Lu Zhang, Zhi Jin

单位

Key Laboratory of High Confidence Software Technologies (Peking University), MoE, China
Institute of Software, Peking University, China
Institute of Network Computing and Information Systems, Peking Univerity, China
Institute of Computer Science and Technology, Peking University, China

关键词

content-introducing approach
neural network-based
generative dialogue systems
seq2BF

文章来源

arXiv, 2016

问题

使用引入内容方法,用于处理基于神经网络的生成式对话系统

模型

mode

该模型由两部分组成:
1、use PMI to predict a keyword for the reply
使用逐点互信息(PMI)进行预测,选取PMI值最大的单词作为回答中的关键词,该关键词可以出现在回答语句中的任意位置。
公式

2、generate a reply conditioned on the keyword as well as the query
使用sequence to backward and forward sequences(seq2BF)模型来生成包含关键词的回答。以该关键词为基点,将回答语句划分为两个序列:
(1) 反向序列:关键词左侧的所有单词以逆序排列
(2) 正向序列:关键词右侧的所有单词以顺序排列

seq2BF模型具体工作如下:
(1) 使用seq2seq神经网络将问题编码,仅对关键词左侧的单词进行解码,逆序输出每个单词
(2) 使用另一个seq2seq模型将问题再次编码,在给定上步中解码后的逆序单词序列下,对回答中的剩余单词进行顺序解码,输出最终单词序列
公式3

资源

Dataset:http://tieba.baidu.com

相关工作

1、 Dialogue Systems
(1) (Isbell et al., 2000; Wang et al., 2013) retrieval methods
(2) (Ritter et al., 2011) phrase-based machine translation
(3) (Sordoni et al., 2015; Shang et al., 2015) recurrent neural networks

2、 Neural Networks for Sentence Generation
(1) (Sordoni et al., 2015) bag-of-words features
(2) (Shang et al., 2015) seq2seq-like neural networks
(3) (Yao et al., 2015; Serban et al., 2016a) design hierarchical neural networks
(4) (Li et al., 2016a) mutual information training objective

简评

本文的创新点在于,不同与目前普遍存在的从句首到句尾顺序生成目标单词的方法,引入逐点互信息方法来预测回答语句中的关键词,使用seq2BF机制确保该关键词可以出现在目标回答语句的任意位置之中并确保输出的流利度,相比于seq2seq的生成方法显著地提升了对话系统的质量。

A Simple, Fast Diverse Decoding Algorithm for Neural Generation

作者

Jiwei Li, Will Monroe and Dan Jurafsky

单位

Stanford

关键词

seq2seq, diversity, RL

文章来源

arXiv, 2016

问题

seq2seq模型decoder时改进beam search,引入惩罚因子影响排序结果,并加入强化学习模型来自动学习diversity rate,使得解码出的结果更具多样性

模型

18-0

对比标准beam search,本模型引入惩罚因子,公式如下

18-1

其中$\gamma$称为diversity rate,k’范围为[1,k],K为beam size
强化学习模型中,策略为

18-2

reward为评价指标,例如机器翻译中的BLEU值等

资源

1、回复生成实验数据集:OpenSubtitles https://github.com/jiweil/mutual-information-for-neural-machine-translation
(代码模型可从作者另外一篇文章的源码稍加改动)

2、机器翻译数据集:WMT’14 http://www.statmt.org/wmt13/translation-task.html

相关工作

18-3

简评

本模型的创新点在于引入惩罚因子,使得decoder时对standard beam search算法进行重排序,并引入强化学习模型,自动学习diversity rate。作者分别在三个实验上进行验证,机器翻译、摘要抽取与对话回复生成,实验表明在不同的实验上有不同的表现,但是总体而言本方法能够在一定程度上解码出更具有多样性的句子。(思路简明清晰,对于传统的beam search稍加改动,原文中作者提到在Matlab代码中只改动一行即可)

DIVERSE BEAM SEARCH: DECODING DIVERSE SOLUTIONS FROM NEURAL SEQUENCE MODELS

作者

Ashwin K Vijayakumar, Michael Cogswell, Ramprasath R. Selvaraju, Qing Sun1 Stefan Lee, David Crandall & Dhruv Batra

单位

Virginia Tech, Blacksburg, VA, USA
Indiana University, Bloomington, IN, USA

关键词

Beam Search; Diversity; Image Caption; Machine Translation; Visual Question Answer; Chatbot

文章来源

arXiv, 2016.10

问题

如何改进beam search解码算法,使其在seq2seq模型中可以生成更加丰富的结果?

模型

经典的beam search算法以最大后验概率作为优化目标函数,每一个time step只保留B个最优的状态,是一种典型的贪心算法,这个经典算法常常被用于解码可选状态数量多的情形,比如生成对话、生成图片描述、机器翻译等,每一步都有词表大小的可选状态集。seq2seq模型的流行,让这种解码算法的研究变得热门。在生成对话任务时,用经典的beam search会生成类似“我不知道”等这种没有营养的对话,虽然没有语法上的错误,而且可能在一定的评价体系内会得到不错的分数,但实际应用效果太差,因此diversity的研究变得热门。

本文针对diversity的问题,提出了一种改进版的beam search算法,旨在生成更加多样性的话。

18-5

新算法的主要思路是将经典算法中的Beam进行分组,通过引入一个惩罚机制,使得每一组的相似度尽量低,这一项保证了生成的话相互之间差异更大一些,即满足了多样性的需求,在每一组Beam中,用经典的算法进行优化搜索。具体的算法流程如下图:

18-6

实验中,用了Image Caption、Machine Translation和VQA三个任务进行了对比,验证了本文算法的有效性,并且对算法中的几个参数进行了敏感度分析,分析了分组数对多样性的影响。

资源

1、本文算法torch实现 https://github.com/ashwinkalyan/dbs
2、本文在线demo dbs.cloudcv.org
3、neuraltalk2实现 https://github.com/karpathy/neuraltalk2
4、机器翻译开源实现dl4mt https://github.com/nyu-dl/dl4mt-tutorial

相关工作

相关的工作主要分类两类:
1、Diverse M-Best Lists
2、Diverse Decoding for RNNs
之前Jiwei Li将解码算法的目标函数换成了互信息进行优化解码,对diversity进行了研究。

简评

本文研究的问题是一类基础问题,beam search算法作为一种经典的近似解码算法,应用的场景非常多。但在实际应用中,尤其是具体到生成对话、生成答案等任务上,存在一些适应性的问题,比如diversity。只是生成简单而又安全的话对于实际应用没有太多的意义,所以本文的研究非常有意义。本文的实验从三个不同的任务上对改进后的beam search都做了对比验证,非常扎实的结果验证了算法的有效性,并且对几个关键参数进行了敏感度分析,有理有据。同时在github上开源了代码,并且给出了一个在线demo。在评价方面,不仅仅设计了几个自动评价指标,而且用了人工评价的方法对本文算法进行了验证,是一篇非常好的paper,值得学习。

A Diversity-Promoting Objective Function for Neural Conversation Models

作者

Jiwei Li, Michel Galley, Chris Brockett, Jianfeng Gao, Bill Dolan

单位

Stanford University, Stanford, CA, USA
Microsoft Research, Redmond, WA, USA

关键词

Sequence-to-sequence neural network models, conversational responses, Maximum Mutual Information(MMI)

文章来源

arXiv, 2015

问题

使用MMI训练sequence-to-sequence model for conversational responses generation
传统的ML(最大似然估计)在训练sequence-to-sequence model的时候,易产生与输入无关的’safe’ responses(最大似然估计的弊病—-always try to cover all mode of input data)
作者通过使用MMI, 最大化输入与输出的互信息,能够有效避免与输入无关的responses,得到更为diverse的responses.

模型

MMI最早在speech recognition中提出并应用(discriminative training criteria). 语音识别中,通常先用ML训练声学模型,然后再接MMI和语言模型,对声学模型进一步调优。

在本文中,作者通过提出MMI用于seq-to-seq model的优化。作者提出了MMI-antiLM和MMI-bidi 两个不同的MMI的formulations. MMI在seq-to-seq的应用中存在decoding的问题。

MMI-antiLM中,作者通过使用带有权重的LM以生成更为diverse的responses by penalizing first word。

MMI-bidi中,搜索空间的数目过大,导致expolring所有的可能性在实际中无法实现。作者首先产生N-best list, 然后根据相应的准则函数 re-rank得到的N-best list。

在MMI不同的formulation中,作者通过启发式的设计,使得decoding更为容易且产生的response更为diverse,在相关的数据集上取得了较好的BLEU且产生的response更为diverse。

简评

最大后验概率通常作为优化的目标函数,但很多应用场景中得到的结果并不理想。本文采用了一个新的而且也是其他领域中比较常见的目标函数来替换最大后验概率,在生成对话时得到了更加丰富的结果。

总结

对话系统是一个相对高级的、综合性很强的任务,所依赖的基础任务比较多,比如分词、命名实体识别、句法分析、语义角色标注等等。对于规范的中文表达而言,句法分析仍是一个没有解决好的问题,更何况是不那么规范的人话,句法分析的准确性又要下一个level了,随之语义角色标注也得不到好的效果。经典的、基础的任务还有很长的路要走,对话系统这种更难、更复杂的任务相信不是一年、两年就可以突破的事情,虽然现在大热,做的人很多,但就目前的研究水平来看,应该还有很长的路要走。seq2seq是个逃避这些问题的好方法和好思路,但相对来说更加不成熟,而且存在着很多的问题,想通过大量的数据来覆盖所有的问题,是一种不太科学的思路。我想,seq2seq是个好方法,但传统的NLP方法也是必不可少的,而且两者应该是相互补充的。越多的人关注对话系统,就会越快地推动这个领域的发展,希望早日看到靠谱的、成熟的解决方案。感谢@Penny、@tonya、@zhangjun和@皓天 四位童鞋完成的paper notes。

本周值得读(2016.12.05-2016.12.09)

一周值得读

End-to-End Joint Learning of Natural Language Understanding and Dialogue Manager

【对话系统】自然语言理解和对话管理通常是两个独立的任务,NLU的误差会影响到对话管理的效果。本文将两个任务联合起来进行端到端的训练,得到了不错的效果。建议研究对话系统的童鞋来读。

Sequential Match Network: A New Architecture for Multi-turn Response Selection in Retrieval-based Chatbots

【对话系统】本文研究的问题是基于检索的多轮对话机器人,单轮对话和多轮对话的一大区别在于后者需要考虑更多的上下文内容,本文在检索答案时除了相关性还考虑了上下文之间的关系,建议研究检索式聊天机器人的童鞋来读本文。本文还给出了一个测试数据集,地址在:http://t.cn/RIhf4Sh

CER: Complementary Entity Recognition via Knowledge Expansion on Large Unlabeled Product Reviews

【相关实体识别】本文研究的问题是产品评论数据中的相关实体识别问题,评论数据是个很有意思的数据,用户在买东西时希望可以通过对比买到更好的产品。建议做评论挖掘的童鞋读。

The Evolution of Sentiment Analysis - A Review of Research Topics, Venues, and Top Cited Papers

【情感分析】【综述】一篇很细的情感分析的综述,刚刚进入这个领域的童鞋可以来读一读。

一周资源

文本上的算法

《文本上的算法》v4.0:增加自然语言处理和对话系统章节;丰富了其他内容。

NIPS 2016 Spotlight Videos

【NIPS 2016 Spotlight Videos】NIPS 2016焦点视频集。神经信息处理系统大会(Conference and Workshop on Neural Information Processing Systems),简称NIPS,是一个关于机器学习和计算神经科学的国际会议。该会议固定在每年的12月举行,由NIPS基金会主办。NIPS是机器学习领域的顶级会议 。在中国计算机学会的国际学术会议排名中,NIPS为人工智能领域的A类会议。(via @网路冷眼)

2016年深度学习的主要进展

2016年深度学习的主要进展,The major advancements in Deep Learning in 2016 (via @视觉机器人)

PaperWeekly 第十七期

引言

命名实体识别是自然语言处理中一个非常基础的工作,是自然语言处理中关键的一个环节。监督学习是解决命名实体识别的一个基本手段,但标注数据的获取成本往往会比较高,本期PaperWeekly将带大家来看一下如何通过半监督或者无监督的方法来做命名实体识别任务。本期分享的4篇Paper Notes分别是:

1、Building a Fine-Grained Entity Typing System Overnight for a New X (X = Language, Domain, Genre), 2016
2、ClusType: Effective Entity Recognition and Typing by Relation Phrase-Based Clustering, 2015
3、Bootstrapped Text-level Named Entity Recognition for Literature, 2016
4、Recognizing Named Entities in Tweets, 2011

Building a Fine-Grained Entity Typing System Overnight for a New X (X = Language, Domain, Genre)

作者

Lifu Huang, Jonathan May, Xiaoman Pan, Heng Ji

单位

Rensselaer Polytechnic Institute,
Information Sciences Institute,
Rensselaer Polytechnic Institute

关键词

Entity Recognition and Typing, Unspuversied

文章来源

arXiv, 2016

问题

细粒度的实体识别是这几年比较流行的工作。传统的方法是需要先预定义一组实体所属类型,随后使用大量的标注数据来训练多分类器。本文针对需要标注数据的问题,提出了一个使用非监督学习的思路来解决这个问题

模型

本文中方法的架构如下图:

overvie

1)通过entity mention的语料,构建entity mention的context
2)随后构建知识库的表达
3)通过知识库和entity mention进行连接
4)将连接后的数据学习三种表达

  • a general entity distributed representation
  • a specific context representation
  • a knowledge representation

其中entity distributed representation主要是通过上下文来表达实体。
而 a specific context representation主要是表达一些local feature和一些语言结构的特征。
最后a knowledge representation主要是用来模拟领域相关的知识

最后算法通过一个层次聚类算法来获取entity mention可能的分类信息

1、General Entity Representation
entity mention的表达作者主要是用了Skip-gram model通过大量的语料来训练,最终可以得到每个entity mention的表达。这个思路的好处是让两个entity mention属于同一类型时,entity mention的上下文会比较相似,进而可以得到相似的分布式表达

2、a specific context representation
为了得到a specific context representation,本文使用AMR((Abstract Meaning Representation)语法或者句法结构的上下文。
其生成的结构如下图所示。根据给定的entity mention以及对应关系,首先选择entity mention可能的类型,如关系为ARG0 capital of ARG1则ARG0可能的类型则为国家,同理ARG1可能的类型为城市。随后将所有entity mention可能的候选类型通过一个encoder-decoder模型得到一个单一的表达

context specifi

3、Knowledge Representation

由于entity mention的类型在很多情况是非常依赖领域相关的知识库的。因此本文也对知识库进行建模,从而推断出在某个相关领域下更细粒度的实体。为例计算Knowledge Representation,首先对entity mention跟知识库做连接。随后根据链接的实体和实体对应的属性以及类型信息构建一个基于权重的二步图。构建好的二步图根据 Large-scale information network embedding算法来对这个二步图训练并得到其分布式表达。

最后对于一个entity mention,将该entity mention对应的三种表达General Entity Representation,a specific context representation和Knowledge Representation整合,通过一个hierarchical X-means clustering算法得到这个entity mention在一个分类体系下的type信息。最终完成识别实体类型的信息。

简评

细粒度的实体识别是这几年比较流行的工作。传统的方法是需要先预定义一组实体所属类型,随后使用大量的标注数据来训练多分类器。这篇文章的创新点是提出了一个非监督学习的算法来识别实体所属的type,这种非监督的方法在缺少标注数据的垂直领域具有一定的实用性。本文的思路主要是通过文章中的entity mention跟知识库进行连接,通过文章的上下文学习entity mention的分布式表达,同时通过学习知识库中实体和类型的分布式表达。最后将这些表达送入一个层次聚类算法,entity mention得到的embedding和相似的知识库符号embedding会聚到同一个聚类下。进而通过非监督的方法对entity mention打上type的标签。实验证明本文的方法可以跟监督学习起到类似的效果。

ClusType: Effective Entity Recognition and Typing by Relation Phrase-Based Clustering

作者

Xiang Ren, Ahmed El-Kishky, Chi Wang, Fangbo Tao, Clare R. Voss, Heng Ji, Jiawei Han

单位

University of Illinois at Urbana-Champaign,
Microsoft Research, Redmond,
Rensselaer Polytechnic Institute,
Army Research Laboratory, Adelphi

关键词

Entity Recognition and Typing,
Relation Phrase Clustering

文章来源

KDD, 2015

问题

远程监督方法在特定领域的实体抽取方面存在领域扩展性差、实体歧义问题以及上下文稀缺三大问题,本文主要研究如何改进这三个问题。

模型

针对上述的三个问题,本文提出了各自对应的解决思路:只使用浅层的分析方法例如POS等解决领域独立性问题;对entity mention(token span in the text document which refers to a real-world entity)应用词形和上下文联合建模来解决歧义问题;挖掘relation phrase和entity mention的共现情况,利用relation phrase前后实体(主语和宾语)的类别来找到相同的关系,进而辅助实体类型的推断。基于上述的思路,本文提出了ClusType的方法。

ClusType的问题定义如下:给定一个特定领域的文档集合,一个实体类型集合以及一个知识库,主要完成三个任务:第一,从文档集合中抽取出候选的entity mention集合;第二,将一部分entity mention链接到知识库,作为种子entity mention集合;第三,对于剩余未完成知识链接的entity mention集合,预测每一个entity mention的对应实体类别。

根据任务的定义,整个框架也分为三个部分,分别解决这三个任务。

本文方案的具体思路如下:

1、构建关系图

关系图的基本样式如下:

graph

图当中的节点主要分为三种:entity mention, surface name, relation phrase.
图中的边的类型也有三种:entity mention和surface name的关系、surface name和relation phrase在语料中的共现情况、entity mention和entity mention的关系,表现entity mention之间的相似程度。这三个关系均是通过邻接矩阵的形式表示。
关于三种要素的确定,relation phrase的确定主要参考开放域抽取的方法,entity mention的确定方法也比较简单:首先找到固定长度的一个频繁词串集;为集合中每一个词串计算两两之间的得分,得分越高证明越需要合并;在合并的过程中,利用贪心算法,从得分最高开始合并,直到所有得分均低于某一阈值。

2、种子集合的生成

这里利用了dbpedia-spotlight工具进行entity mention到知识库的映射,只选取置信度得分高于0.8的作为有效输出。

3、实体类型推断
目标函数如下:
function
公式共分为三部分:
第一部分遵循实体关系共现假设:如果一个surface name经常在relation phrase前后出现,那么它的类型应该同relation phrase前后实体的类型相关。

第二部分遵循两个假设。
假设一:如果两个relation phrase相似,那么他们前后实体的类型也应该相似;
假设二:判断两个relation phrase相似的特征为词形、上下文和其前后实体的类型。
因此,第二部分的作用在于根据两个假设建模一个基于joint non-negative matrix factorization的multi-view clustering.

第三部分就是建模entity mention对应实体类别、entity mention之间的关系以及引入种子集合的监督,利用一个entity mention的surface name和relation phrase对应的关系类别推断关系类型,同时考虑到相似entity mention的一致性以及对于种子集合的预测误差函数。

相关工作

本文主要借鉴两方面的工作,一部分是远距离监督的方法,另一部分是开放关系抽取。
远距离监督的工作主要有:
1、N. Nakashole, T. Tylenda, and G. Weikum. Fine-grained semantic typing of emerging entities. In ACL, 2013.
2、T. Lin, O. Etzioni, et al. No noun phrase left behind: de- tecting and typing unlinkable entities. In EMNLP, 2012.
3、X. Ling and D. S. Weld. Fine-grained entity recognition. In AAAI, 2012.
开放关系抽取的工作主要有:
1、A. Fader, S. Soderland, and O. Etzioni. Identifying relations for open information extraction. In EMNLP, 2011.

简评

本文通过对于远程监督方法的缺陷分析,提出了一种基于关系短语的实体识别方法。同时,还提出了一个领域无关的生成relation phrase和entity mention。通过将关系短语的聚类和实体类型的识别联合建模,可以在解决实体歧义和上下文问题上发挥很大的作用,而且可以根据entity mention的surface name和relation phrase预测关系类型。同时,我个人认为,将实体识别和关系识别进行联合建模可以起到一个相互促进的作用,而且可以很好的避免在这两个任务当中引入深度语法分析的工具如依存、句法分析等,减少误差积累和领域依赖性。未来两种任务结合依旧是一个很好的研究方向和热点。

Bootstrapped Text-level Named Entity Recognition for Literature

作者

Julian Brooke,Timothy Baldwin,Adam Hammond

单位

English and Comparative Literature San Diego State University
Computing and Information Systems The University of Melbourne

关键词

NER,Brown clustering,Text-level context classifier

文章来源

ACL2016

问题

在无标注数据的情况下,对Literature做命名实体识别

模型

模型主要分为四个部分:
1、Corpus preparation and segmentation
使用GutenTag tool对语料做基本的名称切分
2、Brown clustering
在预先切分好的预料上做Brown clustering。根据Brown clustering的聚类中的每个类的rank值,将聚类结果分成三个类别(PERSON,LOCATION,catch- all category)并将其作为Bootstrap的种子进行训练。
3、Text-level context classifier
为了解决Brown clustering聚类结果可能出现的一些confusion,引入了Text-level context classifier的思想。构建名称特征向量,将种子集数据放到LR模型中进行训练,得到分类模型。
4、Improved phrase classification
为解决模型对短语名词分类不准确问题,引入了改进的短语名称分类方法,在LR模型得到的p(t|r)值的基础上进一步对其优化得到修正的p’(t|r) ,修正方法如下:
imag1

资源

1、dataset:https://www.gutenberg.org
2、GutenTag tool:http://www.projectgutentag.org

相关工作

在Literature上做NER任务的工作包括:
1、(He et al., 2013)character speech identification
2、(Bamman et al., 2014)analysis of characterization
3、(Vala et al., 2015)character identification
4、(Vala et al. 2015)character identification deal the multiple aliases of the same character problem

简评

本文的创新点在于,使用了无监督学习模型对特定领域(fiction)知识做NER,并取得了很好的效果。但是本文方法主要研究特定领域知识的NER,因此本方法使用在跨领域跨语言的NER识别任务中并不能达到很好的效果,方法具有一定的局限性。

Recognizing Named Entities in Tweets

作者

Xiaohua Liu, Shaodian Zhang, Furu Wei, Ming Zhou

单位

Harbin Institute of Technology,
Shanghai Jiao Tong University,
Microsoft Research Asia

关键词

Named Entity Recognition, Semi-Supervised Learning

文章来源

ACL, 2011

问题

如何建立一种半监督学习的模型对使用非正式语言的tweet进行命名实体识别?

模型

现有的分词、词性标注、NER工具解决非正式语言占主导的tweet时常常会失效,得不到令人满意的结果,而twitter作为一种主流的社交媒体,有着丰富的语料和非常高的研究价值。本文以tweet为研究对象,提出了一种基于bootstrapping的半监督学习方案。

tweet的NER任务包括四类实体:Person、Location、Organization和Product,标注方法用BILOU标注法,而没有用经典的IOB标注法。

本文方案的具体思路如下:

knn-crf

1、KNN分类器

将tweet中的每个词用词袋模型表示,输入到KNN中得到一个分类标签,这个标签作为CRF标注时的输入。

2、CRF标注器

NER是一个典型的序列标注任务,CRF是解决序列标注问题的一个典型方法。

3、训练过程:

(1)先根据已有标注数据,训练好初始的KNN和CRF模型。
(2)获得未标注的tweet,每条tweet中的每个词都经过KNN分类器,得到一个分类标签和相应的概率,如果这个概率大于预设阈值,则更新这个标签给该词。整个tweet经过KNN之后,作为特征输入到CRF模型中进行预测,如果预测出的结果概率大于预设阈值,则认为该标注结果可靠,加入可靠结果集中。
(3)当可靠结果集的数量达到N=1000时,则重新训练KNN和CRF模型,并且清空可靠结果集,继续(2)的过程。

相关工作

基于bootstrapping做NER任务的工作还包括:

1、Instance weighting for domain adaptation in nlp, 2007
2、Domain adaption bootstrapping for named entity recognition, 2009

简评

本文是比较早的文章了,算是比较早地探索tweet文本挖掘。bootstrapping是一种经典的半监督学习方法,通过从大量的非标注文本中进行学习和补充,来提高训练数据集的规模。tweet是一种非正式语言的文本,现有的NLP工具基本上都不好用,包括微博、论坛的文本都面临这样的问题,而且这样的文本占据着更大的比重,非常有必要对类似的文本进行NLP工具的研究,大概想了两种思路,要么专门地来研究一套适合这种非正式文本的工具,要么想办法将这样的文本转化为正式的语言,用现有的工具来解决问题。现在很火的chatbot对话理解也面临这样的问题,大家在和bot对话的时候说的话也是类似的非正式语言,如何准确理解和分析这类话,对于chatbot能否真的被应用至关重要。

总结

NER的应用场景非常广泛,基于监督学习的训练方法是最简单、最有效的方法,但在实际应用中常常会遇到训练数据难以获得的尴尬境地,那么半监督和无监督学习的研究正是为了解决这个问题,值得关注!感谢@高桓 @韩其琛 @min279 @zhangjun 四位童鞋的辛勤工作。

本周值得读(2016.11.28-2016.12.02)

一周值得读

A Simple, Fast Diverse Decoding Algorithm for Neural Generation

【beam search】在用seq2seq做一些nlp任务的时候,解码器负责将结果一个个地解出来。解码出的结果应该具有多样性的特点,尤其是在chatbot应用中体现更为突出。传统的beam search算法在解码时常常会解出一些非常安全但是没有实际意义的response,类似于“呵呵呵”,“我认为是这样的”这里的话。本文的工作针对这一问题,提出了一种改进版的beam search算法,通过引入一个惩罚因子来影响排序结果,从而使得解码出的结果更加多样性。建议研究seq2seq或者尝试用它来解决一些问题的童鞋可以精读此文。本文来自Jiwei Li。

Dialogue Learning With Human-In-The-Loop

【对话系统】【在线学习】在线学习是chatbot在与人交互的过程中自动学习的一种方法,快速而且有效。本文给出了一种基于强化学习的在线交互学习方案,作者是Jiwei Li。建议研究或者做chatbot应用的童鞋可以好好研读此文。

Visual Dialog

【多模态对话】多模态问答(VQA)是一个比较好玩的任务,本文在此基础上提出了一个更加复杂而且有意思的任务,即给定一张图像,给出若干个问和答的历史对话,提出一个新问题,要求给出正确答案。问题不仅仅需要理解图片,而且需要理解历史对话。新的任务意味着新的坑,文中给出了一些常见NN模型作为baseline,感兴趣的童鞋可以入坑。

Neural Machine Translation with Latent Semantic of Image and Text

【Visual NMT】就在NMT被讨论地如火如荼的时候,还有一部分工作是结合多模态(图片)来做机器翻译,因为人类获取信息不仅仅可以通过文字,图片也是一个重要的学习资源。

Scalable Bayesian Learning of Recurrent Neural Networks for Language Modeling

【贝叶斯学习】通过BPTT来训练的RNN在解决问题上会存在过拟合的问题,一个主要原因是随机优化训练无法给出模型权重的概率估计,本文通过最近stochastic gradient Markov Chain Monte Carlo的研究来试着学习模型权重的概率。语言模型的实验结果和其他的相关实验结果表明本文所用的方法确实有效。

Learning Python Code Suggestion with a Sparse Pointer Network

【代码补全】本文研究的问题非常有意思,就是大家常见的IDE代码补全功能。现有的IDE对静态编程语言支持的比较好,对于动态编程语言支持的一般,而且一般都是补全某个函数或者方法之类的,而不能给出更复杂的代码。本文针对这个问题,构造了一个大型的python code数据集,并且用了比较流行的Pointer Network模型来做端到端的训练,取得了不错的效果。代码补全在实际应用中非常有用,但想做到很复杂、很智能的补全还有很长的路。不过这个topic还是一个非常有意思的东西。

Joint Copying and Restricted Generation for Paraphrase

【NLG】本文的思路与Pointer Network或者Copynet类似,在用seq2seq做自然语言生成时,增加一个判断的环节,来决定接下来的这个词是从source来copy还是用decoder来rewrite。

Context-aware Natural Language Generation with Recurrent Neural Networks

【NLG】论文的方法、模型没有太多的值得说的地方,倒是应用的点非常有意思,根据商品的上下文来伪造评论,人工评判时有50%以上的伪造评论都通过了,90%以上骗过了现有的识别算法。有点道高一尺魔高一丈的感觉,如果这篇paper的结果确实这么牛的话,确实很有意思,值得研究一下。

MS MARCO: A Human Generated MAchine Reading COmprehension Dataset

【机器阅读理解】【数据福利】微软放出了一个100k规模的机器阅读理解数据集,数据来源于真实的Bing搜索query。数据包括:query、10个相关的passage和query对应的answer。

NewsQA: A Machine Comprehension Dataset

【机器阅读理解】【数据福利】Maluuba公司放出一个新的机器阅读理解的数据集,规模在100k左右,数据来源为CNN新闻。通过用多个之前表现比较好的NN模型和人工结果对比,发现F1指标存在25.3%的差距,说明本数据集需要更好的模型来进行研究。数据集已公开,地址是:http://datasets.maluuba.com/NewsQA

一周资源

中国人工智能学会通讯

《中国人工智能学会通讯》,本期为学会优秀博士论文专刊

C++ wrapper

TensorFlow使用swig作为C++ wrapper,最近Google又推出了pyclif,宣称“it’s much cleaner and easier”

智能时代的自然语言处理

今天ADL前沿讲习班《智能时代的自然语言处理》Zhengdong Lu的报告,题目Recent Progress on Deep Learning for NLP。

自然语言处理中深度学习活跃领域的课程讲义

本文是纽约大学助理教授 Sam Bowman 关于自然语言处理中深度学习活跃领域的课程讲义PPT。对深度学习NLP领域最近较为活跃的研究进行了综述,其中包括Attention 模型、结构化记忆、词水平以上的无监督学习等等。

PaperWeekly 第十六期

引言

本期PaperWeekly将带着大家来看一下ICLR 2017的六篇paper,其中包括当下非常火热的GAN在NLP中的应用,开放域聊天机器人如何生成更长更丰富的回答,如何用强化学习来构建树结构的神经网络和层次化的记忆网络等内容。六篇paper分别是:

1、A SELF-ATTENTIVE SENTENCE EMBEDDING
2、Adversarial Training Methods for Semi-Supervised Text Classification
3、GENERATING LONG AND DIVERSE RESPONSES WITH NEURAL CONVERSATION MODELS
4、Hierarchical Memory Networks
5、Mode Regularized Generative Adversarial Networks
6、Learning to compose words into sentences with reinforcement learning

A SELF-ATTENTIVE SENTENCE EMBEDDING

作者

Zhouhan Lin, Minwei Feng, Cicero Nogueira dos Santos, Mo Yu, Bing Xiang, Bowen Zhou & Yoshua Bengio

单位

IBM Watson
Universit´e de Montr´eal

关键词

self-attention, sentence embedding, author profiling, sentiment classification, textual entailment

文章来源

ICLR 2017

问题

本文提出一种在没有额外输入的情况下如何利用attention来提高模型表现的句子表示方法。

模型

本文提出的模型结构分为两部分,

  1. BLSTM
    这部分采用双向LSTM对输入的文本进行处理,最后得到BLSTM的所有隐层状态H。
  2. Self-attention mechanism
    同attention机制类似,我们需要计算一个权重向量a,然后通过对隐层状态H加权求和得到句子的表示向量。这个过程如下公式所示:
    equation1
    但是实际任务中,我们通常可能会对一个句子语义的多个方面感兴趣,因此我们可以通过下面的公式,获得多个权重向量组成的矩阵A。
    equation2
    然后每一个权重向量a都可以得到一个句子表示向量v,所有句子表示向量组合在一起就可以获得句子表示矩阵M。
    equation3
    本文的模型在author profiling, sentiment classification和textual entailment三个任务上进行验证,都取得了较好的效果。

资源

1、[Yelp]
(https://www.yelp.com/dataset challenge)
2、 [SNLI]
(http://nlp.stanford.edu/projects/snli/)

相关工作

A large annotated
corpus for learning natural language inference

简评

本文提出的self-attention方法用一个matrix表示一个句子,并且matrix中的每一个vector都是句子语义某一方面的表示,增强了sentence embedding的可解释性。

Adversarial Training Methods for Semi-Supervised Text Classification

作者

Takeru Miyato, Andrew M. Dai, Ian Goodfellow

单位

Google Brain, Kyoto University和OpenAI

关键词

Adversarial training, text classification, semi-supervised learning

文章来源

ICLR 2017

问题

Adversarial training和virtual adversarial training都需要对输入的数字形式做小的perturbation,不适用于高维稀疏输入,比如one-hot word representations。文章扩展图像领域流行的这两种方法到文本领域,对word embedding进行perturbation来作为LSTM的输入,取代原本的输入向量。可以把这两种方法看做是正则化的方法,为输入加入噪声,可以用来实现semi-supervised的任务。

模型

以adversarial training为例,文章对word embeddings进行adversarial perturbation,而不是直接应用在输入上。假设normalized之后的输入序列为s,给定s,y的条件概率为p(y|s;theta),其中theta为模型参数,则s上的adversarial perturbation r_adv为:
16-1

应用在LSTM上,如下图(b)所示。定义其adversarial loss如下:

adversaria

16-2

其中N为labeled的例子的数目。通过随机梯度下降来进行training。

文章也提供了virtual adversarial training的方法。

资源

1、IMDB
2、Elec
3、Rotten Tomatoes

相关工作

主要列三篇work:
1、2015年NIPS, SA-LSTM。Semi-supervised sequence learning
2、2015年NIPS,One-hot CNN。Semi-supervised convolutional neural networks for text categorization via region
embedding
3、2016年ICML,One-hot bi-LSTM。Supervised and semi-supervised text categorization using LSTM for region
embeddings

简评

作者将图像领域的adversarial training应用在了文本领域,改善了word embedding。传统的word embedding被语法结构影响,即使两个完全相反的词(比如”good”和”bad”)在表示形式上也是相近的,没有表示出词本身的意思。Adversarial training使得有相近语法结构但是不同意义的词能够被分开,可以用来做情感分类和sequence model等。

GENERATING LONG AND DIVERSE RESPONSES WITH NEURAL CONVERSATION MODELS

作者

Louis Shao, Stephan Gouws, Denny Britz, Anna Goldie, Brian Strope, Ray Kurzweil1

单位

Google Research, Google Brain

关键词

Long and Diverse Responses

文章来源

ICLR 2017

问题

开放域聊天机器人如何生成更长且较为丰富的回答?

模型

本文模型是基于经典的seq2seq+attention框架,在其基础上进行了若干修改,得到了满意的效果。不同于之前模型的地方有两点:

1、encoder不仅仅包括整个source,还包括一部分target,这样attention不仅仅考虑了source,而且考虑了部分target。

16-3

经典的seq2seq+attention在decoding部分会将source中的每个token都考虑到attention中来,之前有一种做法是将整个target部分也加入到attention中,效果上虽然有一定的提升,但随着数据规模地增加,内存代价太大。本文正是针对这一个问题,提出了所谓的“glimpse”模型,如上图所示,在encoder部分加入了target的前几个token,相当于是上面两种方案的一种折中。

2、提出了一种基于sampling的beam search decoding方案。

经典的beam search在decoding部分,是基于MAP(最大后验概率)进行贪婪解码的,这种方案生成的responses具有简短、无信息量以及高频的特点,通俗地讲会生成很多的类似“呵呵”的话,没有太多营养和价值。(Jiwei Li,2015)在解决这个问题时,在decoding部分通过MMI(互信息)对N-best结果进行重排序,这种方法对于生成短文本效果显著,但对于生成长文本效果不佳。因为,基于MAP的beam search天然存在这样的问题,N-best和重排序都解决不了根本性的问题。针对这一问题,本文提出了一种基于sampling的beam search解码方案,sampling即在每一步解码时都sample出D个token作为候选,搜索完毕或达到预设的长度之后,生成B个候选responses,然后进行重排序。

本文的另外一大亮点是用了大量的对话数据,用了很大规模参数的模型进行了实验。实验评价标准,在自动评价这部分,设计了一个N选1的实验,给定一个输入,将正确输出和错误输出混在一起,模型需要从中选择正确的输出,用选择准确率来作为自动评价指标。本文没有用到经典的BLEU指标,因为这个指标确实不适合评价对话的生成质量。为了更有说服力,本文用人工对结果进行评价。

资源

本文用到的对话数据:
1、Reddit Data
2、2009 Open Subtitles data
3、Stack Exchange data
4、本文作者从Web抽取的对话数据(待公开)

相关工作

用seq2seq方法研究生成对话的质量(包括长度、多样性)的工作并不多,具有代表性的有下面两个工作:
1、Wu,2016 提出了用length-normalization的方案来生成更长的对话
2、Jiwei Li,2015 提出了在解码阶段用MMI(互信息)对N-best结果进行重排序,旨在获得信息量更大的对话。

简评

本文模型部分并没有太多的创新,因为是工业部门的paper,所以更多的是考虑实用性,即能否在大规模数据集上应用该模型,集中体现在glimpse模型上。为了生成更加长、更加多样性的对话,在原有beam search + 重排序的基础上,引入了sampling机制,给生成过程增加了更多的可能性,也是工程上的trick。对话效果的评价是一件很难的事情,人类希望bot可以生成类人的对话,回复的长度可以定量描述,但多样性、生动性、拟人化等等都难以定量描述,所以在探索生成对话的这个方向上还有很长的路要走。

Hierarchical Memory Networks

作者

Sarath Chandar, Sungjin Ahn, Hugo Larochelle, Pascal Vincent, Gerald Tesauro, Yoshua Bengio

单位

1、Université de Montréal, Canada.
2、Twitter Cortex, USA.
3、IBM Watson Research Center, USA.
4、CIFAR, Canada.

关键词

Hierarchical Memory Networks,Maximum Inner Product Search (MIPS)

文章来源

ICLR 2017

问题

记忆网络主要包括hard attention和soft attenion两种,然而hard不能用于反向传播算法进行端到端训练,所以只能使用强化学习的方法进行训练;soft所涉及的计算参数又很大,只适合于少量Memory。本文提出Hierarchical Memory Networks(HMN)模型,算是soft和hard的一个混合模型,计算量减少且训练更加容易,
实验结果也很好。

模型

soft attention是对所有的memory都要进行attention的计算,对全集计算使计算量很大。HMN利用层次化结构使得attention的集合缩小,利用MaximumInner Product Search(MIPS)的方法从全集中获得一个最优子集,在子集上面去做attention就大大降低计算量。这样的方式又和hard attention预测关注点的方法有些类似,将注意力放在最相关的那部分,这个的做法也更接近于人的注意力思维。 文章的核心部分在于如何获取与query最相近的子集。

主实验主要包括两个:
1、Exact K-MIPS:计算复杂度依然和soft attention差不多。
2、Approximate K-MIPS:利用Maximum Cosine Similarity Search(MCSS)的方法代替MIPS的方法,牺牲一些精确度,降低复杂度和加快训练速度。

MIPS有三种方法,分别是基于hash,基于tree,基于clustering,基于上述三种方法文中又做了几组组对比实验,最后实验结果显示基于clustering的效果是最好的。

文章得到的实验结果如下:
HMN_Result

资源 (可选)

1、The SimpleQuestions dataset(使用的是Large-scale simple question answering with memory networks文章中的数据集)
2、babi

相关工作

1、arXiv 2014, soft attention,《Neural turing machines》
2、CoRR 2015, hard attention,《Reinforcement learning neural turing machine》
3、ICLR 2015, memory network,《Memory networks》
4、arXiv 2015,《End-to-end memory networks》,引入半监督记忆网络可以自学所需要的facts。
5、CoRR 2016, DMN, 《Dynamic memory networks for visual and textual question
answering》,增加了一个episodic memory 使得可以动态更新memory里面的内容。

简评

文章的创新主要在于修改了两个模块:Memory和Reader。
1、将memory的结构从a flat of array变成了hierarchical memory structure。将memory分成若干groups,这些groups又可以在进行更高级别的组合。
2、reader是从MIPS选出的子集中使用soft attention。MIPS从memory中选出一
个group子集作为最相关的子集。

Mode Regularized Generative Adversarial Networks

作者

Tong Che; Yanran Li

单位

Montreal Institute for Learning Algorithms;
Department of Computing, The Hong Kong Polytechnic University

关键词

GAN, Regularizers

文章来源

ICLR 2017

问题

本文针对的问题是:1、GAN 的训练过程很不稳定 2、GAN 生成的样本局限于训练样本中的大 model 上,不能平衡数据的分布(missing model problem)。
两个问题互相影响,导致训练结果不好。

模型

针对上面的问题,作者提出了两种 regularizers 去控制 GAN 的训练过程。
第一个 regularizer 也被作者称为 Regularized-GAN。作者认为可以从 generator 入手,给 generator 增加 regularizer,使得其具有更好的 gradient ,这样 G 和 D 都能稳定训练。
具体的方法是增加一个 encoder E(x) : X → Z.即把原先的 noise vector z 改为 z = encoder(X) ,即然后再 G(encoder(X))。如下图:
16-5

这样做有两个好处。第一,原始的模型很容易出现梯度消失的情况,因为 discriminator D 特别容易区分真实数据和生成数据导致 generator 就得不到 D 的梯度。作者的模型多了一个 reconstruction 的部分,这样生成出来数据不再那样容易被 D 识别出来。所以 D 和 G 就都能一直有 gradient 去训练,从而提高稳定性。第二,对于 x ,G(E(x)) 会尽量去生成 x 原本所属的类,从而一定程度解决了 missing model problem。
第二个 regularizer 基于第一个 regularizer 旨在改进训练的方法,也被作者称为 manifold-diffusion GAN。分为两步,第一步 manifold step 训练 discriminator D1 ,目的是减少 G(Enc(X)) 和 X 的的差别;第二步 diffusion 就是训练 D2 让 G(Enc(X)) 和 G(z) 分布的距离接近。如下图:

16-6

最后,作者把 GAN 的网络训练坍塌的情况考虑进去,提出了新的 evaluation metric。

相关工作

本篇文章的作者李嫣然写过一篇非常棒的综述 ,在这里就不累赘阐述了。

简评

当下 GAN 的研究非常火爆,出现了许许多多对 GAN 的改进,本篇文章的提出的两种 regularizers 非常有效的提高了 GAN 的稳定性(其中 regularizer 的思想也受到了监督学习的启发),值得对 GAN 感兴趣的同学研读。

完成人信息

professorshui@gmail.com

Learning to compose words into sentences with reinforcement learning

作者

Dani Yogatama, Phil Blunsom, Chris Dyer, Edward Grefenstette, Wang Ling

单位

Google

关键词

Tree-LSTM, Reinforcement Learning

文章来源

ICLR 2017

问题

使用强化学习来构建树结构的神经网络Tree-LSTM,学习自然语言的句子表示

模型

模型分为两部分:Tree-LSTM和强化学习模型
应用Tree-LSTM(可以通过LSTM的忘记门机制,跳过整棵对结果影响不大的子树),并结合{SHIFT,REDUCE}操作,SHIFT操作对应将一个节点压入栈,REDUCE对应将两个元素组合,从而建立树结构

强化学习用来寻找最佳的节点组合情况,RL模型中的状态s即当前构建的树结构,a为{SHIFT,REDUCE}操作,reward对应不同downstream
task(例:若是用该句子表示进行分类任务,则r对应从策略网络中采样得到句子表示的分类准确性的概率)

资源

作者将该工作进行了四组实验,情感分类,语义相关性判断,自然语言推理,句子生成
分别应用Stanford Sentiment Treebank,Sentences Involving Compositional Knowledge corpus,Stanford Natural Language Inference corpus,IMDB movie review corpus

相关工作

与Socher等人之前提出的Recursive NN,MV-RNN,RNTN,Tree-LSTM等工作一脉相承,本文又加入了RL方式构建树形结构

简评

将强化学习引入句子表示学习之中,学习构建树的不同方式,从左向右,从右向左,双向,有监督、半监督、预先无结构等方式去构建树结构,但是训练时间较长,在几个任务上效果提升不是特别明显。

总结

GAN是当下的研究热点之一,在图像领域中研究较多,本期的两篇paper探讨了GAN在NLP中的应用,值得关注和期待。最后感谢@destinwang、@gcyydxf、@chunhualiu、@tonya、@suhui和@zhangjun六位童鞋的辛勤工作。

中文分词工具测评

引言

分词对于研究和应用中文自然语言处理的童鞋来说,都是一个非常非常基础的部件,分词的质量直接影响到后续词性标注、命名实体识别、句法分析等部件的准确性。作为一个基础部件,学术界对分词的研究已经非常久了,市面上流行的几大开源分词工具也被工业界的各大公司应用很多年了。最近,中文分词随着一篇博文的发表被推到了风口浪尖,引发众多大牛在微博、微信群里的激烈讨论。本文并不想对这篇博文进行过多评论,只是想用公开的数据集对各大分词工具进行一个客观地测评,以供大家在选择工具时有所依据。

中文分词工具

本文选择了4个常见的分词工具,分别是:哈工大LTP、中科院计算所NLPIR、清华大学THULAC和jieba,为了对比分词速度,选择了这四个工具的c++版本进行评测。

1、LTP https://github.com/HIT-SCIR/ltp
2、NLPIR https://github.com/NLPIR-team/NLPIR
3、THULAC https://github.com/thunlp/THULAC
4、jieba https://github.com/yanyiwu/cppjieba

测试数据集

1、SIGHAN Bakeoff 2005 MSR, 560KB http://sighan.cs.uchicago.edu/bakeoff2005/
2、SIGHAN Bakeoff 2005 PKU, 510KB http://sighan.cs.uchicago.edu/bakeoff2005/
3、人民日报 2014, 65MB https://pan.baidu.com/s/1hq3KKXe

前两个数据集是SIGHAN于2005年组织的中文分词比赛所用的数据集,也是学术界测试分词工具的标准数据集,本文用于测试各大分词工具的准确性,而最后一个数据集规模较大,用于测试分词速度。

测试方法

用SIGHAN Bakeoff 2005比赛中所自带的score脚本、test gold数据和training words数据对4个工具进行准确性测试,具体使用方法可参考:http://sighan.cs.uchicago.edu/bakeoff2005/data/icwb2-data.zip 中的readme文件。

测试硬件

Intel Core i7-6700 CPU@3.40GHz*8

测试结果

1、MSR测试结果
1

2、PKU测试结果
2

3、人民日报测试结果
3

测试结论

1、一个好的分词工具不应该只能在一个数据集上得到不错的指标,而应该在各个数据集都有很不错的表现。从这一点来看,thulac和ltp都表现非常不错。

2、因为分词是个基础部件,分词速度对于一个分词工具来说也至关重要。从这一点来看,thulac和jieba表现的不错。

3、大家都知道,基本的分词依赖模型,但真正想用分词工具来解决应用层面上的问题,都需要借助于词库,本文测试的4个工具均支持用户自定义词库。

4、特别需要强调的一点是,哈工大的ltp支持分词模型的在线训练,即在系统自带模型的基础上可以不断地增加训练数据,来得到更加丰富、更加个性化的分词模型。

总结

争论是一个好的事情,尤其是不同背景的人站在不同的角度对同一个事情进行争论,常常会碰撞出知识的火花,对于这个领域的发展有更好地推动作用。希望类似的争论可以多一些,让刚刚入门的或者准备入门的童鞋可以更加客观地看到一个领域的发展现状,而不是盲目地被一些热门的词蒙蔽双眼,失去判断。对于分词来说,最近几年大热的深度学习模型,并不会比之前传统的crf模型有多大性能上的突破,所以大家应该理性地看待深度学习以及人工智能,捧得越高可能摔得越惨。

参考文献

1、Zhongguo Li, Maosong Sun. Punctuation as Implicit Annotations for Chinese Word Segmentation. Computational Linguistics, vol. 35, no. 4, pp. 505-512, 2009.
2、Meishan Zhang, Yue Zhang, Guohong Fu. Transition-Based Neural Word Segmentation
http://www.aclweb.org/anthology/P/P16/P16-1040.pdf
3、Meishan Zhang, Zhilong Deng,Wanxiang Che, and Ting Liu. Combining Statistical Model and Dictionary for Domain Adaption of Chinese Word Segmentation. Journal of Chinese Information Processing. 2012, 26 (2) : 8-12 (in Chinese)
4、Wanxiang Che, Zhenghua Li, and Ting Liu. LTP: A Chinese Language Technology Platform. In Proceedings of the Coling 2010:Demonstrations. 2010.08, pp13-16, Beijing, China.

本周值得读(2016.11.21-2016.11.25)

一周值得读

Generative Deep Neural Networks for Dialogue: A Short Review

【对话系统】本文对seq2seq方法在对话系统中的应用做了一个简短的对比和综述,主要是针对几位作者提出的三种深度学习模型:HRED、VHRED和MrRNN,实验数据用了Ubuntu Dialogue Corpus和Twitter Corpus。不管是用seq2seq生成也好,还是套用模板也罢,对话系统的难点仍是上下文的理解和如何输出一些高质量的对话,有些应用场景对response的要求没那么高,只要可以达到一定实际效果即可,而有的则需要生成更加接近人类的对话。本文适合研究深度seq2seq的童鞋以及想看看各种seq2seq效果如何的童鞋来读。本文总结的三个模型原文链接:

(a) MrRNN: https://arxiv.org/pdf/1606.00776.pdf
(b) VHRED: https://arxiv.org/pdf/1605.06069v3.pdf
(c) HRED: https://arxiv.org/pdf/1507.04808v3.pdf

Coherent Dialogue with Attention-based Language Models

【对话系统】考虑并理解上下文是Chatbot的一大难点,也是目前绝大多数chatbot不智能的主要原因之一。本文提出了一种动态的attention模型,在理解用户请求的时候,动态地考虑历史信息。本文用到了两个开放数据集,分别是MovieTriples和Ubuntu Troubleshoot dataset。建议对chatbot感兴趣的同学可以精读此文。

Visualizing and Understanding Curriculum Learning for Long Short-Term Memory Networks

【课程学习】Curriculum Learning是一类模拟小孩子学习过程的学习算法,简单地说是指在训练模型是从简单的样本开始,逐渐增加学习样本的难度。本文以情感分析为研究对象,对Curriculum Learning如何提升LSTM模型在情感分析任务上的效果进行了实验研究,并给出了可视化的结果。本文适合研究Curriculum Learning的童鞋以及在训练模型中想尝试下Curriculum Learning思路的童鞋研读。

Variable Computation in Recurrent Neural Networks

【RNN研究】RNN在解决序列建模问题有着天然的优势,但有些序列数据存在周期性的变化,或者短时间内变化并不明显,比如视频数据,因此固定不变的RNN训练方案会浪费计算资源,本文针对这一问题,提出了一种RNN变计算训练方案,即在计算下一个time step的hidden state时,不需要上一个time step所有的维度,只取一部分来计算,其他的维度复制过来即可。这篇工作的相关的前人研究包括:2014年的A Clockwork RNN,链接如下:https://arxiv.org/pdf/1402.3511.pdf

Learning to Distill: The Essence Vector Modeling Framework

【表示学习】本文研究的内容包括两个点,一个是无监督学习,一个是文档表示。词表示、句子表示都有比较多的解决方案,但实际应用中文档级别的表示非常重要,比如情感分析、文本摘要等任务。本文提出了一种无监督的方法对文档以及背后所蕴藏的背景知识进行低维表示。自然语言随着元素级别地提升(从字、词、短语、句子到文档),研究的难度随之增加,实用程度随之减少。建议想从无监督学习方法有所突破以及想试试文档表示的童鞋可以来读本文。

Unsupervised Learning of Sentence Representations using Convolutional Neural Networks

【句子表示】本文的贡献在于提出了一种新的CNN-LSTM auto-encoder,作为一种无监督的句子学习模型。

Emergent Logical Structure in Vector Representations of Neural Readers

【问答系统】针对最近提出的各种各样的attention based reader models,本文作者做了一个比较全面的总结和分析,并且通过数学分析和实验展示了模型之间的相关性。PaperWeekly第十四期的文章有相关的paper note可以参考地址

公益广告

美国国立卫生研究院招博士后,研究领域包括:NLP、text mining和machine learning,感兴趣的童鞋可以看过来,详情请戳这里

PaperWeekly 第十五期

引言

NMT是热门研究领域之一,尤其是Google和百度都推出了自己的NMT翻译系统,在工业界、学术界和翻译界都引起了轩然大波,一时间对NMT技术的研究和讨论达到了顶峰。Attention模型在NLP中最早的使用正是在NMT领域出现的,包括横扫很多领域的seq2seq+attention解决方案,都是在NMT模型的基础上进行相应的一些小改动而成的。所以,本期PaperWeekly带大家看一看最近两年Attention模型在NMT领域中的研究进展,本文包括以下paper:

1、Neural Machine Translation by Jointly Learning to Align and Translate, 2015
2、Effective approaches to attention-based neural machine translation, 2015
3、Modeling Coverage for Neural Machine Translation, 2016
4、Agreement-based Joint Training for Bidirectional Attention-based Neural Machine Translation, 2016
5、Improving Attention Modeling with Implicit Distortion and Fertility for Machine Translation, 2016

Neural Machine Translation by Jointly Learning to Align and Translate

作者

Dzmitry Bahdanau, KyungHyun Cho and Yoshua Bengio

单位

Jacobs University Bremen, Germany

Universite ́ de Montre ́al

关键词

NMT, attention

文章来源

ICLR 2015

问题

这篇论文首次提出在NMT中使用attention的机制,可以使模型自动确定源句子中和目标词语最相关的部分,相比于基本的encoder-decoder方法提高了翻译效果。

模型

该论文使用的基本模型是一个双向RNN的encoder-decoder的结构。在这篇论文之前,encoder部分都是直接把输入句子encode成一个固定长度的上下文向量c,然后decoder再根据该向量来产生翻译。但是由于句子长度不定,这种做法对长句子的效果不理想。
mode

上图是这篇论文提出的模型结构,作者首次提出了在decoder中加入一种attention的机制。直观上理解,就是decoder可以决定更多地注意原句子中的某些部分,从而不必把原句子中的所有信息都encode成一个固定的向量。具体来讲,上下文向量ci由下式计算得出:
ci

其中,
aij

其中,
eij

上式中的a便是alignment model,可以用来估计位置j附近的输入和位置i的输出之间的匹配程度。本论文中的alignment model是一个前馈神经网络,它和模型中的其它部分一起进行训练。

资源

1、英法翻译数据集 ACL WMT ’14

2、一个基本的RNN encoder-decoder模型的实现 GroundHog

相关工作

1、2013年,一个类似的aligning的方法被提出用于手写体生成。论文:Graves(2013) Generating sequences with recurrent neural networks
2、2014年,seq2seq的神经网络模型用于机器翻译。论文:Sutskever(2014) Sequence to sequence learning with neural networks

简评

本论文创新性地在NMT中提出了attention的机制,可以使模型在每一步注意到源句子中不同的部分,从而提高了NMT的效果,该效果的提升对于长句子的翻译尤其明显。

Effective approaches to attention-based neural machine translation

作者

Minh-Thang Luong, Hieu Pham, Christopher D. Manning

单位

Computer Science Department, Stanford University

关键词

NMT;Global Attention;Local Attention

文章来源

EMNLP 2015

问题

Attention机制引入极大提升了NMT的翻译质量,但对于Attention实现架构的讨论还很少,尤其是全局Attention的计算效率问题。本文就是讨论各种优化策略,包括Global Attention, Local Attention,Input-feeding方法等。

模型

Global Attenion,生成上下文向量c_t时,考虑原文编码过程中的所有隐状态。
1GlobalAttention

Local Attention,对于每个正在生成的译词,预测一个原文对齐的位置,只考虑该位置前后一个窗口范围内的原文编码隐状态。

2LocalAttention

Input-feeding,用一个额外的向量,来记住哪些词是已经翻译过的,即考虑了coverage的问题。

3Input-Feeding

资源

1、训练数据:WMT14 (4.5M句对,116M 英文词,110M德文词)
2、开发集:newstest2013 (3000句)
3、测试集:newstest2014(2737句)和newstest2015(2169句)
4、代码和模型共享在:http://nlp.stanford.edu/projects/nmt/

相关工作

主要是follow了(Bahdanau et al., 2015; Jean et al., 2015)的工作,对Attention的机制进行了探讨和改进。

简评

English-German的实验结果,较不用attention的方法提升了5个多点BLEU,充分证明了attention的有效性。
实验结果的表格详细列出了各种改进方法带来的收益,跟进者不妨仔细看看(以及第5节的分析),可以很快了解各种折腾的方向。

4ExperimentResult

完成人信息

微博 @MyGod9,语智云帆创始人,机器翻译老兵,NMT追随者,weiyongpeng@lingosail.com

Modeling Coverage for Neural Machine Translation

作者

Zhaopeng Tu, Zhengdong Lu, Yang Liu, Xiaohua Liu, Hang Li

单位

诺亚方舟实验室,清华大学

关键词

NMT

文章来源

ACL2016

问题

解决经典神经机器翻译模型中存在的over-translation(过度翻译)和under-translation(翻译不足)的问题。

模型

在传统NMT模型中,加入统计机器翻译策略中的coverage方法,来追踪、判断原始句子是否被翻译,如下图、公式所示。
pi
pi
pi
其中,C为新引入的coverage向量。

相关工作

前序文章:Neural Machine Translation by Jointly Learning to Align and Translate

简评

该文是基于Neural Machine Translation by Jointly Learning to Align and Translate之上的工作,引入了统计机器翻译中的Coverage方法来尝试避免NMT中的一些问题。根据文章的试验结果,这种方法能够提升翻译效果。由于写作此文时笔者未作实验,因此实际效果有待进一步衡量。

Agreement-based Joint Training for Bidirectional Attention-based Neural Machine Translation

作者

Yong Cheng, Shiqi Shen, Zhongjun He, Wei He, Hua Wu, Maosong Sun, Yang Liu

单位

Tsinghua University

关键词

Bidirectional NMT; Attention

文章来源

IJCAI 2016

问题

由于自然语言错综复杂的结构,单向的注意力模型只能引入注意力机制的部分regulization。文章提出了联合训练双向的注意力模型,尽可能使注意力在两个方向上保持一致。

模型

模型的中心思想就是对于相同的training data,使source-to-target和target-to-source两个模型在alignment matrices上保持一致。这样能够去掉一些注意力噪声,使注意力更加集中、准确。更确切地说,作者引入了一个新的目标函数:

1

其中
2表示source-to-target基于注意力的翻译模型,而3表示target-to-source的模型。4表示对于句子s source-to-target的alignment matrix,而5表示target-to-source的。6是损失函数,可以衡量两个alignment matrix之间的disagree程度。

对于6,有几种不同的定义方法:
1、Square of addition(SOA)
7

2、Square of subtraction(SOS)
9

3、Multiplication(MUL)
10

相关工作

作者文中说的是bidirectional translation的alignment matrices要一致;还有另外一篇文章“Agreement on Target-bidirectional Neural Machine Translation”是说decoding的时候可以正向或者反向产生目标句子,把这二者进行联合训练。另外,最近也有很多关于bidirectional training或者类似思想的文章,比如“Dual Learning for Machine Translation. Computation and Language”将reinforcement的概念引入了bidirectional training当中,“Neural Machine Translation with Reconstruction” 希望能从target hidden state恢复出source sentence

简评

这篇文章胜在idea,很巧妙地想到了让正反向的注意力一致来改进attention。

Improving Attention Modeling with Implicit Distortion and Fertility for Machine Translation

作者

Shi Feng, Shujie Liu, Nan Yang, Mu Li, Ming Zhou, Kenny Q.Zhu

单位

Shanghai Jiao Tong University, Microsoft Research

关键词

NMT, Attention, Fertility, Distortion

文章来源

COLING 2016

问题

使用attention机制解决NMT中调序和繁衍率的问题。

模型

模型非常简单,即在attention机制中将前一时刻的context vector c作为输入传入当前时刻attention中(命名为RecAtt)。如图:

coling

通过这样的RecAtt机制,attention部分的网络相当于记忆了之前时刻的context。

相关工作

ACL 2016李航老师组的工作 Modeling Coverage for Neural Machine Translation利用了attention机制来解决了NMT中“欠翻译”和“过翻译”的问题。

简评

该文章的创新之处在于提出将attention计算得到的context vector c作为attention的输入,这样就是的attention机制带有一种recurrent的意味。

总结

本期PaperWeekly精选了5篇Attention模型在NMT任务上的研究工作,Attention模型的发展不仅仅推动着NMT的进步,同时也可以借鉴于其他的任务中,比如QA,比如chatbot。感谢@MyGod9 @雨神 @susie-nmt @李争 @magic282 五位童鞋的辛勤付出。

悉尼科技大学博士后招聘信息

Hi, I am recruiting a Postdoc in Machine Learning for two (2) years. In brief, the candidate should:

1 Hold a PhD in machine learning and have a good research track record.

2 Have a genuine interest in mathematical modeling.

3 Good communication skills and is willing to help PhD students resolving their mathematical issues.

4 Excellent in programming and experimentation.

The candidate will work with Dr Richard Xu (Yida.Xu@uts.edu.au), where his team’s recent research themes include: Bayesian Non-Parametric (BNP), Monte-Carlo inference, Matrix (and Tensor) factorization and Deep Learning. The application areas include both computer vision and document. There is no strict requirement that the candidate must align his/her research exactly to Richard’s existing work, i.e., the candidate can continue to work in his/her established field as long as the group benefit from his/her presence.

Please contact Richard to obtain further information, and remember to check out his website:

http://www-staff.it.uts.edu.au/~ydxu/

cs.CL weekly 2016.11.14-2016.11.18

一周值得读

UTCNN: a Deep Learning Model of Stance Classificationon on Social Media Text

【文本分类】【社交网络】社交网络中蕴藏着大量的非结构化的文本,对社交网络的挖掘也是一块重要的研究内容。本文研究内容为立场分类,创新之处在于做分类时不仅仅考虑该文本信息本身,而且考虑了与该文本相关的评论、反馈、用户信息、话题等各种文本信息。模型部分没有太多的新意,是经典的CNN。本文适合做社交网络文本挖掘的童鞋来读。

A Way out of the Odyssey: Analyzing and Combining Recent Insights for LSTMs

【文本分类】RNN及其扩展LSTM在文本分类中得到了广泛的应用,本文探究了多种LSTM的小变种对分类结果的影响,一些小改变对结果还是有一定影响的。本文适合工程上用LSTM解决文本分类问题的童鞋精读。

Linguistically Regularized LSTMs for Sentiment Classification

【情感分析】本文最大的亮点在于将语言学资源,比如情感词典,否定词,表示程度的词等等以约束条件的形式融入到了现有的句子级别的LSTM分类模型中,取得了不错的效果。深度学习火起来之后,大家都推崇数据驱动的模型,希望找到一种简单粗糙的解决方案,而忽视了经典的自然语言资源和语言学的知识。经典的这些资源都是非常宝贵的东西,如何将这些知识融入到现有的深度学习模型中,是个很难但却非常有意义的事情,本文在句子级别的情感分类任务中做了相关的探索。推荐研究情感分析的童鞋精读。

Google’s Multilingual Neural Machine Translation System: Enabling Zero-Shot Translation

【机器翻译】Google NMT系统支持Zero-Shot翻译,从训练集充足的A->B,B->C两个翻译模型中可以推出一个质量不错的A->C模型,A和C并不需要很充足的训练集。

Zero-resource Machine Translation by Multimodal Encoder-decoder Network with Multimedia Pivot

【多模态】【机器翻译】现在的人工智能还达不到很高的智能水平,但是处理或者理解一些稍微初级的东西可能还行,比如3岁孩子的故事之类的。之前萌生一个想法,能不能针对小孩学习,比如学习英语,传统的方法可能是给一句中文,教一句英语,感觉用到的信息量还是少,能不能一边看图,一边学习英语,相当于用到了图像这个信息,孩子在学习的过程中会多一些信息维度,学习效果可能会更好一些。本文正是做了这么一件事情,借助图像作为机器翻译的桥梁。

Neural Machine Translation with Pivot Languages

【机器翻译】很多语言的机器翻译都面临着一个语言对数据集匮乏的问题,一个比较直观的思路是,用一种常见的语言作为“桥梁”,连接起两种语言对数据集匮乏的语言。昨天Google的zero-shot也正是这么一种思路,本文也在这方面进行了研究工作,即想做A->C的翻译,需要拿一个热门语言B作为桥梁,构造一个A->B,B->C的联合训练模型,本文用英语作为B,用德语、法语、西班牙语分别作为A和C进行了两组实验,验证了模型的有效性。这种“串行”seq2seq的思路,其实可以尝试一些其他的任务,做一些seq2seq2seq…的模型出来。

Joint Representation Learning of Text and Knowledge for Knowledge Graph Completion

【知识表示】“联合学习”是个热门词,“联合学习”可以避免一些语言分析过程(比如:句法依存分析)带来的误差。本文在学习词、实体和关系表示时同时用到了text和知识图谱信息,得到了不错的效果。

Multi-lingual Knowledge Graph Embeddings for Cross-lingual Knowledge Alignment

【知识图谱】一个新模型来填坑,Trans系列的新成员——MTransE

End-to-End Neural Sentence Ordering Using Pointer Network

【句子排序】【文本摘要】句子排序是一项重要的基本工作,尤其是在做单文档和多文档文本抽取式摘要时显得特别重要。经典的排序方法几乎都是考虑单个句子所包含的信息进行排序,忽略了句子的上下文信息。本文工作借鉴了Pointer Network的思路,提出了一种端到端排序模型,在排序时考虑句子的上下文。通过两组实验验证了本文算法的有效性。机器翻译中的seq2seq+attention已经成功的应用在了很多任务上,但针对具体任务不同的特点进行针对性地修正会带来比较理想的结果。建议研究文本摘要的童鞋读本文。

The Amazing Mysteries of the Gutter: Drawing Inferences Between Panels in Comic Book Narratives

【问答系统】基于上下文的问答已经有很多数据集了,基于图像的问答也有一些数据集了。漫画是一类大家小时候都喜欢的读物,包含了丰富的图像和文本数据(对话)。本文给出了一个大型数据集,包括了丰富的图像和文本,规模在120万(120GB)左右。数据给出了几个任务,基于图像的问答任务,基于对话文本的问答任务和文本排序任务。对问答感兴趣,想找一些新数据来刷一刷榜的童鞋可以看过来。

一周资源

Highlights of EMNLP 2016: Dialogue, deep learning, and more

NLP技术服务公司Aylien写的EMNLP 2016总结

一句话公益广告

悉尼科技大学Dr Richard Xu招机器学习博士后,感兴趣的童鞋看过来。具体信息请点阅读原文查看链接

PaperWeekly 第十四期

引言

PaperWeekly已经介绍过不少Question Answering的相关工作。主要有DeepMind Attentive Reader,FAIR Memory Networks,Danqi’s Stanford Reader, Attention Sum Reader, Gated Attention Sum Reader, Attention Over Attention Reader, etc. 这些模型关联性很大,或多或少存在相似之处。本文给大家介绍一下Toyota Technological Institute at Chicago (TTIC)在Question Answering方面的相关工作,共有3篇paper:

1、Who did What: A Large-Scale Person-Centered Cloze Dataset, 2016
2、Broad Context Language Modeling as Reading Comprehension, 2016
3、Emergent Logical Structure in Vector Representations of Neural Readers, 2016

Who did What: A Large-Scale Person-Centered Cloze Dataset

作者

Takeshi Onishi, Hai Wang, Mohit Bansal, Kevin Gimpel, David McAllester

文章来源

EMNLP 2016

问题

文章构建了一个新的Question Answering dataset,”Who did What”。

sample instance如下图所示。
example

问题的句子总是挖掉了一些named entities,然后给出在文中出现过的别的named entities作为选项。这一个dataset的难度要高于之前的CNN/DM dataset,可以作为创建新模型的参考数据集。

模型

构建此数据集的方法与CNN/DM不同,问题并不是context passge的一个summary。问题与context均来自Gigaword Corpus,他们是两篇非常相关的文章。

具体来说,我们先找到一篇文章,作为question文章。然后提取出文中第一句话的named entities,删除其中的一个named entity作为将要被预测的答案。然后利用这一句question sentence,我们可以利用一些Information Retrieval系统从Gigaword Corpus找到一篇相关的文章作为passage。这篇文章与question文章不同,但是包含着与question sentence非常类似的信息。

有了passage之后,我们再从passage中找出named entities作为candidate answers。

为了使任务难度更大,我们用一些简单的baseline (First person in passage, etc) 将一些很容易做出的问题删掉,只留下比较困难的instances。这样构建的数据比CNN/DM会困难不少。

简评

相信作者创建的新数据集会给Machine comprehension带来一些新的问题与挑战,是很有价值的资源。文章采用的baseline suppresion方法可以用比较小的代价加大问题的难度,值得参考。

Broad Context Language Modeling as Reading Comprehension

作者

Zewei Chu, Hai Wang, Kevin Gimpel, David McAllester

文章来源

arXiv

问题

不久前发布的LAMBADA dataset中,作者尝试的各种baseline models都给出了比较差的结果。

每一个LAMBADA instance如下图所示。

LAMBADA

模型

在观察了LAMBADA dataset之后,我们认为可以利用Reading comprehension models来提升准确率,而不必使用传统的language model。

由于state of the art reading comprehension models需要给出candidate answers,然后从中选出一个作为预测的答案,我们就将所有在context中出现过的单词都作为一个candidate answer。

LAMBADA给出的训练集是一些小说的文本。为了使训练集与测试集的数据类型保持一致,我们构建了一个biased training set。具体的做法是,我们将training set划分成4-5句话的context,然后保证target word在context passage中出现,只保留这样的训练数据。我们在新构建的training set上训练各种attention based models,得到了比原作者好得多的测试结果。

zewei-results

简评

这篇文章中,作者利用了简单的方法和模型将LAMBADA dataset的准确率从7.3%提高到45.4%,非常简单有效。

Emergent Logical Structure in Vector Representations of Neural Readers

作者

Hai Wang, Takeshi Onishi, Kevin Gimpel, David McAllester

文章来源

ICLR 2017 Submission

问题

最近提出的各种各样的attention based reader models,本文作者做了一个比较全面的总结和分析,并且通过数学分析和实验展示了模型之间的相关性。

模型

本文作者认为,当前的attention based models可以分为两类,aggregation readers(包括attentive readers和stanford readers)以及explicit reference readers(包括attention sum reader和gated attention sum reader)。

这两种reader可以用如下的公式联系在一起。

formula1

要满足上述等式,只需要满足下面的公式。

formula2

也就是说,只有正确答案所在的hidden vector和question vector得到的inner product才能给出不为零的常数。以下实验结论支持了这一假设。

experiment

由于CNN/DM在训练和测试中经过了anonymization,作者认为此inner product其实可以分为两部分,一部分与anonymized token ID有关,另一部分与ID无关。与ID相关的那一部分在inner product应该直接给出0的答案。如下述公式所示。

formula3

本文的另一部分工作是在attention readers上加入一些linguistic features提升各个数据集的准确读,这里不仔细描述。

简评

本文是对于各个attetion based neural reader models很好的总结,它很好地连接了各个不同的model,说明了为何看似不同的model能够给出非常类似的结果。

总结

问答系统是一类大的问题,也是目前NLP应用的研究热点之一。本文作者介绍了TTIC在QA研究中的一些成果,其中第二篇是本文作者近期的paper。感谢来自芝加哥大学的@ZeweiChu童鞋辛勤的劳动。

公益广告

清华大学计算机系自然语言处理实验室招聘博士后

将从事的研究方向

围绕自然语言处理、语义分析、统计机器翻译或社会计算开展深入的研究工作。实验室具体信息见:http://nlp.csai.tsinghua.edu.cn

应聘条件

1、具有计算机科学技术或相关学科博士学位(博士毕业两年内);
2、熟悉自然语言处理或机器学习的基本理论、模型与算法,曾在国内外重要学术刊物或重要国际会议(CCF A类)上发表(含已录用)高水平学术论文;
3、在句法分析、语义分析方面有较好研究基础者优先;
4、具有较强的编程能力及项目研发能力;
5、责任心强,具有较好的团队合作精神和创新意识,英语阅读及写作能力较强;
6、符合清华大学博士后招收条件。

工资待遇

享受清华大学博士后待遇及课题组津贴。全力支持申请国家自然科学基金、全国博士后管委会、北京市、清华大学的相关研究计划。

申请材料

1、个人简历、学位证书及成绩单复印件;
2、最具代表性的论文2篇;
3、博士后期间研究设想(简明扼要);
4、其它任何支持材料。

导师及联系方式

合作导师:孙茂松教授、刘知远助理教授
联系人:刘知远
电子邮件: liuzy@tsinghua.edu.cn

有意者请将申请材料发至电子邮箱,请在邮件主题中注明姓名和“申请博士后”。材料通过初选者进行面谈(面谈时间另行通知),然后走清华大学博士后申请程序。

cs.CL weekly 2016.11.07-2016.11.11

一周值得读

Learning Recurrent Span Representations for Extractive Question Answering

【机器阅读】不同的阅读理解数据集产生答案的方式不同,有的是给定N个候选答案,有的是规定从原文中的entity中进行选择,有的是从原文中的任意token进行选择等等。本文所用的数据集是SQuAD,候选答案是原文中的任意字符串,难度较大,答案可能是一个词或者几个词都有可能。本文在前人研究的基础上提出了一种显式表示answer span的模型,取得了不错的效果。

Answering Complicated Question Intents Expressed in Decomposed Question Sequences

【复杂问答】基于语义分析的问答系统最近流行于解决长、难问题,本文研究的内容是如何处理多个相互关联的简单问题?(即将复杂问题分解成多个相关简答问题)并给出了一个任务数据集。这个问题的一大难点在于相互关联的问题需要共指消解的工作。本文将单轮问答对话分解成多轮问题过程,上下文的处理非常重要。建议研究聊天机器人的童鞋来精读此文。

Unsupervised Pretraining for Sequence to Sequence Learning

【seq2seq】【文本摘要】seq2seq是一种效果非常不错的框架,尤其是输入-输出数据非常充分的时候。但很多语言翻译问题并不能拿到非常多的训练数据,效果就会打折扣。本文针对这一问题,在原有seq2seq框架上提出了一种小改动。 encoder和decoder的初始值用训练好的语言模型来赋值,用可以获得的少量训练数据对模型进行训练和调优,本文方法的效果在机器翻译任务和abstractive式摘要任务中得到了验证。从本文中也可以看出,一个好的初值不仅可以使得训练更快,而且可以得到更好的结果。本文适合用seq2seq解决工程问题的童鞋读。

Sentence Ordering using Recurrent Neural Networks

【句子排序】【文本摘要】句子排序任务对于研究文档的连贯性非常有意义,而连贯性对于很多任务非常重要,比如文本摘要。本文在这个任务上用了流行的seq2seq方法,并且给出了一种可视化的句子表示效果。建议研究摘要的童鞋读。

Modeling Coverage for Neural Machine Translation

【机器翻译】针对神经网络机器翻译(NMT)译文中经常出现的遗漏翻译(under-translation)和过度翻译(over-translation)问题,华为诺亚方舟实验室首次提出对覆盖率(coverage)进行建模。该方法的主要思想是为每个源端词维护一个coverage vector以表示该词被翻译(或覆盖)的程度。在解码过程中该覆盖率信息会传入attention model,以使它更关注于未被翻译的源端词,实验表示该方法能显著减少遗漏翻译和过度翻译错误数量,该工作发表在ACL 2016上。

Efficient Summarization with Read-Again and Copy Mechanism

【文本摘要】本文适合研究文本摘要,尤其是用seq2seq来解决句子级摘要的童鞋进行研读。

一周资源

刘知远老师在将门的talk

对“表示学习和知识获取”感兴趣的童鞋可以看过来。

PaperWeekly 第十三期

引言

本期的PaperWeekly一共分享四篇最近arXiv上放出的高质量paper,包括:机器翻译、表示学习、推荐系统和聊天机器人。人工智能及其相关研究日新月异,本文将带着大家了解一下以上四个研究方向都有哪些最新进展。四篇paper分别是:

1、A General Framework for Content-enhanced Network Representation Learning, 2016.10

2、Collaborative Recurrent Autoencoder: Recommend while Learning to Fill in the Blanks, 2016.11

3、Dual Learning for Machine Translation, 2016.11

4、Two are Better than One: An Ensemble of Retrieval- and Generation-Based Dialog Systems, 2016.10

A General Framework for Content-enhanced Network Representation Learning

作者

Xiaofei Sun, Jiang Guo, Xiao Ding and Ting Liu

单位

Center for Social Computing and Information Retrieval, Harbin Institute of Technology, China

关键词

network representation, content-enhanced

文章来源

arXiv

问题

同时利用网络结构特征和文本特征来学习网络中节点的embedding

模型

总的来说这篇paper的思路比较清晰,学习的方法上很大程度上参考了word2vec的方法。对于一个节点v,将与v相连的节点当做正例,不想连的节点当做负例。那么如何融入内容呢?在网络中设置虚拟的内容节点c,将描述v节点的文本内容c_v当做正例,其他的当做负例c_v’。在优化时同时考虑网络相似性和文本相似性,让v的向量靠近正例远离负例。

network-illustration

总的优化函数如下所示,由两个部分L_nn(节点与节点连接)和L_nc(节点与内容连接)线性组合而成,alpha越大则考虑网络结构越多文本内容越少。

joint-learning

L_nn和L_nc大体思想如上面所言,两者损失函数一致,尽量接近正例远离反例。但是两者在描述节点概率(相似度)上会有所不同。

node-node-link

对于节点与节点之间的概率,由于网络结构要考虑有向性,因此将节点的embedding切分成in和out两半,用sigmoid算两个节点的相似度。

node-node-probability

节点与内容的概率也是类似,不过内容节点的embedding是固定的,通过额外的文本模型训练出来的。这里尝试的文本model包括word2vec,RNN和BiRNN。

node-content-probability

最后在节点分类任务上进行了评测,同时结合网络结构特征和文本特征确实带来了明显的提高。

资源

用到的数据集是DBLP(cn.aminer.org/citation)和自己采集的知乎用户网络。

相关工作

这两年network representation的工作如雨后春笋,在DeepWalk之后有十余篇论文出现。这篇文章在相关工作里有相对全面的覆盖,对这方面工作有兴趣的同学值得参考。

简评

尽管相关模型层出迭见,但略感遗憾的是感觉目前并没有在network embedding之上的较为成功的应用,大多benchmark都是节点分类和链接预测,应用价值有限。十分期待一些更为新颖的benchmark的出现。

Collaborative Recurrent Autoencoder Recommend while Learning to Fill in the Blanks

作者

Hao Wang, Xingjian Shi, Dit-Yan Yeung

单位

HKUST

关键词

Recommendation, Collaborative Filtering, RNN

文章来源

Arxiv, to appear at NIPS’16

问题

本文的主要贡献是提出collaborative recurrent autoencoder (CRAE),将CF (collaborative filtering)跟RNN结合在一起,提高推荐的准确率,并且可以用于sequence generation task。

模型

传统的LSTM模型没有考虑进噪声,对不足的训练数据稳定性不好,文章提出RRN (robust recurrent networks),为RNN的加噪版本,RRN中的噪声直接在网络中向前或者向后传播,不需要分开的网络来估计latent variables的分布,更容易实现且效率高。CARE的模型如下图所示,序列处理的信息保存在cell state s_t和输出状态h_t中,两个RRN可以组合形成编码译码结构。

collaborative1

Wildcard denoising的目的是缓解overfitting,做法是随机选择一些词,替换成,而不是直接扔掉词,实验验证准确率会提成20%左右。Beta-pooling的目的是将向量序列pool成固定长度为2K_W的单向量,帮助rating matrix的矩阵分解;因为不同序列可能需要不同大小的权重,所以需要变长的beta向量来帮助pooling,文章采用beta分布。

Learning的过程采用MAP,类似于CDL和DTR。学到矩阵U和V之后,我们可以预计评分矩阵R。

资源

1、CiteULike
2、Netflix

相关工作

选取当中两个比较有意思的work。
1、CTR (collaborative topic reguression)
将topic model和probabilistic matrix factorization (PMF),但是CTR采用bag-of-words的表示形式,忽略了词序和每个词的局部语境,而这些对文章表示和word embeddings能提供有价值的信息。
2、CDL (collaborative deep learning)
将CF和probabilistic stacked denoising autoencoder (SDAE)结合起来,是一个以bag-of-words为输入的feedforward模型,并不能解决sequence generation的问题。

简评

这篇文章将RNN用于recommendation,并且与rating matrix结合起来,比较有意思,而且考虑了数据稀疏的情况,pooling的方法也值得借鉴。

Dual Learning for Machine Translation

作者

Yingce Xia1, Di He, Tao Qin, Liwei Wang, Nenghai Yu1, Tie-Yan Liu, Wei-Ying Ma

单位

1.University of Science and Technology of China
2.Key Laboratory of Machine Perception (MOE), School of EECS, Peking University
3.Microsoft Research

关键词

Dual Learning, Machine Translation, Deep Reinforcement Learning

文章来源

arXiv, 1 Nov 2016

问题

文章针对机器翻译时需要的人工标注的双语平行语料获取代价高的问题,提出了Dual Learning Model使用单语语料来进行训练,取得了比使用双语平行语料训练的模型更好的结果。

模型

模型的核心思想见下图:
Dual_Learning

(注:上图来自CCL2016马维英老师PPT)
对上图的详细解释:
模型中有两个Agent,Agengt_A和Agent_B,Agent_A只能够理解A语言,Agent_B只能理解B语言,model f是将A语言翻译成B语言的翻译模型,model f是将B语言翻译成A语言的翻译模
型。上图的执行过程可以按照下面的解释进行:
1、Agent_A 发送一句A语言的自然语言的话X1
2、model f将X转换成为B语言的自然语言Y
3、Agent_B收到Y,并将Y 传送给model g
4、model g将Y转换成源语言A的自然语言X2
5、比较X1和X2的差异性,并给出反馈.并进行1到4的反复训练

模型的算法过程:
Dual_Learning_Algorith

在step8的时候对翻译模型翻译的结果使用语言模型做了一个判定,判定一个句子在多大程度上是自然语言。step9是给communication一个reward,step10将step8和step9加权共同作为样例的reward.然后使用policy gradient进行优化。
需要说明的model f和model g是已有的模型或者说在刚开始的时候使用少量的双语语料进行训练得到吗,然后逐渐加大单语语料的比例。

资源

NMT code:https://github.com/nyu-dl
compute BLEU score by the multi-bleu.perl:https://github.com/moses-smt/mosesdecoder/blob/master/scripts/generic/multi-bleu.perl

相关工作

1、the standard NMT, Neural machine translation by jointly learning to align
and translate. ICLR, 2015.
2、pseudo-NMT, Improving neural machine translation models with monolingual data. In ACL, 2016.

简评

本文的思想很创新,利用了机器翻译中的dual mechinism,仅仅利用少部分双语语料和大部分单语语料就可以达到之前NMT的效果,甚至还高了2到3个百分点。
dual的思想不仅可以用于机器翻译中,还可以用于图片、语音、文字等多种语言的共同学习,这样的相互作用共同学习更接近于人类对周围世界认识的方式,接受来自各个方面的信心,综合进行学习。

Two are Better than One: An Ensemble of Retrieval and Generation-Based Dialog

作者

Yiping Song, Rui Yan, Xiang Li, Dongyan Zhao, Ming Zhang

单位

北京大学

关键词

对话系统、open domain、chatbot

文章来源

arXiv

问题

对话系统中可将问题和检索的结果同时作为输入Encoder之后进行解码Decoder,再将生成的结果和原检索结果重排序

模型


相关工作


简评

作者的思路非常简单,原来的回复生成模型容易发生回复内容短或者回复信息无意义的问题,在此作者将候选结果和原来的问句同时作为RNN生成器的输入,生成结果后再将本次生成的结果加入原检索候选集中,进行重新排序,实验结果证明此种方法比单独使用检索或单独使用生成效果有大幅提升。

总结

新的研究成果不见得可以直接应用于工程中,但新的paper,尤其是高质量paper中,一定会有很多的创新点,每一个创新点都可能会为后续的研究、工程实现等带来启发,甚至是一些技术上的突破。从本期开始,PaperWeekly会不定期地分享类似的内容,以方便大家了解最新的研究成果。

cs.CL weekly 2016.10.31-2016.11.04

一周值得读

Neural Machine Translation in Linear Time

【机器翻译】本文提出了一种新的encoder-decoder模型ByteNet。它是由两个扩张(dilated)卷积神经网络堆叠起来的。ByteNet的优势在于时间复杂度是线性的。工作来自deepmind。建议研究机器翻译以及使用MT模型做其他任务的童鞋精读。

Dual Learning for Machine Translation

【机器翻译】【增强学习】本文解决的问题是机器翻译中双语训练语料需求过多的问题,旨在通过一种手段来减少数据标注工作。作者采用的方法是现在重新流行的增强学习方法,翻译通常是一个对偶过程,比如:英翻法和法翻英。整个学习过程可以简单的描述如下:对偶的两个翻译任务可以当做是两个agent A和B,通过少量的双语标注数据可以学习出一个初级的翻译模型,同时通过大量的单语数据(无需标注)来学习出相应的语言模型;A将单语数据翻译成B,B通过自身的语言模型对A的翻译结果进行误差反馈,A进行学习;同理,B也可以向A学习,直到收敛。整个学习过程中,训练了A->B和B->A两个翻译模型,但是用到的双语标注数据就会比较少。

End-to-End Reading Comprehension with Dynamic Answer Chunk Ranking

【机器阅读】本文研究的问题是最近一年非常流行的机器阅读理解问题,给定一段文本和一个问题,输出一个答案(选择、生成)。本文提出了一种新的模型,相比之前模型来说,改进的地方是可以给出变长度的答案。在之前模型的基础上,添加了一个entity表示模块,并且对候选的entity进行排序,得到正确答案。本文在SQuAD上进行了测试,拿到了最好的结果。建议研究QA和机器阅读的童鞋来精读这篇文章,并且开始新一轮SQuAD刷榜。

Knowledge Questions from Knowledge Graphs

【问题生成】【知识图谱】本文研究的内容是从知识图谱中自动生成一些具有一定难度且答案唯一的问题,用于教育或评估。问题的第一个难点在于如何确保从图谱中选择的答案具有唯一性,第二个难点是如何评价所生成问题的难度。这个任务非常有趣,也是知识图谱在实际中的一个应用场景。任务本身比文章的模型和方法更值得思考。还是说回chatbot,QA chatbot,都说缺少数据,已构建好的知识图谱本身就是一个很大的数据源,如何利用它,如何将其更好地用于生成有用的训练数据,本文的任务也许会带来一些启发。这个任务也不算首创,之前KBQA的工作都有通过知识库出发来生成问题,且通过平行语料扩展,包括Percy liang等不少大牛的工作都考虑了这点,这里相当于延续,量化了难度确保了答案唯一性等

LightRNN: Memory and Computation-Efficient Recurrent Neural Networks

【新RNN】本文提出了一种新的思路来提高RNN的效果,包括时间和空间上的。最核心的点在于构建了一种全新的word embedding表示方式,传统的方法是词表中的每个词都用一个向量表示。将每个词都放入到一张二维表中,表中的每个词都有其所在的行向量和列向量共同表示,如图1所示。从而将词表示的规模从|V|个向量降到了2*sqrt(V)。本文还针对这种表示方法,构建了一种新的RNN模型LightRNN,并在大型数据集上进行了语言模型任务的评测,验证了本文方法在时间和空间上的性能提升。

Chinese Poetry Generation with Planning based Neural Network

【诗词生成】本文研究的任务非常有趣,通过神经网络模型来生成唐诗,类似地可以开展宋词等任务。端到端地训练、学习具有很强的应用性,只要能够给定输入序列和输出序列,打开脑洞,做任何好玩的任务都有可能。

MusicMood: Predicting the mood of music from song lyrics using machine learning

【音乐推荐系统】本文研究内容为通过机器学习方法从歌词中来预测音乐的情绪,算是自然语言处理在音乐中的应用。这种简单的应用,可以为音乐推荐系统提供一些特征,现有的音乐推荐系统可以做参考。

Detecting Context Dependent Messages in a Conversational Environment

【chatbot】【上下文】chatbot的难点之一在于如何准确理解“人话”,“人话”有个显著的特点是简短而且非正式,常见的NLP分析方法,词性标注、句法分析等都不好用。理解“人话”需要结合上下文。那么,第一个问题来了,理解某句话应该取哪几句history作为上下文,第二个问题是如何理解上下文?本文旨在解决第一个问题,这个问题研究空间比较大,本文做了初步尝试。对chatbot感兴趣的童鞋,不管是学术界还是工业界的童鞋都可以读一下本文,或许会带来一些启发和思考。

Natural-Parameter Networks: A Class of Probabilistic Neural Networks

【NIPS2016】本文提出了一类概率神经网络(贝叶斯),旨在解决现有神经网络在数据规模小的时候容易过拟合的问题。

Collaborative Recurrent Autoencoder: Recommend while Learning to Fill in the Blanks

【推荐系统】本文的亮点在于将RNN和协同过滤无缝结合起来。

一周资源

聊天机器人资料汇总

来自52ml汇总的聊天机器人资料

PaperWeekly 第十二期

文本摘要是自然语言处理的一大经典任务,研究的历史比较长。随着目前互联网生产出的文本数据越来越多,文本信息过载问题越来越严重,对各类文本进行一个“降维”处理显得非常必要,文本摘要便是其中一个重要的手段。传统的文本摘要方法,不管是句子级别、单文档还是多文档摘要,都严重依赖特征工程,随着深度学习的流行以及seq2seq+attention模型在机器翻译领域中的突破,文本摘要任务也迎来了一种全新的思路。本期PaperWeekly将会分享4篇在这方面做得非常出色的paper:

1、A Neural Attention Model for Abstractive Sentence Summarization, 2015
2、Abstractive Text Summarization using Sequence-to-sequence RNNs and Beyond, 2016
3、Neural Summarization by Extracting Sentences and Words, 2016
4、AttSum: Joint Learning of Focusing and Summarization with Neural Attention, 2016

A Neural Attention Model for Abstractive Sentence Summarization

作者

Rush, A. M., Chopra, S., & Weston, J.

单位

Facebook AI Research / Harvard SEAS

关键词

Neural Attention, Abstractive Sentence Summarization

文章来源

EMNLP 2015

问题

这篇来自Facebook的paper的主题是基于attention based NN的生成式句子摘要/压缩。

1

模型

该工作使用提出了一种encoder-decoder框架下的句子摘要模型。

encoder

作者在文章中介绍了三种不同的encoding方法,分别为:

  1. Bag-of-Words Encoder。词袋模型即将输入句子中词的词向量进行平均。
  2. CNN encoder
  3. Attention-Based Encoder。该encoder使用CNN对已生成的最近c(c为窗口大小)个词进行编码,再用编码出来的context向量对输入句子做attention,从而实现对输入的加权平均。

模型中的decoder为修改过的NNLM,具体地:

1

式中$$y_c$$为已生成的词中大小为c的窗口,与encoder中的Attention-Based Encoder同义。

与目前主流的基于seq2seq的模型不同,该模型中encoder并未采用流行的RNN。

数据

该文章使用了English Gigaword作为语料,选择新闻中的首句作为输入,新闻标题作为输出,以此构建平行语料。
具体的数据构建方法参见文章。

此外,该文章还使用了DUC2004作为测试集。

简评

在调研范围内,该文章是使用attention机制进行摘要的第一篇。且作者提出了利用Gigaword构建大量平行句对的方法,使得利用神经网络训练成为可能,之后多篇工作都使用了该方法构建训练数据。

Abstractive Text Summarization using Sequence-to-sequence RNNs and Beyond

作者

Nallapati, Ramesh, et al.

单位

IBM Watson

关键词

seq2seq, Summarization

文章来源

In CoNLL 2016

问题

该工作主要研究了基于seq2seq模型的生成式文本摘要。
该文章不仅包括了句子压缩方面的工作,还给出了一个新的文档到多句子的数据集。

模型

该文章使用了常用的seq2seq作为基本模型,并在其基础上添加了很多feature:

  1. Large Vocabulary Trick。
    参见Sébastien Jean, Kyunghyun Cho, Roland Memisevic, and Yoshua Bengio. 2014. On using very large target vocabulary for neural machine translation. CoRR, abs/1412.2007.
  2. 添加feature。例如POS tag, TF、IDF, NER tag等。这些feature会被embed之后与输入句子的词向量拼接起来作为encoder的输入。

  3. pointing / copy 机制。使用一个gate来判断是否要从输入句子中拷贝词或者使用decoder生成词。参见ACL 2016的两篇相关paper。

  4. Hierarchical Attention。这是用于文章摘要中多句子的attention,思路借鉴了Jiwei Li的一篇auto encoder的工作。大致思路为使用句子级别的weight对句子中的词进行re-scale。

数据

  1. English Gigaword
  2. DUC 2004
  3. 提出了CNN/Daily Mail Corpus

简评

该工作为在第一篇文章基础上的改进工作,做了大量的实验,非常扎实。文章提出的feature-rich encoder对其他工作也有参考意义,即将传统方法中的特征显示地作为神经网络的输入,提高了效果。

Neural Summarization by Extracting Sentences and Words

作者

Cheng, Jianpeng, and Mirella Lapata.

单位

University of Edinburgh

关键词

Extractive Summarization, Neural Attention

文章来源

ACL 2016

问题

使用神经网络进行抽取式摘要,分别为句子抽取和单词抽取。

模型

句子抽取

由于该工作为文档的摘要,故其使用了两层encoder,分别为:

  1. 词级别的encoder,基于CNN。即对句子做卷积再做max pooling从而获得句子的表示。
  2. 句子级别的encoder,基于RNN。将句子的表示作为输入,即获得文档的表示。

由于是抽取式摘要,其使用了一个RNN decoder,但其作用并非生成,而是用作sequence labeling,对输入的句子判断是否进行抽取,类似于pointer network。

词的抽取

对于词的抽取,该模型同样适用了hierarchical attention。与句子抽取不同,词的抽取更类似于生成,只是将输入文档的单词作为decoder的词表。

数据

从DailyMail news中根据其highlight构建抽取式摘要数据集。

简评

该工作的特别之处在于对attention机制的使用。该paper之前的许多工作中的attention机制都与Bahdanau的工作相同,即用attention对某些向量求weighted sum。该工作则直接使用attention的分数进行对文档中句子进行选择,实际上与pointer networks意思相近。

AttSum: Joint Learning of Focusing and Summarization with Neural Attention

作者

Cao, Ziqiang, et al.

单位

The Hong Kong Polytechnic University, Peking University, Microsoft Research

关键词

Query-focused Summarization

文章来源

COLING 2016

问题

Query-focused多文档抽取式摘要

模型

由于该任务为针对某个query抽取出可以回答该query的摘要,模型使用了attention机制对句子进行加权,加权的依据为文档句子对query的相关性(基于attention),从而对句子ranking,进而抽取出摘要。具体地:

  1. 使用CNN对句子进行encoding
  2. 利用query,对句子表示进行weighted sum pooling。
  3. 使用cosine similarity对句子排序。

数据

DUC 2005 ∼ 2007 query-focused summarization benchmark datasets

简评

该文章的亮点之处在于使用attention机制对文档中句子进行weighted-sum pooling,以此完成query-focused的句子表示和ranking。

总结

本次主要介绍了四篇文本摘要的工作,前两篇为生成式(abstractive)摘要,后两篇为抽取式(extractive)摘要。对于生成式摘要,目前主要是基于encoder-decoder模式的生成,但这种方法受限于语料的获得,而Rush等提出了利用English Gigaword(即新闻数据)构建平行句对语料库的方法。IBM在Facebook工作启发下,直接使用了seq2seq with attention模型进行摘要的生成,获得了更好的效果。对于抽取式摘要,神经网络模型的作用多用来学习句子表示进而用于后续的句子ranking。

cs.CL weekly 2016.10.24-2016.10.28

一周值得读

Iterative Refinement for Machine Translation

【机器翻译】本文的研究内容针对机器翻译在解码阶段单调总是单调、不回溯地生成翻译结果的问题,作者提出了一种翻译方案,在解码时不断地回溯并且修正先前生成的结果。模型是CNN+attention。本文工作来自Facebook AI Research。

Bridging Neural Machine Translation and Bilingual Dictionaries

【机器翻译】本文研究的内容是机器翻译中如何应用两门语言中罕见词和未登录词词典的问题,本文针对这一问题提出了两种方法。本文工作来自中科院@张家俊MT 老师。

Two are Better than One: An Ensemble of Retrieval- and Generation-Based Dialog Systems

【chatbot】开放域聊天机器人在回复时有两种常见的思路:1、基于检索 2、基于生成。第一种方法比较简单但答案相对死板,第二种方法灵活但常常出现“呵呵”式的回答。本文提出了一种集成方法,检索到的答案和用户的query一起作为输入,喂入模型(RNN)中,然后生成回答,新生成的回答作为candidate一起重排序来决定最终的回复。实验结果证明了本文的方法要比单种方法更有效。每个模型都有其优点和缺点,这种集成式的方法将各个模型的优点集成起来,效果会很不错。

EmojiNet: Building a Machine Readable Sense Inventory for Emoji

【语义网】本文构建的EmojiNet类似于词的WordNet,同一个Emoji表情在不同的上下文中有着不同的意思,而社交网络非常流行Emoji表情,构建这么一个语义网非常有意义。项目地址:http://emojinet.knoesis.org./

Can Active Memory Replace Attention?

【Memory Networks】Memory Networks和Attention是解决长距离依赖问题的两大方法,Attention模型在NLP的很多任务中都有更好的表现,本文对Memory Networks类模型的缺点进行了分析,并且提出了一种改进模型。改进版的memory模型有不错的表现,并且在长句子机器翻译任务中得到了验证。本文作者来自Google Brain。建议关注自然语言处理的童鞋,不管是关注什么任务,都应该精读一下本文。

CoType: Joint Extraction of Typed Entities and Relations with Knowledge Bases

【信息抽取】本文提出了一种基于Distant Supervision对文本中命名实体和关系联合抽取的框架,克服了之前将两个任务分开做带来的误差影响,框架具有较强的扩展性和迁移性,建议精读。

一周资源

Reddit大型评论数据集

【数据集】Reddit大型评论数据集,用于情感分析研究。

微软lightGBM框架的python接口

【开源框架】ArdalanM/pyLightGBM: Python binding for Microsoft LightGBM

中文对白语料:可用作聊天机器人训练语料

【数据集】chinese conversation corpus by BiNgFeng GitHub

PaperWeekly 第十一期

引言

Memory Networks是由Facebook的Jason Weston等人提出的一个神经网络框架,通过引入长期记忆组件(long-term memory component)来解决神经网络长程记忆困难的问题。在此框架基础上,发展出许多Memory Networks的变体模型,本期精选了5篇Memory Networks相关的论文,分别如下:

1、Memory Networks
2、End-To-End Memory Networks
3、Ask Me Anything: Dynamic Memory Networks for Natural Language Processing
4、THE GOLDILOCKS PRINCIPLE: READING CHILDREN’S BOOKS WITH EXPLICIT MEMORY REPRESENTATIONS
5、Key-Value Memory Networks for Directly Reading Documents

Memory Networks

作者

Jason Weston, Sumit Chopra, Antoine Bordes

单位

Facebook AI Research

关键词

Question Answering, Memory Network

文章来源

ICLR 2015

问题

为解决长期记忆问题, 提出一类称为Memory Networks的模型框架, 基于该框架构造的模型可以拥有长期(大量)和易于读写的记忆。

模型和思路

Memory Networks可以理解为一种构造模型的框架, 该类模型由如下五部分组成:

1、记忆m: 模型记忆的表示,由一个记忆槽列表[m1-mi]组成,可被G,O组件读写
2、组件I (input feature map): 将模型输入转化模型内部特征空间中特征表示
3、组件G (generalization): 在模型获取新输入时更新记忆m,可以理解为记忆存储
4、组件O (output feature map): 根据模型输入和记忆m输出对应于模型内部特征空间中特征表示,可以理解为读取记忆
5、组件R(response): 将O组件输出的内部特征空间的表示转化为特定格式,比如文本。可以理解为把读取到抽象的记忆转化为具象的表示。

假设模型输入为x:

  • 记忆的更新过程表示为 mH(x) = G(mi, I(X), m), ∀i, H(x)为选择记忆和遗忘机制
  • 记忆的读取过程表示为 r = R(O(I(x), m))

再次强调Memory Networks是一类模型框架, 组件I,G,R,O可以使用不同的实现

资源

相关工作及引用

  • Facebook AI的进一步工作, 基于Memory Networks框架和神经网络实现了End-To-End的训练学习
    Sainbayar Sukhbaatar, Arthur Szlam, Jason Weston, Rob Fergus. End-To-End Memory Networks. arXiv:1503.08895

简评

文章提出了一个通用的解决长期记忆问题的算法框架, 框架中的每一个模块都可以变更成新的实现, 可以根据不同的应用场景进行适配。

End-To-End Memory Networks

作者

Sainbayar Sukhbaatar, Arthur Szlam, Jason Weston, Rob Fergus

单位

Dept. of Computer Science Courant Institute, New York University
Facebook AI Research

关键词

Memory Networks, End-to-end, Question Answer

文章来源

NIPS 2015

问题

本文提出了一个可以端到端训练的Memory Networks,并且在训练阶段比原始的Memory Networks需要更少的监督信息。

模型

本文提出的模型包括单层和多层两种情况。下面先介绍单层情况,
1、单层
如图(a)所示,输入的序列可以通过不同的Embedding矩阵A和C分别被表示成Input和Output向量的集合。同样的,通过Embedding矩阵B,我们将Question表示成一个向量u,向量u和Input向量集合中的每个向量计算内积,然后通过softmax得到一个概率向量p(attention过程),概率向量p中的每一个概率值表示每个Output向量对应输出的权重大小。通过p和Output向量集合,对Output中的向量进行加权求和得到输出向量o,将输出向量o和问题向量u相加,再最后通过一个权值矩阵W和softmax来预测最终的label。

end_to_end

2、 多层
多层的情况如图(b)所示,每层的输出向量oi和问题向量ui相加获得新的问题表示ui+1,然后重复上述单层的过程,直到最后一层通过softmax来预测label。

本文在bAbi数据集、Penn Treebank以及Text8三个数据集上进行实验,均取得了较好的实验效果。

资源

相关工作

Memory Networks
Neural Turing Machines

简评

本篇论文提出的模型是在Facebook提出的原始Memory networks基础上进行的改进。在Memory networks的框架下,将原来依赖于中间监督信息的非端到端Memory networks改进为端到端的Memory networks。基础模型之外,本文针对时序编码提出了一些有趣的trick,可作参考。

Ask Me Anything: Dynamic Memory Networks for Natural Language Processing

作者

Ankit Kumar, Ozan Irsoy, Peter Ondruska, Mohit Iyyer, James Bradbury, Ishaan Gulrajani, Victor Zhong, Romain Paulus, Richard Socher

单位

MetaMind

关键词

Memory Networks, Neural Networks, Question Answering

来源

arXiv

问题

Question Answering: 给定一段Context,一个与此Context相关的Question,利用模型生成一个单词的Answer。

模型

下图给出了dynamic memory networks的框架。

model-image

首先Context和Question都经过Gated Recurrent Unit(GRU)转换成成vector形式,分别作为episodic memories e和m储存下来。e代表的是一连串vectors,Context中每句话都会被转换成一个e vector,然而Question只会被转换成一个m vector。

下一步是episodic memory updates,在每一个episode, 每一个e vector会和m计算一个attention,本文中使用一个two layer feed forward neural network计算attention score。然后利用attention scores来update episodic memories。

gate

episodic-memory

输出答案也采用了一个GRU decoder

output

这里的a0是最后一个memory state m。

资源

Facebook bAbI dataset

相关工作

Memory Networks
Eng-to-End Memory Networks
The Goldilocks Principle: Reading Children’s Books with Explicit Memory Representations

简评

总体来说这是一篇很有趣的文章。其中应用了episodically update memory的想法,期望模型能够借此学到一些logical reasoning的能力。并且模型中多次用的GRU,每一层都使用GRU的encoding或者decoding,比较有趣。

然后我认为本文的写作有一些问题,比如我自始至终也没有找到e的下标究竟代表什么,我的理解是每一句话都被encode成一个e作为episodic memory,那么每次Update 其中一个e都要经过所有其他的e是为了更好的融合所有context sentences的信息吗?looks reasonable to me.

那么每一层的hidden states h究竟又是什么?上一层的hidden state如何更新到下一层?文章中似乎没有给出明确的公式,也没有在model figure中展示出来,似乎写作不够明确。既然e是有h穿过层层GRU得到,我会揣测下一层的h是上一层e的一个function。总之感觉model这一块的解释不够清晰到位,变量太多有些混乱。

然而总体来说,我觉得本文还是非常值得一读的。

THE GOLDILOCKS PRINCIPLE: READING CHILDREN’S BOOKS WITH EXPLICIT MEMORY REPRESENTATIONS

作者

Felix Hill, Antoine Bordes, Sumit Chopra & JasonWeston

单位

Facebook AI Research

关键词

Memory Networks,self-supervised training,window-based memories,The Children’s Book Test(CBT)

文章来源

ICLR2016

问题

本文对于语言模型(RNN/LSTM/Memory Network生成)到底能够多好或者在多大程度上表示The Children’s Book做了一项测试。测试结果表面Memor Network上的效果最好。

模型

文中主要对比了一系列state-of-the-art的模型,每个用不同的方式对之前已经读过的文本进行编码,然后进行CBT评比。
实验中使用的模型以及结果如下:

CBT

CBT简介:数据来自Project Gutenburg所创建的数据集,里面的内容都选自儿童书籍。每20句话产生一个问题,让不同的语言模型去进行预测,看谁预测的效果更好。
问题产生于20句话中的某一句话抠掉一个词A。候选集产生分为如下两步:
(1)从构成20句话的词表中随机选出和抠掉词A具有相同词性的词集合C 。
(2)从C中随机抽选10个词作为答案的备选集。
实验最后在CNN QA的语料上进行测试,在新闻文章中识别命名实体,得到的准确率能到
69.4%

资源

n-gram language model:the KenLM toolkit (Scalable modified Kneser-Ney language
model estimation.)

相关工作

(1) MN:arXiv2015,Bordes,Large-scale simple question answering with memory networks.文中关于end to end的训练方法以及memory network的模型主要来自本篇
(2) NIPS2015,Sukhbaatar,End-to-end memory networks.
(3)EMNLP2015,Rush,A neural attention model for abstractive sentence summarization. Contextual LSTM模型的参考文章

简评

本文提供了一种测试语言模型效果的测试方法,这对于语言模型的评判做出了贡献。
在做实验过程中,作者还发现在单层记忆表示中文本被编码的数量对结果有很大的影响:存在一个范围,使得单个词信息和整个句子的信息都得以较好的保留。

Key-Value Memory Networks for Directly Reading Documents

作者

Alexander H. Miller, Adam Fisch, Jesse Dodge, Amir-Hossein Karimi, Antoine Bordes, Jason Weston

单位

Facebook AI Research
Language Technologies Institute, Carnegie Mellon University

关键词

Memory Networks, Key-Value, Question Answering, Knowledge Bases

文章来源

arXiv 2016

问题

鉴于知识库有知识稀疏、形式受限等问题,本文提出了一种可以通过直接读取文档来解决QA问题的新方法Key-Value Memory Networks。

模型

如下图所示,Key-Value Memory Networks(KV-MemNNs)模型结构与End-to-end Memory Networks(MemN2N)基本相同,区别之处在于KV-MemNNs的寻址(addressing)阶段和输出阶段采用不同的编码(key和value)。
key_value

本文主要提出了以下几种Key-value方法:

  1. KB Triple
    针对知识库中的三元组(subject, relation, object),将subject和relation作为Key,object作为Value。
  2. Sentence Level
    将文档分割成多个句子,每个句子即作为Key也作为Value,该方法与MemN2N相同。
  3. Window Level
    以文档中每个实体词为中心开一个窗口,将整个窗口作为Key,中间的实体词作为Value。
  4. Window + Center Encoding
    该方法与Window Level基本相同,区别之处在于中心实体词与窗口中的其他词采用不同的Embedding。
  5. Window + Titile
    很多情况下文章的题目可能包含答案,因此在上述提出的Window方法基础上,再添加如下Key-value对:Key为窗口,Value为文档对应的title。

本文为了比较使用知识库、信息抽取和直接采用维基百科文档方法之间的效果,构建了新的语料WIKIMOVIES。实验结果表明,KV-MemNNs直接从文档读取信息比信息抽取方法的效果好,却仍比直接利用知识库的方法差不少。其中几种Key-Value方法中,“Window + Center Encoding”方法效果最好。此外,本文还在WikiQA上进行实验,验证了KV-MemNNs的效果。

资源

相关工作

Memory Networks
End-TO-End Memory Networks
The Goldilocks Principle: Reading Children’s Books with Explicit Memory Representations

简评

本篇论文提出了一个在新的Memory Networks变体Key-Value Memory Networks,旨在探索在QA过程中,如何消除采用知识库和自由文本(维基百科)之间的效果差距(gap),并为此构建了一个新的数据集WikiMovies。

总结

长程记忆(long-term memory)问题一直是深度学习中的一个难点,Attention机制就是解决这一问题的经典方法。本文介绍的几篇Memory Networks试图通过构建长期存储记忆组件来解决过去神经网络无法存储过长内容的问题。如何存储大量的外部信息以及如何利用这些外部信息推断是Memory Networks乃至很多NLP任务的难点。本期引入的这几篇论文中,Memory Networks提出了一个整体的框架,End-To-End Memory Networks使memory networks可以端到端的训练学习。Key-Value Memory Networks主要解决外部信息如何存储表示,而THE GOLDILOCKS PRINCIPLE这篇论文则在推理方面有所创新,直接利用attention的打分来预测答案。目前深度学习方法中,无论是存储更新长期记忆的方法还是结合长期记忆进行推理的方法都还很初级,仍需诸君努力前行。

以上为本期Paperweekly的主要内容,感谢cain、destinwang、zeweichu、chunhualiu等四位同学的整理。

cs.CL weekly 2016.10.17-2016.10.21

一周值得读

Cached Long Short-Term Memory Neural Networks for Document-Level Sentiment Classification

【情感分析】RNN处理文本这样的序列数据有天然优势,但对于长文本效果却不尽人意。本文针对这个问题,提出了一种新的LSTM结构Cached LSTM。通过cache机制,来捕捉整体语义信息,将memory分成几组,对应不同的forget门,在文档集情感分析任务中取得了不错的结果。其实,RNN处理长文本信息都面临这个问题,chatbot中对context信息的处理也可以考虑借鉴这个思路。本文是FudanvNLP的工作。

Lexicon Integrated CNN Models with Attention for Sentiment Analysis

【情感分析】本文研究的内容是情感分析,论文的亮点在于提出了一种新的CNN+attention模型。本文适合在情感分析模型上有所突破的童鞋来读,从事相关工作的工程师或数据科学家也适合粗读一下。

A Language-independent and Compositional Model for Personality Trait Recognition from Short Texts

【用户画像】本文研究的问题是从短文本中学习用户画像,提出了一种深度学习模型,模型上从学术上讲没有太多亮点,适合工业界从事相关工作的童鞋阅读。

Neural Machine Translation Advised by Statistical Machine Translation

【机器翻译】NMT翻译流利但有时翻译不准,SMT翻译准确但不够流利,两者各有优劣。本文结合了两种方法的优点,提出了在NMT解码阶段,用SMT来做辅助,通过一种门机制来选择用SMT还是NMT生成。

Interactive Attention for Neural Machine Translation

【机器翻译】【注意力模型】注意力模型证明了其强大威力,本文提出了一种新的注意力模型,INTERACTIVE ATTENTION,在encoder和decoder之间通过读和写操作进行交互,实验中对比了其他注意力模型,结果不错。

A General Framework for Content-enhanced Network Representation Learning

【社交网络】本文研究的是社交网络中各个节点的表示问题,亮点在于考虑了node(比如:用户)的相关文本信息,从文本中挖掘出node的一些特性(比如:性别、职业、爱好等),对node的刻画更精准。利用富文本信息来刻画社交网络中的各个node,在广告、推荐系统等应用方面都会带来很大的价值,这也正是nlp的价值所在,从杂乱无章的非结构文本中挖掘出大量的有用信息,本文适合研究社交网络价值、推荐系统的童鞋深入阅读。本文工作来自哈工大刘挺老师组。

Reasoning with Memory Augmented Neural Networks for Language Comprehension

【机器阅读】本文提出了一种做假设检验的神经网络方法(Neural Semantic Encoders),并且应用在机器阅读任务上,取得了不错的效果,涉及的数据集是CBT和WDW。

一周资源

STC短文本对话数据

【中文对话数据】对话很热,但依然很难!华为诺亚方舟实验室在NTCIR-13组织的关于短文本对话(Short-Text Conversation)的比赛已经开始注册了,让我们一起从大数据中探求人类对话的本质!比赛有两个任务,一个是基于检索给出response,一个是直接生成response。数据来自微博,输入是微博内容,输出是评论内容。13年华为的文章提到的短文本对话数据集可能就是指该数据集,一直愁对话数据的各位可以看过来,你们等的数据来了!

DataHub

一个收集各种数据集的网站。

t-SNE可视化工具的python和torch封装

DmitryUlyanov/Multicore-TSNE: Parallel t-SNE implementation with Python and Torch wrappers

Jiwei Li关于聊天机器人NLG问题的slide

分享一个斯坦福大学Jiwei Li关于聊天机器人NLG问题的slide,Jiwei Li是一个非常高产的作者,这个slide包括了非常多精彩的内容。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
微博账号:PaperWeekly(http://weibo.com/u/2678093863
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

PaperWeekly十期总结

首先,感谢大家关注PaperWeekly和阅读本文,本文的阅读大概花费您10分钟时间,来看一下PaperWeekly这十期(两个多月)内容走过来所经历的一些。

一开始

PaperWeekly的第一步是从一篇对Andrew Ng的采访开始的,大概的意思是经常读论文是一种非常好的长期投资,回报率也会非常高。虽然之前也在博客上写过一系列《文本文摘》的文章,并有幸得到爱可可老师的转发,但并没有系统地将自己所读的paper进行整理,并写成清晰、简短的文章分享出来。

PaperWeekly最开始的文章都是单篇的文章,源自之前所读的文本摘要的博客,当时取weekly这个名字是因为想给自己留下一个偷懒的借口,毕竟一周写一篇压力不会太多,如果心血来潮或者闲暇时间多的话可以写几篇。

慢慢地养成了刷arxiv的习惯,刷的方向主要包括:cs.CL、cs.AI、cs.LG和cs.NE这四个,最多的是cs.CL。习惯是个可怕的东西,养成了之后是很难改,每天不到arxiv上看看,就会感觉生活缺了点什么。

闻道有先后,术业有专攻。我个人的眼界和所关注的东西是有限的,精力也是有限的,所以在挣扎了一段时间之后,终于决定打开大门,欢迎同样对自然语言处理和分享知识感兴趣和有热情的同学一起来做PaperWeekly,让更多对其他领域更加专业的同学加入进来,来丰富内容,同时也会保证更高的质量,目前PaperWeekly有30名左右的童鞋一起来写文章,根据应用领域分了四个组,小组只是为了方便组织一期一期的topic,这里欢迎有更多感兴趣的同学可以加入,来增加更多的组,来写更多不同形式、不同领域的文章。

算上开始我个人写的两期,到昨天发布的最新一期,一共是十期内容。十期,是我给自己定的一个小目标。当我决定让更多的人参与进来时,我给自己设定了一个小目标,就是成功运营到第十期。想一件事情很简单,说一件事情也不难,难的是做出来,并且可以坚持一直做下去。从第三期的ACL值得读,新团队小试牛刀,再到后面的一个小组一期内容,每一期内容都围绕一个topic展开,从最开始的缺乏各种规范,到现在有了一个稳定的、但不是那么健全的制度来确保运营和沟通的高效,我感觉的到PW每天都在成长,每天都在朝着一个更好的方向走着,虽然仍存在在各种各样的不足,但它在进步,并且在不断努力变得更好。

公众号+微信群

公众号+微信群的模式带来了很多的方便,最初的想法是让对PW感兴趣的童鞋聚在一起,可以对某些感兴趣的topic进行讨论。微信群有个天然的优势在于用户粘性高,不管什么样的问题,大家都喜欢丢在群里讨论,但也有天然的劣势,讨论过程容易混乱,尝试过用slack来解决这个问题,slack的分组讨论功能非常适合我们的场景,但并没有培养出来这个使用习惯,就是因为微信的粘性太高了,大家就是喜欢在这里交流。

Issue 1

一个群很快就到了500人,出现了一个棘手的问题,第二个群的人如果太少,几乎没有讨论意义,所以就想用什么办法可以打通两个群,让两个群的童鞋在同一时空内进行交流。抛出这个问题之后,大家给出了很多的建议,最后群里优秀的工程师@碱馒头童鞋做了一个消息转发机器人,并且牺牲了自己的微信号,每天给大家转发来自两个群里的每一条消息。

Issue 2

群里常常会有很多精彩的讨论和高质量的问答内容,是一笔不小的资源财富,如何让这些资源保存并且整理下来是一个很有挑战性的问题。最开始的想法是,可不可以做一个文本摘要工具,每天从群里摘要出有意义的东西,如果有QA对,整理出QA对。将问题抛到群里之后,大家也是各种讨论,但最后还是拿不出一个靠谱的方案来。我们整天都在用机器学习,也都想通过人工智能来改变这个世界,来改变我们的生活,很多时候模型和工具都有,但缺少数据和需求,这次有了数据和需求,我们却无能为力了,感觉有一点点小讽刺。

后来换了个思路,可不可以通过一些特殊标记,将大家的QA对转发到另一个地方,并且组织起来内容。我想到了bbs,想法很简单,就是大家把Q和A都通过一些标记起来,通过一个小bot将信息转发到bbs的数据库中,通过bbs来保存这些讨论信息。在群里抛出这个问题后,有童鞋响应,并且想做一些尝试,他就是现在群里的转发机器人@种瓜 童鞋,一个非常喜欢钻研问题的童鞋,他是一个blogger,这里是他的博客地址http://blog.just4fun.site/ 。通过他的努力,群里添加了一个看起来很酷的bbs bot,很酷,但最终仍然没有改变大家的习惯,毕竟提问的童鞋并没有太高的期待,因为这个群没有人回答,他转身就会将问题扔到另一个群,总会有人回答他的,所以强行推广使用bbs bot很难,而且bbs bot会自动产生一些状态信息,会显得群里有一些杂乱。所以,现在bbs bot成了群里的一个彩蛋,一个好玩的东西,虽然没有被广泛应用,但我仍觉得这是一件很酷的事情。(现在bot火,很多平台上驻扎了大大小小的bot上万只,但有几只bot可以产生用户粘性呢?大多数都是现象级,从这个角度来看,改变一个用户的习惯是多么困难的一件事情!)

说到彩蛋,群里还有一个彩蛋,就是一个基于StackOverFlow的QA bot,通过特定的表情符号来提问,系统会返回一个相关的答案,实现的大概思路是用google在stack上找答案,然后取排名最高的答案返回给用户,为了让群里的童鞋可以用中文来提问,特意加了一层翻译功能。

好玩的事情一、两个人在没意思,要是有更多感兴趣的童鞋可以加入,功能将会更加丰富和实用。(有感兴趣的童鞋可以私信我)

一些时间点

2016.05.08 PW发布第一篇文章,《Generating News Headlines with Recurrent Neural Networks》

2016.08.05 PW发布第一期文章,包括三篇文章:《DeepIntent: Learning Attentions for Online Advertising with Recurrent Neural Networks》、《A Neural Knowledge Language Model》、《Neural Sentence Ordering》

2016.09.01 PW发布组建团队后的第一期文章,包括十篇ACL 2016的paper

2016.09.17 PW在群里正式上线了一个同步消息的bot,感谢@碱馒头 童鞋

2016.09.29 PW在群里正式上线了一个bbs bot,感谢@种瓜 童鞋

2016.10.07 PW在群里正式上线了一个QA bot,感谢@种瓜 童鞋

一些数字

PW在上线运营的这小半年以来,一共:

发布了113篇文章

完成了101篇paper的解读

推荐了80篇高质量paper

分享了20个高质量资源

吸引了30位学生和工程师参与写文章

接下来

PW永远都处在beta状态,可能变化地很慢,但一定在努力朝着一个正确的方向改变。于是,PW在原有基础上有了一些新的思路:

定位:
1、对于学术界,推荐最新的高质量paper,起到一个导读作用;同时以topic为牵引,归纳和总结相似topic的paper。
2、对于工业界,推荐实用的或者新颖的paper,起到一个介绍作用;同时不定期的约稿写文章,系统地讲某一个领域、剖析某一个框架、精讲某一篇文章等等等等。

模式:
1、小组(不定期):同之前一样,发起一个topic,做几篇相关的文章,形式变化不大。
2、arXiv(定期):写作形式与之前一样,每周从arXiv上过滤出几篇高质量文章(PaperWeekly官方微博上每天过滤出的好paper作为候选),以周为单位解读最新的paper给大家。
3、约稿(不定期):写作形式不限,可详细解读一篇文章,可写一个方向(比如:文本摘要),也可以与代码、框架有关的内容,也期待大家的投稿。

致谢

十期内容,经历了两个多月的时间,60多天是一段漫长的时间,感谢大家的一路相伴和支持。

感谢踊跃加入PW写作团队的你们:magic282sub、陈哲乾、destinwang、yangzhiye、david、brantyz、AllenCai、anngloves、cheezer94、tonya、gcyydxf、guoxh、EdwardHux、hxw2303632、jaylee1992、jian.zhou.cool、lshowway、memray、mygod9、美好时光海苔、cain、王迁、xy504、Susie-nmt、褚则伟、zhang1028kun、zhaosanqiang、zhaoyue、zhoussneu、zeng
,也期待更多的童鞋可以加入写作团队。

感谢加入PW讨论群的童鞋,感谢你们贡献了很多精彩的讨论。

感谢机器之心的支持和宣传,看着你们一路走来,逐渐地成长和壮大,有一种榜样的力量!

感谢帮忙分享和推广的各种大牛们,谢谢你们让更多的人知道了PW。

感谢留言提意见的童鞋们,有时时间紧张,不能一一回复,有时精力有限,无法满足每一位的需求,但还是感谢你们的期待和支持!

第一个十期结束了,我不知道后面会有多少个十期,希望可以一直坚持做下去。放弃可以找到很多种借口,但坚持下来只需要一个理由,因为热爱!

PW Ebook

我将PW的十期内容汇总成一本电子书,大家可以从http://www.kancloud.cn/mcgrady164/paperweekly 下载阅读,里面的文章会随着PW的更新不断地更新。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
微博账号:PaperWeekly(http://weibo.com/u/2678093863
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

PaperWeekly 第十期

本期PaperWeekly的主题是基于翻译模型(Trans系列)的知识表示学习,主要用来解决知识表示和推理的问题。表示学习旨在将研究对象的语义信息表示为稠密低维实值向量,知识表示学习主要是面向知识图谱中的实体和关系进行表示学习。使用建模方法将实体和向量表示在低维稠密向量空间中,然后进行计算和推理。一般而言的应用任务为triplet classification 和link prediction.自从2013年TransE模型提出后,产生了一系列模型对TransE模型进行改进和补充,比如TransH、TransG等等。本期PaperWeekly主要提供了Trans系列的7篇文章供大家赏读。

paper目录:
(1)TransE,NIPS2013,Translating embeddings for modeling multi-relational data。
(2)TransH,AAAI2014,Knowledge graph embedding by translating on hyperplanes。
(3)TransD,ACL2015,Knowledge graph embedding via dynamic mapping matrix。
(4)TransA,arXiv2015,An adaptive approach for knowledge graph embedding。
(5)TransG,arxiv2015,A Generative Mixture Model for Knowledge Graph Embedding)
(6)KG2E,CIKM2015,Learning to represent knowledge graphs with gaussian embedding。
(7)TranSparse,AAAI2016,Knowledge graph completion with adaptive sparse transfer matrix。

TransE:Translating Embeddings for Modeling Multi-relational Data

作者

A Bordes, N Usunier, A Garcia-Duran, J Weston, O Yakhnenko

单位

CNRS, Google inc.

关键词

Embedding entities and relationships, Multi-relational data, link prediction

文章来源

NIPS 2013/12

问题

如何建立简单且易拓展的模型把知识库中的实体和关系映射到低维向量空间中,从而计算出隐含的关系?

模型

传统训练知识库中三元组(head,relation,tail)建模的方法参数特别多,导致模型太复杂难以解释,并且需要很大的计算代价,很容易出现过拟合或欠拟合问题。而简单的模型在表现上与复杂的模型几乎一样,但更易拓展。TransE的训练过程如下图:

TransE模型的训练中,第12步是损失函数,对E和L做uniform初始化之后,让正确的h+l-t结果趋近于0,让错误的h‘+l-t’的结果变大,损失函数结果大于0取原值,小于0则取0,这种hinge loss function可以尽可能的将对和错分开,模型使用SGD训练,每次更新可以只更新这个batch里的三元组的向量,因为参数之间并没有冲突。

资源

数据集 WordNet http://wordnet.princeton.edu/wordnet/download/
数据集 Freebase http://developers.google.com/freebase/
Code: https://github.com/thunlp/KB2E

简评

本文提出了一种将实体与关系嵌入到低维向量空间中的简单模型,弥补了传统方法训练复杂、不易拓展的缺点。尽管现在还不清楚是否所有的关系种类都可以被本方法建模,但目前这种方法相对于其他方法表现不错。TransE更是作为知识库vector化的基础,衍生出来了很多变体。

TransH:Knowledge Graph Embedding by Translating on Hyperplanes

作者

Zhen Wang1, Jianwen Zhang2, Jianlin Feng1, Zheng Chen2

单位

Sun Yat-sen University
microsoft

关键词

knowledge graph embedding, Multi-relational data

文章来源

AAAI 2014

问题

对知识库中的实体关系建模,特别是一对多,多对一,多对多的关系。设计更好的建立负类的办法用于训练。

模型

过去指示图库建模的方法参数过多, TransE在一定程度上解决了这个问题, 但是TransE过于简单,很难对一对多,多对一和多对多关系建模。所以为了平衡模型复杂度和建模效果,TransH将把关系映射到另一个空间(如下图 )。 注意: 这种想法和Distant Model (Bordes et al. 2011)很相似,但是TransH用了更少的参数, 因为TransH假设关系是向量而不是距离。
TransH_1

这个模型的一个亮点就是用尽量少的参数对复杂的关系建模。 下图罗列了相关工作的模型以及复杂度。图中可以看到从TransE到TransH并没有添加太多的参数(Unstructured只是TransE简化版)。Bilinear,Single Layer, NTN对关系或者实体进行了非线性的转换,作者认为是没有必要的(增加了模型复杂度)。

TransH_2

TransH模型的训练和TransE类似 (SGD优化) ,下面是损失函数(因为一些限制,后面加入了拉格朗日乘数)。论文另一个亮点是设计了一种负类抽样的方法,即一对多的时候,给head更多的抽样概率, 同样的多对一的时候,给tail更多抽样概率。
TransH_3

资源

数据集 WordNet:http://wordnet.princeton.edu/wordnet/download/
数据集 Freebase: http://developers.google.com/freebase/
Code:https://github.com/thunlp/KB2E

相关工作

(1)TransE (Bordes et al. 2013b): 和TransH相比,它没有将关系映射到另一个空间,关系由一个向量r表示。
(2)Unstructured Model:简化版的TransE,假设r = 0。
(3)Structured Embedding: 使用了两个关系相关的矩阵,分别用于头h和尾t,评估函数为:

该方法并没有抓住实体和关系之间的关系。
(4)Single Layer Model(SLM):使用了神经网络,评估函数为:

(5)Distant Model (Bordes et al. 2011):它将实体映射到另一个空间,然后假定关系是距离而不是向量(因为用了2个不同矩阵映射实体,所以对实体关系建模并不是很好)。
(6)Bilinear Model (Jenatton et al. 2012; Sutskever, Tenen- baum, and Salakhutdinov 2009),Single Layer Model (Socher et al. 2013),NTN (Socher et al. 2013):他们都是使用非线性函数映射实体,这样模型表达能力虽然好但是太多参数也太复杂了(容易过拟合)。

简评

论文提出的TransH模型,为了解决TransE对一对多,多对一,多对多关系建模的难题。它权衡模型复杂度和模型表达能力。而且还设计了复杂取样的办法用于训练。

TransD: knowledge graph embedding via dynamic mapping matrix

作者

Guoliang Ji, Shizhu He, Liheng Xu, Kang Liu and Jun Zhao

单位

中国科学院自动化研究所 National Laboratory of Pattern Recognition (NLPR)

关键词

knowledge graph embedding, link prediction.

文章来源

ACL2015

问题

知识图谱中的link prediction。

模型

在link prediction上的TransE扩展模型,函数仍然为:

但h丄和t丄为entity向量h和entity向量t在该relation r上的投影表示。投影定义为:

其中(h_p)^T为某entity的投影向量,h为该entity的表示向量。

资源

数据集 WordNet http://wordnet.princeton.edu/
数据集 FreeBase https://developers.google.com/freebase/

相关工作

如果TransD的所有投影向量为0,TransD就是TransE。类似的还有TransR/CTransR,他们对每个relation定义了一个mapping矩阵,参数更多计算复杂度更大。

简评

模型只涉及vector的相乘,因此计算复杂度较小,效果也取得了state-of-the-art,适合用于规模很大的知识图谱。

TransA:An Adaptive Approach for Knowledge Graph Embedding

作者

Hao Xian, Minlin Huang, Hao Yu, Xiaoyan Zhu

单位:

清华大学 State Key Lab on Intelligent Technology and Systems

关键词:

knowledge graph embedding, elliptical equipotential hypersurfaces, metric learning.

文章来源

arXiv

问题

如何解决了translation-based 知识表示方法存在的过于简化损失度量,没有足够竞争力去度量知识库中实体/关系的多样性和复杂性问题。

模型

知识图谱在AI搜索和应用中扮演着越来越重要的角色,但是它是符号表示,有一定的逻辑性的,因此如何表示这些关系就成了一个很大的挑战,为了解决这个挑战,很多模型如TransE, TransH, TransR纷纷被提出来,在这些模型中,基于几何关系的方法是很重要的一个分支,而基于几何关系的方法是使用K维的向量表示实体或者关系,然后利用一个函数f_r(h,t)来度量三元组(h, r, t),而他们都是基于一个准则h+r=t。
因此就使用了同一个损失度量h+r=t,这种损失度量其实是利用了在一个球形等价超平面,越接近中心,三元组的可信度越高,因此从未匹配的t中寻找合适的t就变得很苦难,同时这种方法也很难处理一对多,多对一,多对多的关系。因此这些方法不够灵活。
具体可以从图1(a)看出。同时这种方法将等价对待向量中的每一维,但实际上各个维度的重要性是不同的,只有一些维度是有效的,其他维度可以认为是噪音,会降低效果,具体见图2(a).

因此作者提出了另一种损失度量函数

通过增加一个矩阵Wr​,首先利用了一个椭圆等价超平面,解决了上述问题1,具体见图1(b);同时利用LDL分解,公式变为:

其中D_r就是一个对角阵,而对角阵中的每个值的大小,正好说明了每一维的不同重要程度,也就解决了上述问题2,具体减图2(b)。

figure 1
图1
figure 2
图2

资源

数据集 Wordnet http://wordnet.princeton.edu/
数据集 FreeBase https://developers.google.com/freebase/

相关工作

如模型部分介绍的,当前的一些现有模型都是基于一个准则h+r=t,因此就使用了同一个损失度量h_r+r=t_r,只是在h_r和t_r的表示上有不同:

(1)TransE h_r = h, t_r = t
(2)TransH h_r = h - (w_r)^T.h.w_r, t_r = t - (w_r)^T.t.w_r
(3)TransR h_r = M_r.h, t_r = M_r.t
(4)TransM则是预先计算了出每一个训练三元组的直接权重

还有很多类似的模型,这里就不再介绍了。

简评

感觉这篇文章的思路比较简单,就是针对当前模型的一些不足,更换了一个损失度量函数。但是几点还是值得学习的,首先通过图像来描述不同的损失度量函数,给人一个更直观的感觉;其次针对向量表示中的区别对待,感觉很有attention mechanism的感觉,对不同的triple关注向量表示的不同维度,以取得最好的效果,这点是非常值得借鉴参考的。

TransG : A Generative Mixture Model for Knowledge Graph Embedding

作者

Han Xiao, Minlie Huang, Yu Hao, Xiaoyan Zhu

单位

清华大学 State Key Lab on Intelligent Technology and Systems

关键词

knowledge graph embedding, generative mixture model, multiple relration semantics.

文章来源

arXiv2015

问题

解决多关系语义(multiple relation semantics)的问题。

模型

传统的基于翻译的模型采用h_r+r= t_r(其中,h_r为头部实体,t_r为尾部实体,r为头部
实体跟尾部实体的关系),仅仅对一个关系赋予一种翻译向量。
它们不能细分多关系语义,比如,(Atlantics, HasPart, NewYorkBay)和(Table, HasPart, Leg)两个的关系都是HasPart,但是这两个的关系在语义上不同,第一个是“部件”的关系,第二个是“位置”的关系。TransG能够解决关系的多语义问题。如图所示,多关系语义分析可以提高三元组的分类准确度。

figure 1

TransG利用贝叶斯非参数无限混合模型对一个关系生成多个翻译部分,根据三元组的特定语义得到当中的最佳部分。最大数据相似度原理用来训练,优化采用SGD。实验结果在link prediction和triple classification这两种任务上都优于目前最好的结果,运行速度与TransE(最快的方法)成正相关,系数为关系语义部分的数目。

资源

数据集 WordNet http://wordnet.princeton.edu/wordnet/download/
数据集 Freebase http://developers.google.com/freebase/

相关工作

大多数都已介绍,这里就只说明CTransR,其中关系的实体对被分类到不同的组,同一组的实体对共享一个关系向量。相比较而言,TransG不需要对聚类的预处理。

简评

这篇文章的idea比较重要,考虑到一种关系存在的多语义问题,相当于对关系进行了细化,就是找到关系的隐形含义,最终从细化的结果中选出一个最佳的关系语义。这个在应用中很有意义,不同的语义可能需要不同的应对方法,可以借鉴。

KG2E:KG2E_learning to represent knowledge graphs with gaussian embedding

作者

Shizhu He, Kang Liu, Guoliang Ji and Jun Zhao

单位

National Laboratory of Pattern Recognition
Institute of Automation, Chinese Academy of Sciences, Beijing, 100190, China

关键词

Distributed Representation, Gaussian Embedding, Knowledge Graph

文章来源

CIKM 2015

问题

本文所解决的问题是知识图谱的表示问题(即将知识图谱表示为低维连续向量空间),本文使用Gaussian Distribution 来表示实体和关系,提出了用Gaussian Distribution的协方差来表示实体和关系的不确定度的新思想,提升了已有模型在link prediction和triplet classification问题上的准确率。

模型

传统的表示学习的表示学习的方法和计算比较复杂,自TransE模型诞生后,很多模型都是在TransE的基本思想上加以改进,KG2E模型也是一样。
KG2E模型使用高斯分布来表示实体和关系。
模型实例见下图:
model example

每个圆圈代表不同实体与关系的表示,它们分别于“Bill Clinton”构成三元组关系,圆圈大小表示的是不同实体或关系的不确定度。

模型算法流程图如下:
model algorithm

算法解读:
输入:训练集三元组,KG中所有的实体和关系,以及其它的一些参数。
输出:KG中所有实体和关系建模后生成的Gaussian Embeddings.(主要包含两个部分,均值(向量)和协方差(矩阵))
line 1到line 4主要是数据的归一化
line 5到line 15是算法实现部分:模型采用的是minibatch的训练方法,每一个minibatch的训练中都会进行负采样,并将负采样的样例和正例样例混合在一起学习,然后使用评分函数进行评估,要达到的目的是正例三元组的得分比负例三元组高或者低(高低取决于具体的评分而函数的设定)。在一次一次的迭代中不断更新结果,最后将得到的means和covariance进行正则化。

文章核心公式:
(1)评分函数
score function

(2)KL散度的能量函数

KL energy function

(3)期望概率能量函数
EL energy function

资源

数据集:
WN18
WN11
FB13K
FB15K

相关工作

(1)TransR,2015年AAAI,Learning entity and relation embeddings for knowledgh completition。

简评

创新点:
(1)以前的文章是属于point-based,KG2E是属于density-based的。
(2)提出了(un)certainty的概念,在建模过程中融入了关系和实体语义本身的不确定性的知识,使用高斯分布的协方差表示该实体或关系的不确定度,高斯分布的均值表示实体或关系在语义空间中的中心值。
(3)使用了新的score funciton:KL-divergence和expected likelihood
应用场景:link prediction,triplet classification,knowledge reasoning
不足之处:本文提出的方法在link prediction的many-to-many relations上的预测性能不是很好,主要原因是KG2E模型没有考虑实体的类型和粒度。

7.TranSparse

Knowledge Graph Completion with Adaptive Sparse Transfer Matrix

作者

Guoliang Ji, Kang Liu, Shizhu He, Jun Zhao

单位

中科院模式识别国家重点实验室

关键词

Knowledge Graph Embedding,Sparse Matrix

文章来源

AAAI 2016

问题

针对不同难度的实体间关系,使用不同稀疏程度的矩阵(不同数量的参数)来进行表征,从而防止对复杂关系欠拟合或者对简单关系过拟合。

模型

本文的模型与TransR类似,即对每一个关系r学习一个转换矩阵M_r,将h和t的向量映射到关系向量所在的空间。

不过本文注意到knowledge graph中面临两个问题,分别是heterogeneous(有的实体关系十分复杂,连接许多不同的实体)和unbalanced(很多关系连接的head和tail数目很不对等)。如果只使用一个模型应对所有情况的话可能会导致对复杂关系underfit,对简单关系overfit。因此本文认为需要对症下药,复杂的关系就需要下猛药(用有更多的参数的复杂模型),简单关系就简单处理(较少的参数)。

但是怎么实现这样灵活的建模?在方法上本文借用了SparseMatrix,如果关系比较复杂就用比较稠密的矩阵,如果关系简单则用稀疏矩阵进行表达。文章假设关系的复杂程度正比于包含该关系的triplet数目,并根据两类问题提出了对应的稀疏矩阵初始化方法。不过并没有提出同时解决两类问题的统一方案。

  • 针对heterogeneity问题的模型叫做TranSparse(share),模型参数sparse degree,theta_r,是由下列公式确定:

alt text
其中N_r是该关系r所连接的triplet数目,N_r*是数据集中最大的关系triplet数目。通过这个sparse degree我们就可以确定参数矩阵的稀疏程度了。entity的向量通过下式进行转换:
alt text

  • 针对imbalance问题提出的TranSparse(separate)方法也十分类似,即在关系的head和tail两端使用不同复杂度的matrix。sparse degree的公式与上面TranSparse(share)的几乎一样,只不过N_r和N_r*替换成了entity的个数。如果某一端要连接更多不同的entity,那么这一端就需要更复杂的模型来表征(matrix有更多非零参数)。

确定这个sparse degree之后,我们就可以初始化对应的稀疏参数矩阵了(原文中提到了Structured与Unstructured两种矩阵形式)。目标函数以及训练过程与其他工作一致,只不过在进行训练时我们只对矩阵中的非零部分进行更新。

最后模型在triplet分类和链接预测任务上进行实验,相比于先前模型取得了更好的成绩,不过相比于TranD优势并不十分明显。提出的两个模型中TranSparse(separate)的表现更好。

资源

数据集 WordNet http://wordnet.princeton.edu/wordnet/download/
数据集 Freebase http://developers.google.com/freebase/

相关工作

上面的相关工作已经介绍差不多了,这里不再赘述。

简评

TranSparse模型主要是为了解决关系和实体的异质性和不平衡性而提出,问题针对性强。

总结与展望

最近几年人们对知识表示方法的探究一直都在进行,知识表示学习对于计算机如何理解和计算知识的意义是重大的。在2013年embedding的思想出现之前,人们基本采用one-hot的表示方法来表示实体,近几年知识表示的核心思想就是如何找到合适的方法来将知识图谱emmbedding到向量空间,从而在向量空间中进行计算,并且也在这方面取得了不错的进展。

但知识表示学习仍然面临着挑战,主要包括以下几个方面:(1)对于多源知识融合的表示学习,如何将知识库中的文本等信息加入到学习中。(2)如何进行更加复杂的知识推理。(3)对于知识图谱无法表达的信息,应该进行如何表示和推理。(4)如何在知识库中融入常识信息。
参考文献说明:本文主要参考清华大学刘知远老师的《知识表示学习研究进展》这篇综述。

cs.CL weekly 2016.10.10-2016.10.14

一周值得读

Personalizing a Dialogue System with Transfer Learning

【对话系统】【迁移学习】面向具体任务的对话系统由于数据不充分,面临难以训练的尴尬境地。解决这一问题的方法之一是用迁移学习来做,本文提出了一种基于POMDP的迁移学习框架。并且在购买咖啡的实际场景中得到了应用,取得了不错的效果。港科大杨强老师是迁移学习领域的专家,而迁移学习是解决机器学习中领域数据过小问题的一种有效方法,现有的特有对话系统面临着这个问题,尤其是要求对话系统具有个性化的特点时。本文对于研究语音对话系统和聊天机器人都有一定的启发性。

Dialogue Session Segmentation by Embedding-Enhanced TextTiling

【chatbot】【上下文处理】本文研究的内容是开放域聊天机器人context处理的问题,当前聊天的内容很大程度上都会与之前的聊天内容有相关,但并不是每一句都相关,因此算好相关度很有必要。

Exploiting Sentence and Context Representations in Deep Neural Models for Spoken Language Understanding

【对话系统】【深度学习】本文是steve young组的一篇新文,旨在探索CNN表示对话句子和LSTM表示上下文信息在对话理解问题上的效果,相比于传统方法,DNN方法鲁棒性更强。

Latent Sequence Decompositions

【seq2seq】本文研究的内容是对seq2seq框架中输入和输出序列进行有意义分解的问题,而不是简单地分解为char,提出了一种Latent Sequence Decompositions框架,在语音识别问题上取得了不错的效果。其实不仅仅是语音识别问题,在用seq2seq框架时总会遇到OOV的问题,char是一种方法,但信息量太少,如果能够将word sequence分解为更加有意义的子序列,既兼顾了信息量,又降低了词表维度。对英文系的语言效果好一些,中文效果应该不会那么明显。

Diverse Beam Search: Decoding Diverse Solutions from Neural Sequence Models

【seq2seq】seq2seq框架中在解码阶段,常常会用beam search来从左至右、贪心地生成N个最好的输出,不仅仅效率低下,而且在很多复杂任务中效果不好。本文提出了一种新的搜索算法。算法会在解空间内exploration和exploitation,通过设定diverse的目标进行训练,得到结果。相比之下,本文的方法更加高效。并且在image caption、VQA和MT等任务中进行了验证。

Gated End-to-End Memory Networks

【seq2seq】【memory networks】端到端的记忆网络在简单的机器阅读理解任务上取得了不错的效果,但复杂的事实问答和对话理解相关的任务处理的并不好,原因在于记忆单元与模型之间交互复杂。本文针对该问题,提出了一种Gated记忆网络,取得了不错的效果。本文模型在机器阅读理解bAbI dataset和task-oriented 对话系统任务DSTC2中均取得了非常好的结果。

Neural Paraphrase Generation with Stacked Residual LSTM Networks

【paraphrase】本文提出用多层残差LSTM网络来做paraphrase的任务,得到了比之前seq2seq以及seq2seq+attention更好的效果。转述在某个角度上和标题生成(句子level摘要)类似,方法可借鉴。

SentiHood: Targeted Aspect Based Sentiment Analysis Dataset for Urban Neighbourhoods

【观点挖掘】【数据集】本文给出了一个观点挖掘的数据集,数据源来自Yahoo问答中与London相关的提问。这个数据集适合这样的场景,一段评论中包含了多个entity的多个aspect的观点,相互之间有一些比较。

Domain-specific Question Generation from a Knowledge Base

【问题生成】问答系统是一个热门研究领域,其关注点在于如何理解问题然后选择或者生成相应的答案。而本文研究的问题是如何根据知识图谱生成高质量的问题。提出高质量的问题难度很大,且看本文内容。

Compressing Neural Language Models by Sparse Word Representations

【语言模型】【提升效率】本文解决的是在学习语言模型时输出层词表过大的问题,词表过大导致效率过低,本文针对这一问题,提出了一种压缩方法,常见词用dense向量来表示,而罕见词用常见词的线性组合来表示。

一周资源

CCL & NLP-NABD 2016论文集

由Springer出版的CCL & NLP-NABD 2016论文集已经公布,并在10月10日-11月10日期间可以免费下载。免费下载方式如下:(1)访问会议首页;(2)点击该页面最新“会议论文下载”中的链接;(3)点击新页面的“Download Book (PDF, 35547KB)”按钮。

北京大学万小军老师组开源自动摘要小工具PKUSUMSUM

本组推出文档自动摘要小工具PKUSUMSUM,集成多种无监督摘要提取算法,支持多种摘要任务与多种语言,采用Java编写,代码完全开源,欢迎批评指正,也欢迎同行一起完善该工具。

斯坦福大学NLP组2016年秋季paper阅读周计划

斯坦福大学NLP组2016年秋季paper阅读周计划,挺多篇都是对话系统相关的。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
微博账号:PaperWeekly(http://weibo.com/u/2678093863
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

PaperWeekly 第九期

引言

深度生成模型基本都是以某种方式寻找并表达(多变量)数据的概率分布。有基于无向图模型(马尔可夫模型)的联合概率分布模型,另外就是基于有向图模型(贝叶斯模型)的条件概率分布。前者的模型是构建隐含层(latent)和显示层(visible)的联合概率,然后去采样。基于有向图的则是寻找latent和visible之间的条件概率分布,也就是给定一个随机采样的隐含层,模型可以生成数据。

生成模型的训练是一个非监督过程,输入只需要无标签的数据。除了可以生成数据,还可以用于半监督的学习。比如,先利用大量无标签数据训练好模型,然后利用模型去提取数据特征(即从数据层到隐含层的编码过程),之后用数据特征结合标签去训练最终的网络模型。另一种方法是利用生成模型网络中的参数去初始化监督训练中的网络模型,当然,两个模型需要结构一致。

由于实际中,更多的数据是无标签的,因此非监督和半监督学习非常重要,因此生成模型也非常重要。本篇主要介绍一种基于对抗模式的生成模型,GAN - 从第一篇提出此模型的论文开始,之后紧接着两篇基于它的实现以及改进。三篇文章一脉相承,可以看到结合这种模型的研究进展及方向。

Generative Adversarial Nets

作者

Ian J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, Yoshua Bengio

单位

Universite of Montreal

关键词

生成模型 (Generative model)

文章来源

NIPS 2014

问题

通过模拟对抗过程,提出一种新的生成模型框架

模型

  • 建模

在对抗生成模型中,同时训练两个网络,第一个网络是生成网络,G(z),输入z一般是来自常见概率分布函数的样本向量,维度一般比较低,比如100。生成网络输入向量z,输出图片样例,如果使用卷机网实现的话,整个网络可以看过一个反向的CNN,其中的卷积层替换成 transposed convolution layer。第二个网络是识别网络discriminator net - D(x),输入为一张图片x,而输出为一个标量,用来代表x来自真实图片的概率。

  • 训练

整个网络的loss定义为

V = E’[log D(x)] + E’’[log (1 - D(G(z)) )]
E’ - 当x来自真实数据的期望
E’’ - 当x来自生成网络的期望

很显然,在对抗网络中,生成模型希望能够增大D(G(z)),即,希望生成的图片越真实而让识别模型“误以为”是来自真实的图片集。

如果生成网络G的参数用theta表示,识别模型的参数用theta_d表示,在使用SGD训练的时候,两组参数分别进行训练,对于D来说,需要对上面的公式求Gradient,但是只更新自己的参数。对G来说,只有第二项是相关的,而且可以等效的转换为maximize log D(G(z))。两个网络的参数更新交替进行。

资源

网上有很多实现,比如:

goodfeli/adversarial: Theano GAN implementation released by the authors of the GAN paper.
Newmu/dcgan_code: Theano DCGAN implementation released by the authors of the DCGAN paper.
carpedm20/DCGAN-tensorflow: Unofficial TensorFlow DCGAN implementation.

这些实现一般都会包含MNIST测试集。

相关工作

其他的生成模型包括restricted Boltzmann machine (RBM), deep Boltzmann machine (DBM) 以及 variational autoencoder

简评

其他生成模型中训练过程涉及intractable的计算,在实际实现时往往采取马尔可夫链模特卡洛采样(MCMC)。对抗生成模型(GAN)则不需要,整个网络的训练可以使用backpropagation来实现。

缺点包括训练不稳定,生成网络会塌陷到某些数据点(比如这些数据点目前看最像真实数据,生成网络会不停生成这些数据点),接下来的几篇中将提及如何改进。

[Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks] (https://arxiv.org/abs/1511.06434)

作者

Alec Radford, Luke Metz, Soumith Chintala

单位

facebook

关键词

DCGAN, Representation Learning

文章来源

ICLR 2016

问题

基于深度卷积网络的生成对抗模型(DCGAN)实现

模型

在GAN的论文中提出的对抗模型的原型,但是对抗模型是一个大的框架,并不局限于某种网络实现。本文给出了基于卷机网的实现。

生成网络
gen-architecture

其中反卷积的过程是

padding_strides_transposed

识别网络是传统的CNN

discrim-architecture

简评

本文紧密承接上篇论文,描述了实现过程中的细节,比如参数设置。也提到了解决GAN中训练不稳定的措施,但是并非完全解决。文中还提到利用对抗生成网络来做半监督学习。在训练结束后,识别网络可以用来提取图片特征,输入有标签的训练图片,可以将卷基层的输出特征作为X,标签作为y做训练。

Improved Techniques for Training GANs

作者

Tim Salimans, Ian Goodfellow, Wojciech Zaremba, Vicki Cheung, Alec Radford, Xi Chen

单位

OpenAI

关键词

DCGAN

文章来源

ICLR 2016

问题

提出改进DCGAN的措施

模型

这篇论文同样跟前文非常紧密,具体针对DCGAN中的问题,提出了改进方法。具体有

  • feature matching 解决训练不稳定instability的问题
  • minibatch discrimination 解决生成网络生成图片集中的问题,原理是让识别网络一次看一组图片,而不是一张图片
  • 如果对实现感兴趣,其他改进细节可以参见论文

简评

对抗生成网络的模型很有意思,Bengio, Hinton等都表达了很高的评价。相对其他生成模式而言,对抗生成模式模型清晰简单,目前来看效果也比较不错。但是目前对抗生成网络也有很多问题,比如生成模型是通过来自概率分布的向量生成样本,而不是直接表示输入的概率分布,因此,生成的图片可能不稳定之类。此外,希望能看到GAN在语言模型中的应用。

总结

GAN这种模型非常新颖,从论文中的结果来看,在图像生成上取得了不错的效果,对于MNIST这种简单的图形数据集,生成的图片已经可以“以假乱真”。对于另外的图片,比如在第二篇论文中的LSUN bedroom图片集以及人脸图片集上,生成的图片效果也不错(分辨率64×64)。
GAN目前来看已经卷积网络图像生成中取得了不错的效果,但是还有很多问题需要继续研究改进, 比如
如何生成高像素高质量的图片。目前一般像素不超过64。
如何提高复杂图片的质量。目前在CIFAR,ILSVRC等图片集上训练生成的图片还是很糟糕。
如何提高整个模型的稳定性。在实际中,尤其对于复杂图形,生成器经常很快收敛到某些单个数据集,使得整个模型的训练陷入僵局。
如何在其他领域,比如NLP使用GAN,如何将GAN和LSTM结合的。目前来看,还没有成功的应用。原文作者在reddit上回答内容来看,由于GAN的输入是采样自连续分布,而NLP中,每个单词的表达往往是离散的,作者提到NLP可以用增强训练的方法替代。但是也不排除可以有其他方法将GAN和LSTM结合起来的,这也是以后的一个研究点。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
qrcode_for_gh_5138cebd4585_430 -2-

微博账号:PaperWeekly(http://weibo.com/u/2678093863
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

cs.CL weekly 2016.10.03-2016.10.07

一周值得读(偏学术)

Controlling Output Length in Neural Encoder-Decoders

本文针对encoder-decoder框架在应用时无法控制生成序列长度(比如文本摘要)的问题,作者提出了一种基于学习的模型来解决这个问题。encoder-decoder框架已经被成功应用于各大任务中,加上attention,不同变种的attention,研究的人很多。本文也是属于变种之一,考虑了在实际应用中文本摘要长度需要被控制的问题,提出了本文的模型。

Embracing data abundance: BookTest Dataset for Reading Comprehension

【数据福利】本文发布了一个新的机器阅读理解数据集BookTest,该数据集最大的亮点是规模大,是Facebook发布的Children’s Book Test的60倍之大。

Visual Question Answering: Datasets, Algorithms, and Future Challenges

【综述】这是一篇Visual Question Answer任务的综述性文章,系统地总结、讨论和对比了近几年该领域的数据集和算法,并给出了一些该领域未来的研究方向。

Multi-View Representation Learning: A Survey from Shallow Methods to Deep Methods

【综述】本文是一篇2015年出版的多模态表示学习的综述文章,非常适合刚刚了解或者准备进入这个领域的童鞋来读。

Neural-based Noise Filtering from Word Embeddings

词向量已经是NLP中各任务的基础部件,对词向量的研究工作也非常多。本文研究的切入点是从语料中的噪声入手,提出了两种无监督去噪模型,取得了不错的效果。

一周值得读(偏应用)

Learning to Translate in Real-time with Neural Machine Translation

本文研究的内容实时机器翻译,与传统的翻译问题不同,该任务需要在翻译质量和速度两个方面寻找一个平衡点,NMT已经证明了其强大的实
力,在此基础上用增强学习做训练,以满足两个方面的需求。

A Tour of TensorFlow

本文系统的剖析了TensorFlow的计算图架构和分布式执行模型,并且系统地对比了TF和其他框架的性能。本文的结论对于框架选择困难的童鞋有一定参考意义,内容对于有志于深挖TF原理和想开发框架的童鞋具有较强的指导意义。对于立志于成为一名TFBoys(TensorFlow)的童鞋,本文是一篇不错的文章。

一周资源

Chatbots – Conversational UI and the Future of Online Interaction | Swat.io Blog

研究chatbot的童鞋,这本电子书值得一看,或许会有一些思考和启发!

王威廉老师关于如何做科研的微博

“什么是研究?本科生如何做好研究?我今天在组会上简单地给组里的本科生介绍了一点个人做研究的经验,与大家分享一下。”

Configuring Eclipse with Torch – Lighting Torch

将Torch配置到Eclipse中进行开发和调试。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
qrcode_for_gh_5138cebd4585_430 -2-

微博账号:PaperWeekly(http://weibo.com/u/2678093863
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

PaperWeekly 第八期

引言

SIGDIAL是ACL所属的关于对话系统的兴趣小组,SIG的文章针对性比较强,但文章的质量良莠不齐,本期给大家精心挑选了4篇SIGDIAL 2016的文章,带着大家一起来看看对话系统最新的研究成果。4篇文章分别是:

1、Joint Online Spoken Language Understanding and Language Modeling with Recurrent Neural Networks, 2016
2、Neural Utterance Ranking Model for Conversational Dialogue Systems, 2016
3、A Context-aware Natural Language Generator for Dialogue Systems, 2016
4、Task Lineages: Dialog State Tracking for Flexible Interaction, 2016

Joint Online Spoken Language Understanding and Language Modeling with Recurrent Neural Networks

作者

Bing Liu, Ian Lane

单位

Carnegie Mellon University, Electrical and Computer Engineering

关键词

Spoken Language Understanding, RNN

文章来源

SIGDIAL 2016

问题

如何将自然语言理解的两大问题和语言模型结合在同一个模型中进行训练,以达到实时理解语言的目的?

模型

特定任务下的Chatbot在理解人类语言时需要重点解决好两个问题:意图识别(Intent Detection)和槽填充(Slot Filling),本文提出一种融合Intent Detection、Slot Filling和Language Model的模型,相比于之前的模型,本文模型的一大优势在于做自然语言理解的时候不需要等待整个word sequence完整展现,而是可以在线处理每一个arrived word。如下图:
3

意图识别是个典型的多分类任务,而槽填充是个典型的序列标注任务。RNN的每个step都以当前word作为输入,输出是意图class、该word的label和下一个word,每个step的隐层都包含了之前所有的word、class、label信息。此模型为基本模型,在此基础上做了一些变形,得到下面四个变种:

4

文章在Airline Travel Information Systems(ATIS)数据集上进行了实验,在语言模型评测指标和意图识别分类准确率上相比之前的模型都得到了一定地提升。

资源

本文Code: http://speech.sv.cmu.edu/software.html
ATIS Dataset: https://github.com/mesnilgr/is13

简评

本文的创新点在于将意图分类、槽填充和语言模型三者合一,相比之前的独立模型来说,每一步产生的信息更多,在预测下一步的时候context内容更加丰富,从而提高了识别的准确率和降低了语言模型的混乱度。

NLP中的很多任务都可以归纳为根据context来预测某一个word、label或者class这种范式,解决的思路也都基本类似,RNN或者GRU、LSTM作为encoder和decoder,配上attention机制来提升结果,context的信息量和质量直接影响着预测的效果,user information、user profile等等都可能作为context来构建模型,得到更好的结果。

Neural Utterance Ranking Model for Conversational Dialogue Systems

作者

Michimasa Inaba, Kenichi Takahashi

单位

Hiroshima City University, 3-4-1 Ozukahigashi, Asaminami-ku

关键词

Ranking Model, Utterance Selection

文章来源

SIGDIAL 2016

问题

在做检索式对话时,对话语句该怎样表示,context信息该怎样引入到模型中?

模型

本文实现的是一个检索式的对话模型,模型分为两部分,分别是:
1、Utterance Encoding
检索式对话,对话语句的encoding是很重要的一部分,文中使用了RNN encoder模型来实现对语句的encoding。在训练过程中,作者把encoder生成的向量,在decode成一个目标语句,即通过一个完整的seq2seq模型来训练encoder。
2、Ranking Candidate Utterances
在对候选语句排序时,作者考虑到了context的问题,他把前几次说的语句分别encode成向量,并依次输入到LSTM。如下图所示:

5

图中u1到un是整个对话中的前n句话,ai是第i个候选语句。模型中,分别把u1…un以及ai分成用户说的和系统本身输出的,在输入到各自的RNN encoder中,得到向量vu1…vu和vai。最后将向量依次输入到RNN中,得到yai作为候选语句ai在当前context中的得分。
因为本文是一个ranking model,更关注的是候选语句的排序,最后候选集分数列表会转换成TOP 1的概率分布。并使用cross-entropy作为loss function。

简评

本文有两个创新点,首先通过单独训练seq2seq模型,来学习对话语句的encoder,从而降低了整个模型的学习成本,减少了需要标注的数据量。然后在排序模型中将对话的前几句语句有序输入到LSTM,达到融入了context信息的目的。

A Context-aware Natural Language Generator for Dialogue Systems

作者

Ondrej Dusek, Filip Jurcicek

单位

Charles University

关键词

Context-aware, Seq2seq

文章来源

SIGDIAL 2016

问题

如何使得task-oriented的对话生成系统中生成更加自然的回复?

模型

本文是ACL2016 short paper Sequence-to-Sequence Generation for Spoken Dialogue via Deep Syntax Trees and Strings一文的拓展。原文提出基于seq2seq模型的将DA(dialogue acts)生成response的方案,其中输入是三元组(DA type,slot,value)的one-hot representation,输出是对应的response。如下图:

6

延续原文的工作,作者为了使得生成的回复更加自然,将前面用户的提问也encode进来,具体是在原来模型的基础上加了两个encode的部分。Prepending context是把用户的问题和DA三元组前后拼接成新的表示再feed into encoder(这里要注意问题的dictionary和DA是不一样的)。Context encoder则是把单独把问题encode成和Prepending context相同大小的向量,再将两个encoder得到的向量拼接就得到最后的hidden states。最后decode部分仍然沿用lstm+attention的方法。如下图:

7

文章在Alex Context NLG Dataset数据集上进行了实验,在BLEU/NIST scores和人工评价两方面成绩都得到了一定地提升。

资源

本文Code: https://github.com/UFAL-DSG/tgen
Alex Context NLG Dataset: https://lindat.mff.cuni.cz/repository/xmlui/handle/11234/1-1675

简评

本文的创新点在于将用户的问题也就是context显式的加入到模型中,相比之前的模型来说,生成的回复会更符合语境。先前的工作旨在将rule-based符号和seq2seq模型结合自动生成回复,本文的改进让一部分context得到保留,使得生成的回复内容更加丰富,从而显得自然不突兀。

Task Lineages: Dialog State Tracking for Flexible Interaction

作者

Sungjin Lee, Amanda Stent

单位

Yahoo Research

文章来源

SIGDIAL 2016

关键词

complex interactions in spoken dialog system, Task Lineage-based Dialog State Tracking

问题

​如何将复杂的判别式模型来做DST,并且应用于复杂场景对话系统?

模型

本文在之前Dialog State Tracking方法的基础上提出了Task Lineage-based Dialog State Tracking(TL—DST)。本模型包括三个组成部分:
1、Task Frame Parsing,返回K-best task frame parses, task frame parses结构如下图:

1

2、Context Fetching,在不同的phenomena中,根据不同的conversation history返回不同的相关信息。
3、Task State Update,可以通过调节context window参数选择使用不同的dialog state tracking方法。

本文模型(TL-DST)处理流程如下图所示:
2

在t轮,给定句子u,利用task frame parsing生成K-best task frame parses H,给定task frame f,task lineage l, agent output m,利用context features返回相关信息c。

本文在Dialog State Tracking Challenge 的DSTC2和DSTC3数据集上进行了实验,均取得了较baseline好的结果。

资源

Dialog State Tracking Challenge比赛介绍: https://www.microsoft.com/en-us/research/wp-content/uploads/2016/06/williams2016dstc_overview-1.pdf

简评

本文基于DST的方法来处理口语对话系统中的多任务,跨领域,复杂目标的问题,由于缺乏多任务,跨领域,复杂目标的口语对话系统的数据集,本文实验在DSTC2和DSTC3上进行, 并取得了比baseline好的效果。将来的工作是要将TL-DST方法应用于真实环境中的多领域对话评估。

总结

对话系统(Dialogue Systems)是当前工业界最热门的方向之一,去掉语音部分,该问题退化为聊天机器人(chatbot)问题,两者虽然在输入处理中存在一定的差异,但自然语言理解、对话管理和自然语言生成等核心部件都是一样的,面临的很多问题都是共同的,所以相关的研究或多或少都会有参考意义。上下文(context)的理解和处理是一个重要的环节,直接决定了该bot是智能还是智障,挺多的paper都是针对这一问题进行研究的,但在实际应用当中,context的处理仍然不尽如人意,过多依赖人工设置,更像是一种触发开关,存在大量的if…else…。

seq2seq生成式的解决方案初见效果,但离真正应用还有很长的路要走,template-based和rule-based仍是主流解决方案,尤其是在面向具体任务的bot情景中。那么,直接生成回答很难的话,退一步来想这个问题,能否将seq2seq用在template或者rule的自动生成上?能否将paper中多信息融合(比如:user profile、dialogue context)的成果应用在当前bot的某一个阶段?能否训练一个bot simulator来丰富训练数据?每一篇paper都会有一些创新点,可能有的创新点是为了创新而创新,但总归会带来一定的思考和借鉴,尤其是针对某一个细节问题,我想这是paper对于工业界的参考意义,而不是说从paper中完全抠出一个成熟的解决方案来套,甚至把dataset和code都release出来,典型的“拿来主义”。

以上为本期Paperweekly的主要内容,感谢lshowway、zhangjun、zhangboyu和suhui四位同学的整理。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
qrcode_for_gh_5138cebd4585_430 -2-

微博账号:PaperWeekly(http://weibo.com/u/2678093863
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

cs.CL weekly 2016.09.26-2016.09.30

一周值得读(偏学术)

HyperNetworks

an approach of using a small network, also known as a hypernetwork, to generate the weights for a larger network. 工作来自Google Brain。介绍HyperNetworks的博客:http://blog.otoro.net/2016/09/28/hyper-networks/

Incorporating Relation Paths in Neural Relation Extraction

本文研究内容为实体关系抽取,传统方法往往只利用同时包含两个目标实体的句子,而忽略包含单目标实体的句子,本文针对这一问题,在俩目标实体之间构建了一个用于推理的中间实体,并提出一种基于路径的关系抽取模型,实验结果表明该模型很好地利用了包含单目标实体的句子信息。本工作来自于刘知远老师组里。

Language as a Latent Variable: Discrete Generative Models for Sentence Compression

本文研究内容为句子压缩,作者提出了一种VAE模型,先根据背景语言模型生成一个latent摘要句子,然后根据latent句子生成目标句子。实验中用到了抽取式和摘要式两种监督方法,并在最后探索出半监督方法的效果可能会好于监督学习的方法。句子压缩任务可以看做是sentence-level的文本摘要任务,本文的方法同样可以启发文本摘要任务的研究。本文工作来自deepmind,并且是EMNLP 2016 Accepted。

Annotating Derivations: A New Evaluation Strategy and Dataset for Algebra Word Problems

本文研究的内容很有意思,是algebra word problems,是自动求解代数问题的基础,这个问题可以等同为一个semantic parsing的问题,模型通过读入一段文本,理解其意思,然后构造出一个方程,最后给出方程的解。作者还给出了一个新的dataset和评价标准,本文工作来自伊大香槟分校和微软研究院。这个task本身非常有意思,也很有难度。

Online Segment to Segment Neural Transduction

本文针对之前encoder-decoder模型面临的一个瓶颈,即将输入全部读入并保存为一个固定大小的hidden states,作者提出了一种新的attention机制,将attention权重作为一种隐变量,在句子摘要上证明了效果,本文工作来自deepmind。

一周值得读(偏应用)

Google’s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation

本周最受关注,也备受争议的一篇paper,Google放出了他们最新一代的机器翻译系统,一种神经网络翻译系统。指标上的提升,说明了效果确实有提升,但不代表具体到每一句话都能令人满意。

UbuntuWorld 1.0 LTS - A Platform for Automated Problem Solving & Troubleshooting in the Ubuntu OS

本文给出了一个Ubuntu系统问题咨询和错误排查的bot,可以在bash terminal中运行,通过增强学习进行训练,可以回答一些基本的问题和错误排查。demo bot被封装成一个python package,即插即用。回答问题的数据来自于Ask Ubuntu。测试了DQN在特定领域bot中的效果,定义了几组简单的命令作为action,open/close,install/remove等等,technical support是客户服务中难度非常大的一类,本文尝试了用一种完全端到端+增强学习的方案来探索解决此类问题。

Character Sequence Models for ColorfulWords

本文研究的内容非常有意思,输入一个word,输出这个word对应的color并着色。作者构建了一组大型的color-name对数据集,来做一个color图灵测试。该系统的demo地址:http://colorlab.us./

Equation Parsing: Mapping Sentences to Grounded Equations

本文研究的内容非常有趣也很有实际意义,即从文本中抽取出数学关系,作者将该任务定义如下:给定一句话,抽取出其中的变量和数学关系,并用方程表示。这个研究可以被应用在新闻机器人上,财经、体育等。

Inducing Multilingual Text Analysis Tools Using Bidirectional Recurrent Neural Networks

资源稀缺语言的标注问题是一个经典的问题,一般的做法是将资源丰富的语音对齐映射过去进行标注,自动词对齐的错误会影响最终的效果。本文针对这个问题,提出了一种BiRNN模型,并且融合外部信息解决问题。该模型具有以下特点:1、不需要词对齐信息;2、不限定语言,可用于多种资源少的语言;3、提供一种真正的多语言tagger。

一周资源

THULAC

THULAC.so:一个高效的中文词法分析工具包,为了满足Python下分词对速度的要求,发布了一个产生.so文件的THULAC版本,并且提供Python调用的示例代码。这样THULAC在Python下的分词速度得到大幅度提高。

tinyflow

DMLC陈天奇开放了一个两千行代码的样例项目,教你如何从头开始打造一个和TensorFlow一样API的深度学习系统。其中涉及到一个非常重要的开源库NNVM,地址: https://github.com/dmlc/nnvm 。博客介绍:http://dmlc.ml/2016/09/30/build-your-own-tensorflow-with-nnvm-and-torch.html ,中文版:http://weibo.com/ttarticle/p/show?id=2309404025388832575825#_0

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
qrcode_for_gh_5138cebd4585_430 -2-
微博账号:PaperWeekly(http://weibo.com/u/paperweekly
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

PaperWeekly 第七期

引言

神经网络机器翻译(NMT)是seq2seq模型的典型应用,从2014年提出开始,其性能就接近于传统的基于词组的机器翻译方法,随后,研究人员不断改进seq2seq模型,包括引入注意力模型、使用外部记忆机制、使用半监督学习和修改训练准则等方法,在短短2年时间内使得NMT的性能超过了传统的基于词组的机器翻译方法。在27号谷歌宣布推出谷歌神经网络机器翻译系统,实现了NMT的首个商业化部署,使得NMT真正从高校实验室走向了实际应用。本期Paperweekly的主题是神经网络机器翻译下的字符级方法,主要用来解决NMT中的out-of-vocabulary词问题,分别是:

  1. A Character-Level Decoder without Explicit Segmentation for Neural Machine Translation,2016
  2. Achieving Open Vocabulary Neural Machine Translation with Hybrid Word-Character Models,2016
  3. Character-based Neural Machine Translation,Costa-Jussa, 2016
  4. Character-based Neural Machine Translation,Ling, 2016
  5. Neural Machine Translation of Rare Words with Subword Units,2016

A Character-Level Decoder without Explicit Segmentation for Neural Machine Translation

作者

Junyoung Chung, Kyunghyun Cho, Yoshua Bengio

单位

Universite de Montreal

关键词

Segmentation, Character-level, Bi-scale recurrent network

文章来源

ACL 2016

问题

能否在不需要分词的前提下直接在字符级进行神经机器翻译。

模型

在讲模型之前,本文花了大量篇幅论证为何需要在不分词的前提下进行字符级翻译,首先作者总结了词级翻译的缺点。

词级翻译的缺点包括:

  1. 任何一个语言都没有完美的分词算法,完美的分词算法应该能够将任意句子划分为lexemes和morphemes组成的序列
  2. 导致的问题就是在词典中经常充斥着许多共享一个lexeme但有着不同morphology的词,比如run,runs,ran,running可能都存在于词典中,每个词都对应一个词向量,但是它们明显共享相同的lexeme——run
  3. 存在unknown word问题和rare word问题,rare word问题是指某些词典中词在训练集中出现次数过少,导致无法训练得到很好的词向量;unknown word问题是指不在词典中的词被标记为UNK(OOV词)

接着作者指出使用字符集翻译可以解决上述问题:

  1. 使用LSTM或GRU可以解决长时依赖问题
  2. 使用字符级建模可以避免许多词态变形词出现在词典中

然而上述字符级方法依然需要进行分词,然后对每个词的字符序列进行编码,因此引出了本文的motivation,即是否能直接在不分词的字符序列上进行翻译。

本文使用的模型同样是经典的seq2seq模型,其创新点主要在decoder端,引入了一种新的网络结构biscale RNN,来捕获字符和词两个timescale上的信息。具体来说,主要分为faster层和slower层,faster层的gated激活值取决于上一步的faster和slower层的激活值,faster层要想影响slower层,则必须要是faster层处理完当前数据,并且进行重置。换句话说,slower层无法接受faster层输入,直到faster层处理完其数据,因此比faster层要慢,而这样的层次结构也对应字符和词在timescale上的关系。下图为网络结构示意图。

1-figure1

在4种语言翻译任务上的实验显示完全可以在不分词的情况下进行字符级翻译,性能优于state-of-the-art的非神经翻译系统

相关工作

Sennrich ACL2016提出使用BPE算法对subword建模。Kim AAAI2016中提出直接对字符进行encode,Costa-jussa ICLR2016中将该模型用在了NMT任务中。Ling ICLR2016的工作中使用Bi-RNN来编码字符序列。以上工作基于字符级展开,但它们都依赖于知道如何将字符分为词,即分词。本文研究能否在不分词的情况下进行字符级翻译。

简评

本文是Bengio组工作,Bi-scale RNN受启发于该组之前提出的GF-RNN,本文创新点主要是提出了一种新的RNN结构,可以在字符和词两个timescales上进行处理,输出字符序列不需要进行分词。不足是未考虑encoder端是否也可以直接使用未分词的字符序列,而是仅仅使用了分词后的BPE序列。

Achieving Open Vocabulary Neural Machine Translation with Hybrid Word-Character Models

作者

Minh-Thang Luong and Christopher D. Manning

单位

Stanford University

关键词

OOV, hybrid word-character models, NMT

文章来源

ACL 2016

问题

机器翻译里面的OOV问题, 如何处理UNK

模型

提出了一种混合word-character的NMT模型.在训练难度和复杂度不是很高的情况下,同时解决源语言和目标语言的OOV问题.
2-1

这个图表达了模型的整体思路. 大多数情况下,模型在word-level进行translation. 当出现unk的时候,则会启用character-level的模型. 对source unk, 由character-level模型来得到它的representation; 对target unk, 用character-level模型来产生word.

  1. 整体上采用他们组以前提出的基于global attention的encoder-decoder模型. RNN采用的是deep LSTM.
  2. 源语言端和目标语言端的character-level模型都是基于character的deep LSTM. 对源语言端来说, 它的character-level模型是context independent的. 隐层状态全部初始化为0, 因此在训练时可以预先计算mini-batch里的每一个rare word的representation. 而对于目标语言端来说, 它的character-level模型是context dependent的.它的第一层的hidden state要根据当前context来初始化, 其它部分都初始化为0.训练时, 在目标语言的decoder阶段, 首先用word-level的decoder产生句子, 这时句子里包含了一些unk. 接着对这些unk, 用character-level模型以batch mode来产生rare word.
  3. 对于目标语言端character-level模型的初始化问题, 作者提出了两种方法来表示当前的context. 一种叫做same-path, 用预测的softmax层之前的ht来表达. 但是因为ht是用来预测的, 所以所有ht的值都会比较相似,这样很难用来产生不同的目标rare word. 因此作者提出了第二种表达叫做separate-path, 用ht’来表达context. ht’不用预测unk, 是专门作为context在character-level的输入的. 它的计算方法和ht’相同,只是用了一个不一样的矩阵.
  4. 模型训练的目标函数是cross-entropy loss, 同时考虑了word level和character level的loss.

相关工作

NMT的模型分为word-level和character-level的. 对于word-level模型,要解决OOV问题, 之前的工作提出了unk replacement(Luong et al. 2015b), 使用大字典并在softmax时进行采样(Jean et al. 2015), 对unk进行Huffman编码(Chitnis et al. 2015)等方法. 而对于character-level的模型, 本身可以处理OOV词, 但是训练难度和复杂度会增加.

简评

本文的创新之处在于提出了混合word-character model的NMT模型. 这个混合模型结合了二者的优点, 在保证模型复杂度较低的同时,实现了很好的效果.因为加入了character, 特别适合单词有丰富变形的语言.

Character-based Neural Machine Translation

作者

Marta R. Costa-jussa and Jose A. R. Fonollosa

单位

TALP Research Center
Universitat Politecnica de Catalunya, Barcelona

关键词

NMT,character-based word embeddings,CNN

文章来源

ICLR2016

问题

本文提出使用character-based word embeddings的NMT,可以在一定程度上克服机器翻译中OOV问题。

模型

3-encoder_decode

如上图所示,这篇论文使用的基本模型架构是一个带attention机制的seq2seq的encoder-decoder的架构,使用的神经网络单元是GRU。encoder把源句子转化成一个向量(双向),使用attention的机制来捕获context信息,decoder把context解码成目标句子。网络的输入仍然使用word embedding,但是作者在获取word embedding的时候使用的方法不同。本文是基于词中的character来生成word embedding的,具体方法如下图所示。
3-embedding

上图中,最底层是一个character-based embedding组成的序列,对应的是每个词中的字母。然后这个序列被送入一个由不同长度的一维卷积过滤器组成的集合中进行处理,不同的长度对应单词中不同数量的字母(从1到7)。对于每个卷积过滤器,只取最大的值作为输出。然后把每个卷积过滤器输出的最大值连接起来组成一个向量。最后这个向量再通过两层Highway layer的处理作为最终的word embeddings。这个方法的详细信息可以参考Kim的论文Character-Aware Neural Language Models(2016)。

资源

  1. 本文数据集[German-English WMT data] (http://www.statmt.org/wmt15/translation-task.html)
  2. 建立对比模型使用的软件包DL4MT

相关工作

(1)2003年,基于短语的统计机器翻译模型。Statistical Phrase-Based Translation

(2)2013年,基于神经网络的机器翻译模型。Recurrent continuous translation models

(3)2014年,seq2seq的神经网络模型用于机器翻译。Sequence to sequence learning with neural networks

简评

本文作者将基于character来产生word embedding的方法应用于机器翻译,可以在一定程度上克服OOV的问题。同时,由于利用了单词内部的信息,这篇论文提出的方法对于词形变化丰富的语言的翻译也产生了更好的效果。但是,作者只是在source side使用了上述方法,对于target side,仍然面临词典大小的限制。

CHARACTER-BASED NEURAL MACHINE TRANSLATION

作者:

Wang Ling, Isabel Trancoso, Chris Dyer, Alan W Black

单位

  1. LF Spoken Systems Lab,Instituto Superior Tecnico Lisbon, Portugal
  2. Language Technologies Institute, Carnegie Mellon University Pittsburga, PA 15213, USA

关键词

NMT, Character-Based

文章来源

ICLR 2016

问题

尝试在字符级别上应用神经机器学习方法

模型

在带注意力机制的神经机器学习模型的前后端增加字符到词(C2W)和词向量到字符(V2C)的模块。

4-C2

图中,小矩形是一个双向LSTM,双向LSTM的前向和后向的最终状态以及bias之和为词的向量表示。

4-V2

这个模块主要由三个步骤组成:

  1. 将字符转换为向量表示。
  2. 将字符向量和之前模型产生注意力向量的a和目标词在前向LSTM中产生的向量表示做拼接并输入到LSTM。
  3. 将得到的向量输入到softmax层得到结果。

相关工作

  1. Neural machine translation by jointly learning to align and translate.

简评

这篇文章在基于注意力机制的机器翻译模型上增加了两个模块。由于是基于字符集别的模型,该模型自然可以学得一些语言中的前后缀在翻译中的关系。此外,基于字符级别的模型在翻译未知词时有灵活性。可是,文中也提到,该模型为能够准确的翻译未知词。并且该文也没有明确表明该模型和其他模型相比具有哪些明显的优势。从实际上来说,该模型在V2C部分的训练速度慢是一个很大的弱点,因此若仅根据文章的表述,该模型的实际应用价值应该有限。

Neural Machine Translation of Rare Words with Subword Units

作者

Rico Sennrich and Barry Haddow and Alexandra Birch

单位

School of Informatics, University of Edinburgh

关键词

NMT;Rare Words;Subword Units;BPE

文章来源

ACL 2016

问题

NMT中的OOV(集外词)和罕见词(Rare Words)问题通常用back-off 词典的方式来解决,本文尝试用一种更简单有效的方式(Subword Units)来表示开放词表。

模型

本文从命名实体、同根词、外来语、组合词(罕见词有相当大比例是上述几种)的翻译策略中得到启发,认为把这些罕见词拆分为“子词单元”(subword units)的组合,可以有效的缓解NMT的OOV和罕见词翻译的问题。
子词单元的拆分策略,则是借鉴了一种数据压缩算法:Byte Pair Encoding(BPE)(Gage,1994)算法。该算法的操作过程和示例如Figure1所示。
5-Fig1

不同于(Chitnis and DeNero,2015)提出的霍夫曼编码,这里的压缩算法不是针对于词做变长编码,而是对于子词来操作。这样,即使是训练语料里未见过的新词,也可以通过子词的拼接来生成翻译。
本文还探讨了BPE的两种编码方式:一种是源语言词汇和目标语言词汇分别编码,另一种是双语词汇联合编码。前者的优势是让词表和文本的表示更紧凑,后者则可以尽可能保证原文和译文的子词切分方式统一。从实验结果来看,在音译或简单复制较多的情形下(比如英德)翻译,联合编码的效果更佳。
实验结果分别在WMT15英德和英俄的任务上得到1.1和1.3个BLEU值的提升。

资源

本文提出的子词拆分算法代码在 https://github.com/rsennrich/subword-nmt
实验所用的NMT系统为Groundhog: github.com/sebastien-j/LV_groundhog
实验数据来自WMT 2015

相关工作

OOV的处理一直是机器翻译研究的重点。
基于字符的翻译在短语SMT模型中就已被提出,并在紧密相关的语种对上验证是成功的(Vilar et al., 2007; Tiedemann,2009; Neubig et al., 2012)。 此外还有各种形态素切分方法应用于短语模型,(Nießen and Ney,2000; Koehn and Knight, 2003; Virpioja et al.,2007; Stallard et al., 2012)。
对于NMT,也有很多基于字符或形态素的方法用于生成定长连续词向量(Luong et al., 2013; Botha and Blunsom, 2014; Ling et al., 2015a; Kim et al., 2015)。与本文类似的一项工作 (Ling et al., 2015b)发现在基于词的方法上没有明显提升。其与本文的一个区别在于,attention机制仍然在词层级进行操作,而本文在子词层级上。

简评

这篇文章的创新点在于提出了一种介乎字符和单词之间,也不同于字符n-gram的文本表示单元,并借鉴BPE压缩算法,在词表大小和文本长度两个方面取得一个较为平衡的状态。应用在非同源/近源的语言对(如英汉)是否可以有类似的效果,尚待研究。在NMT模型的优化上,也还有探讨的空间。
本文的实验评价方法值得学习,单看BLEU值并不觉得有惊艳之处,但加上CHR F3和(对所有词、罕见词和集外词分别统计的)unigram F1这两个评价指标,尤其是Figure2和3画出来的效果,还是让人比较信服的。

总结

OOV词对于翻译性能和实用性的影响非常巨大,如何处理OOV词并达到open vocabulary一直是NMT的主要研究方向。传统方法基于单词级别来处理该问题,比如使用UNK替换、扩大词典规模等方法,往往治标不治本。因此最近一些研究者提出基于字符的NMT模型,取得了不错的成绩,字符级方法的主要优势包括不受语言的形态变化、能预测出词典中未出现的单词并降低词典大小等。值得一提的是,基于字符的模型不仅局限于NMT上,任何生成模型都面临OOV词问题,因此是否能够将字符级方法用在其他NLP任务,比如阅读理解或文本摘要上,让我们拭目以待。

以上为本期Paperweekly的主要内容,感谢EdwardHux、Mygod9、Jaylee1992、Susie和AllenCai五位同学的整理。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
qrcode_for_gh_5138cebd4585_430 -2-
微博账号:PaperWeekly(http://weibo.com/u/2678093863
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

cs.CL weekly 2016.09.19-2016.09.23

一周值得读

本文研究了30年来纽约时报对AI的报道,研究了人们这30年来对AI的兴趣、关注度和各种各样的讨论。是一篇很有意思的文章,是一种长时间段内的舆情监测和分析。

Distant Supervision for Relation Extraction beyond the Sentence Boundary

本文研究的问题是非结构化文本中的关系抽取问题,针对传统方法在抽取关系时仅限于单个句子,本文提出了一种新的方法,从多个句子中进行关系抽取。

What You Get Is What You See: A Visual Markup Decompiler

【转发较多】本文研究的问题是如何从web页面中生成html代码,以及如何从公式图片中生成latex代码,为此作者构造了两个相关的大型数据集,用了完全数据驱动的端到端训练方法得到了不错的效果。本文工作来自Harvard。

Demo|Dataset|Code: http://lstm.seas.harvard.edu/latex/

Select-Additive Learning: Improving Cross-individual Generalization in Multimodal Sentiment Analysis

本文研究的内容是多模态情感分析,针对当前相关高质量数据集规模太小造成的情感依赖于个体特征的问题,提出了一种Select-Additive学习方法提高通用性。

Interactive Spoken Content Retrieval by Deep Reinforcement Learning

本文研究的内容是DQN算法来做语音内容检索,通过人机交互来完成内容检索。DQN相比传统的RL模型明显的优势在于不依赖hand-crafted features。本文被Interspeech 2016录用。

Graph-Structured Representations for Visual Question Answering

本文研究内容为VQA,VQA的主要挑战在于对visual和text两个领域都需要理解。传统的模型中常常忽略场景中的结构和问题中的语言结构,本文针对这两个问题提出了一种图模型,取得了不错的效果。

Context-aware Sequential Recommendation

用户行为建模是推荐系统中的一个关键部件,行为数据是序列数据,天然适合用RNN来建模。但实际应用中context信息(time,location,weahter)也很重要,本文针对这个问题提出了一种CA-RNN模型将context考虑在内,取得了不错效果。

ReasoNet: Learning to Stop Reading in Machine Comprehension

本文研究内容为机器阅读理解,之前效果不错的方法大多数停留在有限的几轮reasoning,本文用增强学习来动态地决定是否继续读下去或者停下来进行答案选择。本文工作来自微软研究院。

Enhancing and Combining Sequential and Tree LSTM for Natural Language Inference

本文研究内容为自然语言推理,作者认为LSTM类的模型潜力并没有被充分挖掘,基于此,本文在传统LSTM模型的基础上增加了syntactic parse信息,得到了更好的效果。

A framework for mining process models from emails logs

本文研究的内容是邮件日志的挖掘,作者提出了一种无监督的挖掘方法,并且提出了一种半自动化的邮件标注方法。

Character-level and Multi-channel Convolutional Neural Networks for Large-scale Authorship Attribution

本文研究内容为authorship attribution,是一个典型的多分类任务。作者利用字符级别的多通道CNN模型对大规模dataset进行了建模,取得了不错的结果。作者之一来自aylien.com 公司,一家非常出色的NLP SaaS 公司。

Minimally Supervised Written-to-Spoken Text Normalization

本文研究的内容是特定语言领域知识在构建text normalization system的时候应该如何做trade-off,本文作者来自Google。

Recognizing Implicit Discourse Relations via Repeated Reading: Neural Networks with Multi-Level Attention

本文研究内容是如何识别隐式的discourse关系,作者提出了一种多层注意力模型,联合注意力机制和外部memory来做关系识别。本文是EMNLP2016的长文。

SoftTarget Regularization: An Effective Technique to Reduce Over-Fitting in Neural Networks

【转发较多】本文提出了一种新的正则化方法,通过在训练过程中调整label来实现,达到了和Dropout接近的效果。

The Color of the Cat is Gray: 1 Million Full-Sentences Visual Question Answering (FSVQA)

本文提出了一个1 million的Visual Question Answer Dataset,数据地址:http://www.mi.t.u-tokyo.ac.jp/static/projects/fsvqa/

Knowledge Representation via Joint Learning of Sequential Text and Knowledge Graphs

【转发较多】当前知识表示存在两个挑战:1、如何更好地利用entity的context;2、如何发现与entity相关的句子;针对这两个问题,本文提出了一种从多个句子中学习表示的模型。给定每个entity的参考句子,首先用带池化的RNN或LSTM来encode与该entity相关的句子,然后用attention模型来衡量每个句子的信息量,最后得到entity的表示。模型在triple classification和link prediction两个任务上都取得了满意的结果。本文工作来自@刘知远THU组。

刘知远:我觉得这个工作的最有意思的地方是,能够为实体找到最有信息量的句子,这些句子往往是该实体的定义或描述。这样,在构建知识图谱时,我们就可以自动为新增的实体构建对应的文本描述信息了。

Semantic Tagging with Deep Residual Networks

本文提出一种多语言智能tagger,模型采用了char-level和word-level的深度残差网络,在词性标注任务中取得了不错的效果,本文COLING 2016在审。

Image-embodied Knowledge Representation Learning

【转发较多】entity图像中包含丰富的信息,大多数传统方法并没有利用这一点,本文提出了一种知识表示模型,利用了triples和image信息,并在知识图谱补全和triple分类两个任务中取得了不错的效果。本文是一篇典型的多信息融合的文章,非常值得思考!工作同样来自@刘知远THU老师组。

Twitter-Network Topic Model: A Full Bayesian Treatment for Social Network and Text Modeling

推特上的推对于topic建模有以下缺点:1、短;2、非结构化;3、口语化;也有优点:1、作者;2、hashtags;3、粉丝网络。本文结合推特信息的优点提出了一种新模型。topic model是个老话题了,多源信息的融合是突破研究瓶颈一个不错的方向,本文的方法同样可借鉴于微博和其他社交网络。

Joint CTC-Attention based End-to-End Speech Recognition using Multi-task Learning

【转发较多】Attention类模型在端到端语音识别领域取得了不错的效果,但当输入噪声非常大的的时候,识别长句子效果不是很好。CTC是另外一种不错的端到端模型,本文结合两者的优势构建模型。构建了联合模型之后,克服了之前的问题。大家都在用Attention,都说Attention好,但终究还是有些情境下attention并不能如人意。那么问题来了,到底哪些场景下attention表现不好,原因是什么?想清楚这个到底之后,改进的方法大概也就在路上了。#Attention Model的缺点#

资源分享

Bots - Product Hunt

一个分享和点评各种好玩product的站点,其中一个栏目有各种各样的bot。

Gorgonia is a library that helps facilitate machine learning in Go

用Go写的机器学习开源框架。

A Thorough Examination of the CNN/Daily Mail Reading Comprehension Task

这篇paper的代码放出来了,同时包括CNN和Daily Mail的数据集。来自斯坦福Danqi Chen的工作。

业界新闻

API.AI is joining Google!

chatbot构建平台api.ai被Google收购了

Angel.ai, a company that builds chat bots, acqui-hired by Amazon | TechCrunch

TechCrunch报道称,继api.ai被google收购之后,一家做自然语言理解的公司angel.ai也几乎被Amazon收购。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
qrcode_for_gh_5138cebd4585_430 -2-

微博账号:PaperWeekly(http://weibo.com/u/2678093863 )每天都会分享当天arXiv cs.CL板块刷新的高质量paper
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

PaperWeekly 第六期

本期paperweekly的主题是Question Answering Models,解决这一类问题可以很好地展现AI理解人类自然语言的能力,通过解决此类dataset可以给AI理解人类语言很好的insights。问题的定义大致是,给定较长一段话的context和一个较短的问题,以及一些candidate answers,训练一些可以准确预测正确答案的模型。

此问题也存在一些变种,例如context可以是非常大块的knowledge base,可以不提供candidate answers而是在所有的vocabulary中搜索答案,或者是在context中提取答案。

基于(Recurrent) Neural Network的一些模型在这一类问题上给出了state of the art models,本期paperweekly就带领大家欣赏这一领域有趣的工作。

Attention-over-Attention Neural Networks for Reading Comprehension

作者

Yiming Cui, Zhipeng Chen, Si Wei, Shijin Wang, Ting Liu and Guoping Hu

单位

iFLYTEK Research, China
Research Center for Social Computing and Information Retrieval, Harbin Institute of Technology, China

关键词

Question Answering, Attentive Readers

来源

arXiv, 201608

问题

本文优化了attention机制,同时apply question-to-document and document-to-question attention,提升了已有模型在Cloze-Style Question Answering Task上的准确率。

模型

本文解决的是Cloze-style question answering的问题,给定一个Document和一个Query,以及一个list的candidate answers,模型需要给出一个正确答案。

已有的模型大都通过比较每一个Query + candidate answer和context document的相似性来找出正确答案,这种相似性measure大都通过把query 投射到context document每个单词及所在context的相似性来获得。本文的不同之处在于模型还计算了context投射到每个query单词的相似度,进一步丰富了context和query相似度的计算。

model_image

首先,document和query都会被model成biGRU。
embedding_and_encoding

然后使用document biGRU和query biGRU的每一个position做inner product计算,可以得到一个similarity matrix。
similarity_matrix

对这个matrix做一个column-wise softmax,可以得到每个query单词在每个document单词上的similarity。
column_softmax

similarly,对这个matrix做一个row-wise softmax,可以得到每个document单词在每个query单词上的similarity。
row_softmax

取个平均就得到了每个query单词在整个context document上的similarity。
average

然后把alpha和beta做个inner product就得到了每个context document word的probability。
context_word_probability

每个candidate answer的probability就是它出现在上述s中的probability之和。
attention_su

Loss Function可以定义为正确答案的log probability之和。
loss_function

资源

相关工作

利用attentive readers解决question answering问题最早出自deep mind: teaching machines to read and comprehend。后来又有Bhuwan Dhingra: Gated-Attention Readers for Text Comprehension和Danqi Chen: A Thorough Examination of the CNN/Daily Mail Reading Comprehension Task,以及其他相关工作,在此不一一赘述。

简评

本文很好地完善了attentive reader的工作,同时考虑了query to document and document to query attentions,在几个data set上都取得了state of the art效果,思路非常清晰,在question answering问题上很有参考价值。

MACHINE COMPREHENSION USING MATCH-LSTM AND ANSWER POINTER

作者

Shuohang Wang, Jing Jiang

单位

Singapore Management University

关键词

Machine comprehension, Match-LSTM, Pointer Net

来源

arXiv,201608

问题

提出一种结合match-LSTM和Pointer Net的端到端神经网络结构,来解决SQuAD数据集这类没有候选项且答案可能是多个词的machine comprehension问题。

模型

本文提出的模型结合了match-LSTM(mLSTM)和Pointer Net(Ptr-Net)两种网络结构。

1、match-LSTM

mLSTM是由Wang和Jiang提出的一种解决文本蕴含识别(RTE)问题的一种神经网络结构。模型结构见下图,该模型首先将premise和hypothesis两句话分别输入到两个LSTM中,用对应LSTM的隐层输出作为premise和hypothesis中每个位置对应上下文信息的一种表示(分别对应图中的Hs和Ht)。对于hypothesis中的某个词的表示ht_i,与premise中的每个词的表示Hs计算得到一个权重向量,然后再对premise中的词表示进行加权求和,得到hti对应的上下文向量a_i(attention过程)。最后把hypothesis中该词的表示ht_i和其对应的context向量a_i拼接在一起,输入到一个新的LSTM中。该模型将两个句子的文本蕴含任务拆分成词和短语级别的蕴含识别,因此可以更好地识别词之间的匹配关系。
mLST

2、 Pointer networks

该模型与基于attention的生成模型类似。区别之处在于,pointer networks生成的结果都在输入序列中,因此pointer networks可以直接将attention得到的align向量中的每个权重直接作为预测下一个词对应的概率值。

3、 Sequence Model & Boundary Model

本文提出的模型结构见下图,具体到本文的神经网络结构,可以简单分为下面两部分:
Seq_Bound
(1)Match-LSTM层:该部分将machine comprehension任务中的question作为premise,而passage作为hypothesis。直接套用上述的mLSTM模型得到关于passage每个位置的一种表示。为了将前后方向的上下文信息全部编码进来,还用相同的方法得到一个反向mLSTM表示,将两个正反方向的表示拼接在一起作为最终passage的表示。

(2)生成答案序列部分,论文中提出了两种生成方法:

  • Sequence方法与Pointer Net相同,即根据每一个时刻attention的align向量生成一个词位置,直到生成终止符为止。

  • Boundary方法则是利用SQuAD数据集的答案均是出现在passage中连续的序列这一特点,该方法仅生成首尾两个位置,依据起始位置和终止位置来截取passage的一部分作为最终的答案。

本文在SQuAD数据集上进行实验,两种方法实验结果较之传统LR方法均有大幅度提升。其中Boundary方法比Sequence方法效果更好。

资源

相关工作

数据集相关论文
SQuAD: 100,000+ Questions for Machine Comprehension of Text
模型相关论文
Learning Natural Language Inference with LSTM
Pointer networks

简评

本篇论文提出的模型是第一个在SQuAD语料上应用端到端神经网络的模型,该模型将Match-LSTM和Pointer Networks结合在一起,利用了文本之间的蕴含关系更好地预测答案。
本文提出了两种方法来生成答案,其中Boundary方法巧妙地利用SQuAD数据集的答案均是文本中出现过的连续序列这一特点,只生成答案的起始和终止位置,有效地提升了模型的效果。

Dataset and Neural Recurrent Sequence Labeling Model for Open-Domain Factoid Question Answering

作者

Peng Li, Wei Li, Zhengyan He, Xuguang Wang, Ying Cao, Jie Zhou, Wei Xu

单位

Baidu IDL

关键词

Question Answering, Sequence Labeling, CRF

来源

arXiv, 201609

问题

作者给出了一个新的中文的QA数据集, 并且提出了一个非常有意思的baseline model.

模型

1、WebQA Dataset

作者来自百度IDL, 他们利用百度知道和一些其他的资源, 构建了这个中文的QA数据集. 这个数据集里所有的问题都是factoid类型的问题, 并且问题的答案都只包含一个entity (但是一个entity可能会包含多个单词). 对于每个问题, 数据集提供了若干个’evidence’, 这些evidence是利用搜索引擎在网络中检索的.

2、Recurrent Sequence Labeling Model

作者把QA类型的问题看做sequence labeling问题, 给出的模型大概分三部分:
ericyuan_graph

(1)Question LSTM
这部分很简单, 就是普通的单向LSTM, 对整个Question sequence进行encoding, 之后计算self-attention, 并用attention对question encoding求加权平均作为问题的representation.

(2)Evidence LSTMs
这部分比较有意思, 首先, 作者从数据中提取出两种feature: 每个词是否在question和evidence中共同出现, 以及每个词是否同时在多个evidence中出现. 之后, 模型用一个三层的单向LSTM对evidence/quesiton/feature进行编码.

  • 第一层: 将evidence/question representation/feature进行连接, 放进一个正向LSTM.
  • 第二层: 将第一层的结果放入一个反向LSTM.
  • 第三层: 将第一层和第二层的结果进行连接, 放进一个正向LSTM.

(3)CRF
经过evidence LSTMs, question和evidence的representation已经揉在一起, 所以并不需要其他QA模型(主要是Attention Sum Reader)广泛用的, 用question representation和story representation进行dot product, 求cosine similarity. 这时候只需要对evidence representation的每一个time step进行分类就可以了, 这也是为什么作者将数据标注成IOB tagging的格式, 我们可以直接用一个CRF层对数据进行预测. 在一些实验中, 作者将答案之前的词用O1, 答案之后的词用O2进行标注, 这又给了模型关于非答案词的位置信息(正确答案是在这个词的前面还是后面).

资源

相关工作

  • 关于CRF进行序列标注的问题, 可以参考这篇文章.
    Zhiheng Huang, Wei Xu, and Kai Yu. 2015. Bidirectional LSTM-CRF models for sequence tagging. arXiv:1508.01991v1.
  • 关于multi-word答案选择在SQuAD dataset上的模型, 可以参考这篇.
    Shuohang Wang, Jing Jiang. 2016. Machine Comprehension Using Match_LSTM and Answer Pointer. arXiv: 1608.07905v1.

简评

首先对所有release数据集的人表示感谢.
关于dataset部分, 百度利用了自己庞大的资源收集数据. 第一, 百度知道里的问题都是人类问的问题, 这一点相比于今年前半年比较流行的CNN/CBT等等cloze style的问题, 要强很多. 第二, 数据集中包含了很多由多个词组成的答案, 这也使数据集的难度大于CNN/CBT这种单个词作为答案的数据. 第三, 对于每个问题, 并没有给出备选答案, 这使得对于答案的搜索空间变大(可以把整个evidence看做是备选答案). 第四, 对于每一个问题, dataset中可能有多个supporting evidence, 这也迎合了最近multi-supporting story的趋势, 因为对于有些问题, 答案并不只在某一个单一的文章中(对于百度来说, 如果搜索一个问题, 那么答案并不一定在单一的搜索结果网页中), 那么一个好的model需要在有限的时间内对尽可能多的搜索结果进行检索.

关于model部分, 本文尝试将QA问题看做是序列标注问题, 某种意义上解决了multiword answer的难点. 熟悉前半年QA paper的人都会对Attention Sum Reader以及延伸出来的诸多模型比较熟悉, 由于用了类似Pointer Network的机制, 一般的模型只能从文中选择story和question的cosine similarity最高的词作为答案, 这使得multiple word answer很难处理, 尤其是当multiple answer word不连续的时候, 更难处理. 而CRF是大家都熟知的简单高效的序列标注工具, 把它做成可训练的, 并且放在end to end模型中, 看起来是非常实用的. 在Evidence LSTM的部分, 加入的两个feature据作者说非常有帮助, 看起来在deep learning 模型中加入一些精心设计的feature, 或者IR的要素, 有可能能够对模型的performance给予一定的提升. 在entropy的角度, 虽然不一定是entropy reduction, 因为这些信息其实本来已经包含在question/evidence中了, 但是有可能因为你提供给模型这些信息, 它就可以把更多精力用在一些其他的特征上?

另外值得一提的是, 最近Singapore Management University的Wang and Jiang也有所突破, 在SQuAD dataset(也是multiple word answer)上一度取得了state of the art的结果, 他们用的mLSTM模型也十分有趣.

总结

这一类model都大量使用了Recurrent Neural Network(LSTM或者GRU)对text进行encoding,得到一个sequence的hidden state vector。然后通过inner product或者bilinear term比较不同位置hidden state vector之间的similarity来计算它们是正确答案的可能性。可见Recurrent Neural Network以及对于Similarity的定义依旧是解决此类问题的关键所在,更好地改良这一类模型也是提升准确率的主流方法。笔者认为,similarity的计算给了模型从原文中搜索答案的能力,然而模型非常缺乏的是推理和思考的能力(其实也有相关工作Towards Neural Network-based Reasoning),如果模型能够配备逻辑思考能力,那么解决问题的能力会大大增强。非常期待有新的思路能够出现在这一领域中,令AI能够更好地理解人类语言。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
qrcode_for_gh_5138cebd4585_430 -2-

微博账号:PaperWeekly(http://weibo.com/u/2678093863
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)

paperweekly用户投票总结

参与投票131人,远超我个人的预期,证明了发红包是一个非常有效的手段,感谢各位的参与。

1

从第一个问题的回答来看,群里的童鞋基本上都喜欢读paper,并且大多数一周内可以读1-3篇,更有甚者可以读到6篇以上。关于读paper,以及从最开始做paperweekly,也是受了Ng一次采访内容的启发,他大概的意思是说,每天坚持读篇paper是一种长期投资,坚持做一年、两年之后会有显著地提高。(虽然不确定这话是不是Ng本人说的,但我比较认同这个观点)

2

第二个问题是关于paper类型的,是一个多选题。群里的童鞋有的是学生,有的是工业界的朋友,有的大厂的工程师,有的是创业公司的大拿,不同的背景决定了导向不同。从结果分布来看,工程性强、热门的paper更受欢迎,这个结果可以也比较好理解,毕竟大众化的东西是更受大家欢迎,工程性强的文章一般来说可操作性都比较强,适合复现,并且可以有选择地应用在生产环境中;热门的文章是大家热议的话题,AlphaGo热炒那会,出门不聊几句增强学习都不好意思和人打招呼,甚至这个PR行为带动了一大批人开始学习下围棋,热门、话题性是是媒体感兴趣的,也是大众喜欢津津乐道的;理论性强的paper通常来说不好读,因为很难,需要很深的基础在那儿,不是一句、两句说得清的,但正是这些理论性强的paper真正地推动着AI在往前走;每个人的兴趣点可能都不是很相同,所以有28个童鞋选择了最后一个选项,也符合小众这个词的特点。

chatbot是当下可能最火的方向之一,但说句实话,10年前paper提出的方法可能在现在的系统中仍然是非常好用的,记得微博上看到过一个人说用正则可以解决大多数的问题,仔细想想rule-based是一个多么神通广大的事情啊。既然rule-based这么好,干嘛还研究那么多新东西、新概念呢?不就是因为人工智能太偏重于人工一词,离智能太远,离智障太近嘛。我一直是这么看待paper这个事儿的,paper针对的可能不是当下的问题,而是未来的问题,但不意味着当下的paper对于当下的问题没有参考和借鉴的意义。paperweekly的一个初衷是希望大家可以通过简单、清晰地描述来看看某一篇或者某几篇paper到底解决了什么问题,用了什么方法,结果如何,当然结果的可信度是另外一回事,但终究是会有启发的。

3

这个问题少打两个字,但是感觉根据上下文大家应该是理解了我提的问题。我想了解,到底paperweekly写的文章有没有真正地解决了一点点需求,或者给大家带来那么一点点启发。答案告诉了我,确实有,某些细节或者思路确实很有借鉴意义,这件事情值得做。谢谢。

4

这是一个多选题,初衷是想了解下哪种方式或者哪几种方式可以让交流变得更加高效率。毫无疑问,微信群是最多的答案,说句实话,微信群排第一是因为大家对微信的依赖强,黏性大,bbs排第二,其实bbs是更加好的讨论方式,但是黏性很差,讨论起来操作会麻烦一些,所以我这边有个非常naive的想法,就是想将bbs和微信群打通,群里有几个技术大牛也愿意一起来做这件事情,希望可以有一个方便大家的东西出来。

5

复现别人paper这个事儿,我个人会选一般有。原因如下:1、首先paper的结果可能没有那么地好,只是说写的或者选的比较好而已;2、paper里的算法不见得适合你的问题;3、paper中的实验在实现过程中可能有很多的trick,并没有写明在paper中,这都是一个又一个的坑啊;4、有些paper有开源的code,可以拿来跑一跑看看效果再说。

6

这个答案也是我预想之中的,摘要就是为了解决信息过载问题的。群里每天会产生一定数量的消息(不是很多其实),但没有赶上实时聊天的话,很容易错过一些精彩的对话或者干货分享。从这个角度来看,做digest这件事情就显得很有意义了。关于如何做,群里之前也有过不错的讨论,我也尝试标注了下数据,感觉难度不小,现在的想法是,我每天晚上花点时间手工摘要出来,分享在bbs和群里。(日后有机会可以将这个事情自动化)

7

这个问题的结果基本上和我上面的想法吻合了。

8

目前paperweekly运营团队里有四个活跃的小组,分别是chatbot、NMT、QA和representation,每个组每周负责出一期文章,包括3-5篇paper,KG这个组建立了,但是一直不够活跃,需要大牛的加入,来写KG方面的文章。

投票的结果和总结基本是这样的情况,投票可能设计的不科学也有些仓促,但基本达到了预期的目的,得到了充分的反馈,这里感谢各位的支持。谢谢大家!

cs.CL weekly 2016.09.12-2016.09.16

本周(2016.09.12-2016.09.16)质量较高的arXiv cs.CL的paper如下:
(点击标题可看原文)

Dialogue manager domain adaptation using Gaussian process reinforcement learning

本文是Steve Young组的一篇大作,文中详细介绍了Gaussian process reinforcement learning框架的思路和优势,并且在多个对话领域中进行了实验并得到更好的结果。

A Hierarchical Model of Reviews for Aspect-based Sentiment Analysis

本文提出用分层双向LSTM模型对网站评论数据进行观点挖掘,发表在EMNLP 2016。该作者今天在arxiv上提交了三篇同类问题不同解决方案的paper,对评论观点和情感挖掘的童鞋可作参考。

Knowledge as a Teacher: Knowledge-Guided Structural Attention Networks

本文提出了用先验知识+attention network的模型,用来解决了自然语言理解存在问题:通过从少量训练数据中捕获重要子结构,来缓解测试集中的unseen data问题,同时提高理解能力。

Wav2Letter: an End-to-End ConvNet-based Speech Recognition System

本文提出了一种语音识别的端到端模型,基于CNN和graph decoding,在不依赖因素对齐的前提下,输出letters。本文工作来自Facebook AI。

Multimodal Attention for Neural Machine Translation

本文通过利用image caption的多模态、多语言数据构建了一个NMT模型,模型的输入不仅是source language,还有所描述的图像,输出是target language。通过输入更多的信息,得到了更好的效果。

Joint Extraction of Events and Entities within a Document Context

本文针对传统信息抽取方法将event和entity分开考虑的问题,提出了在docuemnt-level context下考虑event和entity之间关系进行信息抽取的新方法,取得了非常好的结果。本文发表在NAACL2016.

Character-Level Language Modeling with Hierarchical Recurrent Neural Networks

语言模型问题上,char-level可以很好地解决OOV的问题,但效果不如word-level,本文针对该问题提出了一种分层模型,同时兼顾word-level和char-level的优势。本文发表在nips2016。

Neural Machine Translation with Supervised Attention

attention机制可以动态地对齐source和target words,但准确率不如传统方法。本文提出了用传统方法作为teacher,来“教”model学习alignment,模型称为supervised attention。本文已投稿COLING2016,在审。

Efficient softmax approximation for GPUs

本文提出了一种高效的softmax近似方法,并且可以方便地进行并行计算。本文称之为adaptive softmax,根据词分布进行聚类,极大地提高了计算效率并保证了不错的准确率。本文工作来自Facebook AI Research。

在自然语言生成任务中常常面临word vocabulary size太大的困境,softmax的效率非常低,本文给出了一种快速计算的方法。Tomas Mikolov之前也提到过类似的思路。

Characterizing the Language of Online Communities and its Relation to Community Reception

本文研究了在线社区语言的style和topic哪个更具代表性,这里style用复合语言模型来表示,topic用LDA来表示,通过Reddit Forum实验得到style比topic更有代表性。

Factored Neural Machine Translation

针对机器翻译领域中两个常见的问题:1、目标语言词汇表过大;2、OOV问题;利用了单词的词形和语法分解,提出了一种新的NMT模型,并取得了满意的效果。

Context Aware Nonnegative Matrix Factorization Clustering

大多数paper都在研究NMF在聚类中的初始化和优化部分,而本文关注的点在于最后的聚类分配上。本文被 ICPR 2016全文收录。

以下内容为arXiv外的优质内容:

SIGDIAL 2016 Accepted Paper

SIGdial是ACL下面的一个关于对话系统地特别兴趣小组,每年开一次会。今年的会议最近正在开,会议录用的所有paper都已经放出。

CMU SPEECH Team Homepage

CMU SPEECH Team的主页,包括他们的开源软件Yoda和publication及其开源实现。

Machine Learning - WAYR (What Are You Reading)

reddit上的这个帖子很有意思,和paperweekly想做的一个事情非常像,就是可以让读类似或者同一篇paper的童鞋得到充分交流。

广告时间

PaperWeekly是一个分享知识和交流学问的民间组织,关注的领域是NLP的各个方向。如果你也经常读paper,也喜欢分享知识,也喜欢和大家一起讨论和学习的话,请速速来加入我们吧。

微信公众号:PaperWeekly
qrcode_for_gh_5138cebd4585_430 -2-
微博账号:PaperWeekly(http://weibo.com/u/2678093863 )每天都会分享当天arXiv cs.CL板块刷新的高质量paper
知乎专栏:PaperWeekly(https://zhuanlan.zhihu.com/paperweekly
微信交流群:微信+ zhangjun168305(请备注:加群 or 加入paperweekly)