我是从斯坦福的羊驼模型开始接触instruction tuning的,instruction
tuning提供给了用户一种在特定数据集上低成本finetune模型的可能性,后来又接触到了斯坦福新出的paper:Demonstrate-Search-Predict:
Composing retrieval and language models for knowledge-intensive
NLP,这是一篇用信息抽取技术retrieval
models来扩充query,从而使得LM能够得到更多context的技术,这才让我了解到其实除了最基础的我们知道的那些prompting的方式,比如zero-shot,few-shot,chain-of-thought方式,还有一些方式在这些方式上进行了创新。
lilian weng的博客在chiin-of-thought章节之后就介绍了自动prompt
design和augmented language
models。这些对于我来说都是新东西,新技术发展的很快,我学习的过程其实也是在织自己知识结构中的这个网,从接触GPT以来写了好几篇博客,零零散散的,很多博客都是只局限于其中的技术,时不时我需要停下里思考这些技术之间的关联,从而把整个逻辑理顺。技术的发展或者一个模型一个方法的出现都是有路径可循的,我希望能把这些路径穿起来,摸清楚发展脉络。
reading
comprehension问题,我们的任务是从一个paragraph中找出answer:comprehend a
passage of text and answer questions about its content (P,Q)->
A,也就是我们事先不仅有question,还有一段paragraph,我们只需要找出answer在这个paragrapg中的位置(span),但是对于open-domain的QA来说,我们事先是不知道anwer在哪儿的,比如上图中unsupervised
QA。那么对于这一类open-domaiin的问题如何解决?最常见的就是retriver-reader架构,就是我们先从一大堆语料库中挑选出我们的paragraph,然后对于这一些paragraph,我们用reading
comprehension的技术再来定位answer在哪里。上面这篇paper就是应用的这种思想,提出了ORQA,这是19年的文章,想法很典型。
这篇文章在logistic
regression的基础上(SQuAD数据集)有了巨大的进步,算是18年之前lstm+attention架构的集大成者。思想很简单,但里面很多细节,比如在编码passage的时候用了好多来源的vector进行拼接,然后再输入斤lstm中。但整体架构和机器翻译领域的发展历程是一样的,在transformer没有出现之前,大家都在lstm上做了很多创新,attention加入计算是其中一种,DrQA将多个来源的向量拼接也是一种,感兴趣的可以读一下原文:Reading
Wikipedia to Answer Open-Domain
Questions。作者是cs224n的QA这门课的讲师,也是一位华人小姐姐。其实我在看cs224n
QA这一讲的ppt时感觉斯坦福的这门课着重讲解了stanford attentive
reader这一系列的模型,不知道有没有私心。
这篇是在Bert基础上改进的,主要改进点在于improve了Bert在pretrain时候的两个task:1.
mask 2. next sentence prediction。同样是chen的文章:(Joshi & Chen et
al., 2020): SpanBERT: Improving Pre-training by Representing and
Predicting Spans
To finish
SpanBert在谷歌的bert基础上又将performance提高了许多。
open-domain question
answering
这个问题在Speech and language
processing的第三版的14章节进行了详细介绍,它也可以叫做是information-retrieval(IR)
based
QA。它首先要做的是从很大的语料库中搜索出相关的passage,然后第二步运动reading
comprehension的算法从这些passage中找出answer(spans of
text)。从一堆语料库里找到相关的passage,这个过程称之为information
retrival。