什么是Few-Shot, Zero-Shot & One-shot

推荐词

原文链接

https://zhuanlan.zhihu.com/p/624793654

正文

(偏差较大的地方,请大佬们指正)。

先解释 one-shot。公司门禁用了人脸识别,你只提供一张照片,门禁就能认识各个角度的你,这就是 one-shot。可以把 one-shot 理解为用 1 条数据 finetune 模型。在人脸识别场景里,one-shot 很常见。

zero-shot 与 few-shot,回到 NLP 场景。用 wikipedia、新闻等,训练一个 GPT 模型,直接拿来做对话任务,这个就是 zero-shot。然后,发现胡说八道有点多,找了一些人标注了少量优质数据喂进去,这就是 few-shot。

chatGPT 的发展史,就是从 zero-shot 到 few-shot。(摘自沐神的 paper reading 系列)

  1. 背景。GPT-3 之前,跟 Bert 是两条路线的竞争关系。
  2. GPT-2 是 zero-shot。效果没有超过 bert,又想发 paper,就把自己的卖点定义为 zero-shot(方法创新),即完全的无监督学习,论文的题目:Language Models are Unsupervised Multitask Learners。
  3. GPT-3 是 few-shot。效果比 bert 好,不用找学术方法的卖点了,而且,zero-shot 做产品的性价比确实不高,换成了 few-shot,也就是找了一些人做标注。论文的题目:Language Models are Few-Shot Learners。
  4. chatGPT 是 HFRL。GPT-3 之后的问题是:few-shot 时到底 shot 啥(标注哪些数据)?他们跟强化学习结合起来,也就是 human feedback reenforcement learning,俗称 HFRL。也就是 chatGPT 的核心技术。

HRFL 这套方法,本质目的是:如何把机器的知识与人的知识对齐。然后开创了一个新的方向,叫 alignment。openAI 在内的好多大佬,都在追这个新方向。

注:这里的 alignment,与人脸识别里的 alignment,完全不一样。