1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

关于排序在NLU中的地位

Posted at

排序在自然语言处理中是一个基本问题。我记得谷歌T5的论文里就有对比过填空(BERT)和顺序修复,两者训练通用模型的效果,当时我好像看到顺序修复效果是比填空好的,所以才一直忘不掉。

如今重新提起排序是因为这是老师给我提供的一个候选研究方向。

最近谷歌的openAI CLIP给人极大的冲击。我认为模型效果如此之好的根本原因是loss函数真正贴合了人类想要模型做的事情——理解图片&自然语言。最为Loss函数受苦的机器学习领域是强化学习——恰恰是openAI专攻的领域。我甚至怀疑openAI是不是用某种强化学习设置来探索了最优的loss函数,然后把这个结果给拿出来发表,而把本质的东西(发现这个loss定义的方法)藏了起来。

总而言之。我们作NLP的,仍然在为探索NLU(自然语言理解)最优的loss苦苦挣扎。而排序Loss,正是其中的一员。

排序Loss(以同一个句子中的单词排序为例)得以生效,是基于这样一个常识: 唯有理解了句意,我们才能够将句中词语正确排序。想想英语考试中的短语排序吧,那就是最好的例子。

单词排序可以用于训练句子embedding,句子排序可以用于训练段落embedding。

Deep Attentive Sentence Ordering Network

今天看了这篇2018年的ACL论文。比起老师几年前的论文当然是好上很多,但是老实说,没有什么新意。

Screenshot from 2021-02-23 13-07-06.png

观察模型结构,我们可以看到他比起prtNet的唯一不同是,中间用了多层selfattention。我们知道自注意层是自带multi-head的,这可以成为性能差异的要因之一。然后,他们选择排除一切position embedding之类的机制来抹消错误位置对模型产生的恶性影响。

这就是全部了。虽然模型结构比起老师之前论文里的SVM要好上很多,研究主题毫无新意,你知道我这样一个只读过不超过50篇论文的人,接手这样一个研究时,首先想到的就是这样的改进。

接下来的研究方向

虽然我作为云玩家可以指点江山,可是一轮到做研究就菜的像条狗,至今已经失败了三个研究:

  1. prtNet用于主题分割,就是segbot的那个想法,虽然segbot的手动记忆方案显得更加tricky
  2. 唬人的沙漏模型用于主题分割
  3. 日语段落分割先行研究的追实验

接下来我的想法是做日语的句子&段落排序。如果你问我为什么选择日语,原因是我不敢再眼高手低。我至今一篇论文都还没有发过。虽然我有上ACL的壮志,却已经遭到了屡屡挫折。

至于方法,我是打算先在训练集上训练个句子级别的VAE——多头自注意作为encoder,LSTM作为decoder,每次输出一个单词——用来做句子embedding,顺便可以开拓一下日语VAE的领域,然后将decoder去掉,接上MLP作为分类器作为段落划分,又或者接上LSTM作为顺序器用于排序。Decoder可以多种多样,但是VAE作为encoder是矢志不移,因为我已经被句子同构深深吸引了,而这在日语领域似乎还是一片处女地。

而至于VAE怎么训练就是另一个问题了,我可以用类似BERT的填空,也可以用排序,都是可以的。

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?