Prompt (提示)

引用:

哈工大车万翔:自然语言处理范式正在变迁

作者:车万翔

需要注意的是,ChatGPT以及一系列超大规模预训练语言模型的成功将为自然语言处理带来新的范式变迁,即从以BERT为代表的预训练+精调(Fine-tuning)范式,转换为以GPT-3为代表的预训练+提示(Prompting)的范式[3]。所谓提示,指的是通过构造自然语言提示符(Prompt),将下游任务转化为预训练阶段的语言模型任务。例如,若想识别句子“我喜欢这部电影。”的情感倾向性,可以在其后拼接提示符“它很    ”。如果预训练模型预测空格处为“精彩”,则句子大概率为褒义。这样做的好处是无需精调整个预训练模型,就可以调动模型内部的知识,完成“任意”的自然语言处理任务。

当然,在ChatGPT出现之前,这种范式转变的趋势并不明显,主要有两个原因:

第一,GPT-3级别的大模型基本都掌握在大公司手里,因此学术界在进行预训练+提示的研究时基本都使用规模相对比较小的预训练模型。由于规模规模不够大,因此预训练+提示的效果并不比预训练+精调的效果好。而只有当模型的规模足够大后,才会涌现(Emerge)出“智能”[4]。最终,导致之前很多在小规模模型上得出的结论,在大规模模型下都未必适用了。

第二,如果仅利用预训练+提示的方法,由于预训练的语言模型任务和下游任务之间差异较大,导致这种方法除了擅长续写文本这种预训练任务外,对其他任务完成得并不好。因此,为了应对更多的任务,需要在下游任务上继续预训练(也可以叫预精调),而且现在的趋势是在众多的下游任务上预精调大模型,以应对多种、甚至未曾见过的新任务[5]。

所以更准确地说,预训练+预精调+提示将成为自然语言处理的新范式。

不同于传统预训练+精调范式,预训练+预精调+提示范式将过去一个自然语言处理模型擅长处理一个具体任务的方式,转换为了用一个模型处理多个任务,甚至未曾见过的通用任务的方式。所以从这个角度来讲,通用人工智能也许真的即将到来了。

图内容(以防图挂了)

1950-1990 小规模专家知识

1990-2010 浅层机器学习算法

2010-2017 深度学习算法

2018-2023?大规模预训练模型 

那么,接下来如何进一步提升预训练+预精调+提示新范式的能力,并在实际应用中将其落地呢?

首先,显式地利用人工标注和反馈仍然费时费力,我们应该设法更自然地获取并利用人类的反馈。也就是在实际应用场景中,获取真实用户的自然反馈,如其回复的语句、所做的行为等,并利用这些反馈信息提升系统的性能,我们将这种方式称为交互式自然语言处理。不过用户的交互式反馈相对稀疏,并且有些用户会做出恶意的反馈,如何克服稀疏性以及避免恶意性反馈都将是亟待解决的问题。

其次,目前该范式生成的自然语言文本具有非常好的流畅性,但是经常会出现事实性错误,也就是会一本正经地胡说八道。当然,使用上面的交互式自然语言处理方法可以一定程度上解决此类问题,不过对于用户都不知道答案的问题,他们是无法对结果进行反馈的。此时又回到了可解释性差,这一深度学习模型的老问题上。如果能够像写论文时插入参考文献一样,在生成的结果中插入相关信息的出处,则会大大提高结果的可解释性。

最后,该范式依赖超大规模预训练语言模型,然而这些模型目前只掌握在少数的大公司手中,即便有个别开源的大模型,由于其过于庞大,小型公司或研究组也无法下载并使用它们。所以,在线调用是目前使用这些模型最主要的模式。在该模式下,如何针对不同用户面对的不同任务,使用用户私有的数据对模型进行进一步预精调,并且不对公有的大模型造成影响,成为该范式实际应用落地所迫切需要解决的问题。此外,为了提高系统的运行速度,如何通过在线的大模型获得离线的小模型,并且让离线小模型保持大模型在某些任务上的能力,也成为模型能实际应用的一种解决方案。

猜你喜欢

转载自blog.csdn.net/weixin_43717681/article/details/130067846