Vintage NLP for Work
1.09K subscribers
266 photos
28 files
343 links
Natural Language Processing for Work

频道历史内容的网页归档:
https://www.notion.so/NLP-for-Work-af812710c3a543c2adc7acbdb3990036

For Work 系列频道
梗频道: @JISFW
图频道: @GfWR16
反馈投稿吹水群: @FishingFW

更多精彩:
https://t.me/JISFW/13392
Download Telegram
Vintage NLP for Work
以改变时态为例,要做到这一点,就需要保证这一维能且仅能控制句子的时态。 他们用普通的 VAE 保证生成句子的多样性,用一个判别器来控制生成的这个句子确实属于所控制的时态,用一个独立性约束项来保证句子除时态以外的其他一切属性都不归这个维度控制(为了实现这点没有再用一个判别器而是直接复用 VAE 的 encoder 部分)。这样把这三者加起来就得到一个最后的损失函数。
因为上面需要一个判别器来判断生成的句子是否符合对应维度的要求,这里需要额外的标注数据。他们既用生成器生成的句子,又用人工标注的少量数据集,实现了对判别器的半监督训练。

因为生成器生成了噪声样本给判别器训练,而判别器的类别判断(即生成句子是积极还是消极、是过去时还是将来时)又能辅助生成器生成更好的样本,二者互相补充。他们用了一个类似 [Hinton et al., 1995] 的所谓 wake-sleep 过程,在 sleep 阶段时,不停依次训练生成器和判别器,直到收敛。

最后,他们的方法优点之一是每个属性的判别器训练是分离的数据集,不需要对一个句子标出所有的属性,甚至也不需要标注句子级别的标签,例如对时态属性,他们只用了一个包含不同时态的词语作为标注("was, will be" 和 "in the future")等,这个数据集容易获得而且非常简单。
如果你也跟管理狗一样是个学弱的话这里有篇解释这上面这篇工作的笔记,作者还画了几张上面这些插图(
http://serhii-havrylov.github.io/blog/mutual_info
A Neural Architecture for Generating Natural Language Descriptions from Source Code Changes
https://arxiv.org/abs/1704.04856
ACL 2017 录用的一篇短文,顾名思义就是从 repo 的 diff 中学习生成 commit message。
Vintage NLP for Work
Geometry of Compositionality (Gong et al. 2016) https://arxiv.org/abs/1611.09799
Representing Sentences as Low-Rank Subspaces
https://arxiv.org/abs/1704.05358
Jiaqi Mu, Suma Bhat, Pramod Viswanath
(。・∀・)ノ゙嗨,还记得之前说一个词义应该用一个子空间而不是一个向量来表示的实验吗~
Vintage NLP for Work
Representing Sentences as Low-Rank Subspaces https://arxiv.org/abs/1704.05358 Jiaqi Mu, Suma Bhat, Pramod Viswanath (。・∀・)ノ゙嗨,还记得之前说一个词义应该用一个子空间而不是一个向量来表示的实验吗~
以往句子向量要么用神经网络从词向量构建出来,要么对所有词求个平均。

这篇工作将前面的想法扩展到了句子上,认为句子的表示也应该用 N 个向量张成的子空间表示。上面的图是把词向量投影到三维以后再用 PCA 挑出两个主成分形成的一个平面,便于画图和理解。

其他工作要求衡量句子相似度,这里句子既然用子空间表示,因此相似度定义为 ((((主成分叠成的矩阵)相乘得到的矩阵)的 N个特征值)形成的N维向量) 的L2范数。
Forwarded from ling0322
顺便安利一下咱两年前写的分词/词性标注/依存句法分析的lib:https://github.com/milkcat/MilkCat
Algorithms for Generating Referring Expressions: Do They Do What People Do?
http://aclweb.org/anthology/W06-1410
Jette Viethen and Robert Dale, INLG 2006
Vintage NLP for Work
Algorithms for Generating Referring Expressions: Do They Do What People Do? http://aclweb.org/anthology/W06-1410 Jette Viethen and Robert Dale, INLG 2006
指代生成除了可以用代词(“你我他”)以外,也可以用一些名词性短语(“那个高个子、隔壁王叔叔”)。

本文设计了一个真实实验,并排放置4个4层的颜色随机的柜子并编号为1至16,让20个实验者拿着随机生成的号码描述一句话找到文件柜,除了不允许说柜子编号以外随便说,例如“最顶上右数第二个”。人工处理过这些数据以后再对比不同的算法的差异。

不过这个任务比较久远了,现在可能不太关注指代生成,这篇貌似是最近的一个算法比较。
Representation Learning for Text-level Discourse Parsing
http://aclweb.org/anthology/P14-1002
Ji and Eisenstein, 2014
Vintage NLP for Work
Representation Learning for Text-level Discourse Parsing http://aclweb.org/anthology/P14-1002 Ji and Eisenstein, 2014
这篇工作发表于2014年,但看最近一个从 Rhetoric Structure Theory 入手做情感分析的工作用了他们的工作,这个方向更新似乎不是很迅速。
所谓 Rhetoric Structure 就是指短语和句子在篇章尺度上的相互作用关系,如并列、比较等等。

他们的 parser 是基于经典的 shift-reduce,按照惯例将其建模为一个给定 stack 和 queue 以后的 分类问题(具体做 shift 还是做某种 reduce)。而 stack 的 top2 和 queue 的第一个词会被线性映射为一个隐变量,再与不同操作对应的向量w做内积获得执行该操作的概率。

他们将学习过程建模为一种最大边缘框架,在固定线性映射时退化为一个多类 SVM 算法,迭代更新每种操作的对应向量w,在得到这个向量后又用梯度下降去更新线性映射的参数。
谁看懂了这部分可以来讨论下(
Question Answering through Transfer Learning from Large Fine-grained Supervision Data
Sewon Min, Minjoon Seo, Hannaneh Hajishirzi
https://arxiv.org/abs/1702.02171
Vintage NLP for Work
Question Answering through Transfer Learning from Large Fine-grained Supervision Data Sewon Min, Minjoon Seo, Hannaneh Hajishirzi https://arxiv.org/abs/1702.02171
这篇短文发表在 ACL-2017 上。本文在 RTE、QA 等数据集上验证了一个模型,针对具体任务不同复用前面网络的权重,只重新训练最后一层。

本文的一个亮点是 attention 的评价。attention 原本是希望能够选择性地关注一部分上游输入,如果 attention weight 普遍很高就失去了选择的功能。
本文定义了稀疏性,即 attention weight 小于某个常数的比例,越稀疏说明大部分的 attention 较接近0,则说明 attention 的选择功能较好。

他们实验发现在句子级标注的 SQuAD-T 数据集上预训练再 transfer 到 WikiQA 数据集上的 sparsity 低于在词级标注的 SQuAD 上预训练。
Natural Language Understanding: Foundations and State-of-the-Art
http://icml.cc/2015/tutorials/icml2015-nlu-tutorial.pdf
Percy Liang
Vintage NLP for Work
Natural Language Understanding: Foundations and State-of-the-Art http://icml.cc/2015/tutorials/icml2015-nlu-tutorial.pdf Percy Liang
这是管理狗的偶像 Percy Liang 老师在 ICML 2015 上做的一个 tutorial。最近整理收藏夹刚翻出来就又读了一下。
这个标题起得很大,阐述了自然语言在不同层次上有哪些不同任务、缘起自哪些语言现象。
虽然现在 DL 方法居多,但这里没有涉及到什么方法层面,对通识内容讲得更多:既然啥玩意都可以套进深度学习的大框里,为啥我们还要专门分工去做 NLP?
这个入门虽然没有深入的技术,比较基础,但读完也得花一番功夫,而且常读常新。
Affect-LM: A Neural Language Model for Customizable Affective Text Generation
https://arxiv.org/abs/1704.06851
Sayan Ghosh, Mathieu Chollet, Eugene Laksana, Louis-Philippe Morency, Stefan Scherer