【文献阅读】“ChatGPT: Jack of all trades, master of none”
- 摘要
- 背景
- 问题
- 任务介绍
- 研究方法
- ChatGPT对话示例
- 衡量指标
- 量化分析
- ChatGPT “博而不精”
- 任务难易程度与ChatGPT 的表现
- 随机上下文小样本个性化
- 对话上下文对生成结果的影响
- 是否用测试数据集来微调对性能表现的影响
- 质量分析
- 探索性案例分析
- 人类专家的基准性分析
- 解释性分析
- 应用前景
- 总结与未来工作
- 英语学习
摘要
OpenAI 发布了 Chat Generative Pre-trained Transformer (ChatGPT),彻底改变了人工智能与人机交互的方法。 它具有在各个领域提供详细和准确答案的能力。 有几篇关于 ChatGPT 评估的工作测试了它在自然语言处理 (NLP) 任务上的有效性。
然而,现有的研究大多是非自动化的,并且只在非常有限的范围内进行了测试。 在这项工作中,我们检查了 ChatGPT 在 25 种不同的 NLP 分析任务上的能力,其中大部分任务甚至对人类来说都是主观的,例如情绪分析、情绪识别、冒犯性识别和姿态检测、自然语言推理、词义消歧、语言可接受性和知识问答。 我们将 ChatGPT 的查询过程自动化并分析了超过 38k 的回答。 我们将其结果与可用的最先进 (SOTA) 解决方案进行比较表明,对于零样本和少样本评估,ChatGPT 模型的平均质量损失约为 25%。 本文展示了测试的任务越困难(SOTA 性能越低),ChatGPT 损失就越大。特别是诸如情绪识别之类的实用 NLP 问题。
我们还测试了通过随机上下文少样本个性化 (Random Contextual Few-Shot Personalization) 对所选主观任务个性化 ChatGPT 响应的能力,我们获得了明显更好的基于用户的预测。 额外的定性分析揭示了 ChatGPT 偏见,这很可能是由于 OpenAI 对人类训练师施加的规则。 我们的结果为关于近期预测 NLP 模型的高质量是否可以表明工具对社会的有用性,以及应该如何建立此类系统的学习和验证程序的基本讨论提供了基础。
背景
- Transformer 取代 RNN,模型拥有上下文长距离的信息获取能力。同时, GPUs和TPUs的发展支持了大模型的训练。
- 在大规模文本数据集上训练得到的无监督预训练模型,如Bert-Based用masked tokens;AR-Based用predicting the next word.
- GPT-1、GPT-2与GPT-3对比表:
GPT-1 | GPT-2 | GPT-3 | |
---|---|---|---|
parameters | 117M | 1.5B | 175B |
data number | 40GB | 40GB | 45TB |
context length | 512 | 1024 | 2048 |
feature | uni-directional | multi-task training | zero-shot, few-shot |
- InstructGPT
模型大但不一定效果好,GPT-3有时给出的答案是有偏差的不可靠的,难以满足用户的需求。因此,提出的InstructGPT采用了Reinforcement Learning from Human Feedback (RLHF)方法使用人类反馈作为奖励信号来更新模型参数。 - ChatGPT
ChatGPT是InstructGPT最新的迭代版本。与GPT-3的175B的参数对比,ChatGPT只有3.5B的参数,但是具有更加强大的生成对话能力。 - 本文工作:
测试ChatGPT在各项NLP任务上的表现,检验其质量性、全面性等各方面的能力。
问题
- ChatGPT是否在不同的任务上比SOTA方法性能差?
- ChatGPT在解决简单NLP任务和在解决复杂任务上能力不同?
- few-shot方法(Random Contextual Few-Shot Personalization)具体能提升多少性能?
- 当多个提示词相关/不相关时会产生什么影响?
- 数据集及训练方式是如何影响ChatGPT的性能表现的?
- ChatGPT提供者的内部政策并且它的偏向性使其不能对于某些提示词来说不能提供足够的回复?
- ChatGPT能不能用来验证由人类标注得到数据的质量?
- 当ChatGPT解决能用来具有分析性和模糊性任务时能用来给出解释性的目的吗?
- ChatGPT的限制和不希望出现的行为有哪些?
- ChatGPT能够在哪些领域促进AI技术的发展并且改变人类日常的生活?
任务介绍
表中各种指标的解释如下:
类别:P (pragmatic) 语用的 S (semantic) 语义的
Context: 提示词是否加入了额外信息
Availaility:ChatGPT是否用了数据集来微调,0-3分表示没有到有
post-processing:表示需要人工后续处理的提示词数量
N: 用来评估的提示词数量
研究方法
ChatGPT对话示例
衡量指标
-
F 1 m a c r o = 1 Q ∑ i = 1 Q 2 ⋅ p i ⋅ r i p i + r i F1_{macro}=\frac{1}{Q}\sum^{Q}_{i=1}\frac{2\cdot p_i \cdot r_i}{p_i + r_i} F1macro=Q1∑i=1Qpi+ri2⋅pi⋅ri
Q表示标签种类的数量, p i p_i pi和 r i r_i ri是第 i i i个标签的precision和recall。 -
ChatGPT与SOTA方法之间的loss:
L o s s = 100 % ⋅ ( SOTA − ChatGPT ) SOTA Loss=\frac{100\%\cdot (\text{SOTA}-\text{ChatGPT})}{\text{SOTA}} Loss=SOTA100%⋅(SOTA−ChatGPT) -
Gain用来衡量加了personalized 数据之后模型的性能提升(F1):
G a i n = 100 % ⋅ ( Per − NonPer ) 100 % − Nonper Gain=\frac{100\%\cdot (\text{Per}-\text{NonPer})}{100\%-\text{Nonper}} Gain=100%−Nonper100%⋅(Per−NonPer)
量化分析
ChatGPT “博而不精”
- ChatGPT在semantic类型的任务比在pragmatic类型上表现好;
- ChatGPT的表现总是不如当前任务的SOTA方法好,稳定性也不够;
- ChatGPT根据任务的难易程度有不同表现,在主观性较强的情感分类问题上表现较差;
- 虽然ChatGPT的表现总是不如当前任务的SOTA方法好,但ChatGPT几乎所有问题都能做,而且与SOTA差的不是特别多,因此可以说ChatGPT是“博而不精”(“Jack of all trades, master of none.”)
任务难易程度与ChatGPT 的表现
- 用SOTA的表现衡量该任务的难易程度( difficult = 100 % − SOTA \text{difficult}=100\%-\text{SOTA} difficult=100%−SOTA)。一般地,pragmatic任务比semantic任务更难,其中情感类问题(pragmatic)非常难。
- 任务越难,loss越大;任务越简单,loss越小。
随机上下文小样本个性化
- ChatGPT的提示词作为一种文本内的个性化(personalized incontext processing), in-context learning
- ChatGPT的提示词也可以应用few-shot learning。
对话上下文对生成结果的影响
- 通过设计多种实验验证上下文对生成结果的影响,但结果表明不同setting下的表现差别不大。由此只能得出一些浅显的结论,不具有代表性。(inconclusive)
- 在同一个setting下,ChatGPT给出了答案也可能大不相同,这也体现了ChatGPT不稳定的缺点,尤其是应用在一些需要稳定性能表现的领域中。
是否用测试数据集来微调对性能表现的影响
由图可知
- 任务越困难,损失越多;
- 测试集微调对性能表现有影响,但具体影响程度不明显;
由图可知 - 没有在测试集上微调过,当任务难度增加,性能损失也相应增加;
- 在测试集上微调过,当任务难度增加,性能损失反而降低;
质量分析
从探索性分析、基准分析、解释性分析三个方面对ChatGPT未达到预期的表现进行案例分析。
探索性案例分析
- 当被提供虚假情报时,ChatGPT可能会被误导从而给出错误答案;
- ChatGPT会面临冒犯性和伦理性的问题;
- Prompt engineering and tuning 在ChatGPT使用过程中非常重要;
- 不仅问题类的prompt很重要,告诉模型在备选答案里选择哪个答案的prompt也很重要;
人类专家的基准性分析
- 敏感性分析上比人类专家有更明显的负面倾向;
- 准确性分析在大部分情况下比人类专家更准;
解释性分析
- XAI代表可解释AI,能够给出行为背后合理可行的解释,并且具有一定的泛化能力;
- 但ChatGPT在判断个人、平铺直叙信息、忽略元信息以及评估某人的声明中的新闻报道和引用时,它经常会犯错误,而没有考虑到更广泛的背景;
- ChatGPT评估的是情况而不是参与者,但某些词语是指人,会导致预设的评估错误。
- ChatGPT在语义任务中解释其决策时强烈依赖于上下文释义。它倾向于在给定的文本中发现负面内涵并呈现出共同的人类道德感。其局限性包括较少的提示精度和不稳定性,需要后期处理和手动更正。
应用前景
- 改变生活类:
文本生成、纠错,教育,信息检索,虚拟助手 - AI发展类:
可解释人工智能,标注数据集验证,推理模型原型设计,文本数据增强,知识蒸馏
总结与未来工作
- 通过利用超过38k+的提示词和在25个不同的NLP任务测试得到,ChatGPT能够完成大部分的任务;
- ChatGPT的性能与SOTA仍有差距,而且问题越难差距越大,使得ChatGPT“博而不精”;
- 这篇论文中提出的上下文感知和能够实现上下文少样本个性化是ChatGPT的有价值的特征,这一能力使得ChatGPT能够更好地适应特定情境,提供更符合用户期望的结果,并且能够解释自己的决策过程,这些都是ChatGPT的优势之一。
- 十分相信ChatGPT能够加速AI科技的发展并且改变人类的生活;
- 未来工作重点在其他推理任务和多样的prompting engineering方法;
英语学习
- Jack of all trades, master of none 博而不精
- discourse v./n. 谈论;话题
- soar v. 飙升
- proximal adj. 近端的
- esacalte v. 使…严重;迅速增加;升级
- plagiarism n. 剽窃;抄袭
- taxonomy n. 分类
- manually adv. 手动地
- utterance n.话语;言论
- polarity n.极性
- pragmatic adj. 实际的;实用的
- denominator n. 分母
- evoke v. 召唤
- interlocutor n. 对话者
- catalize v. 催化
- discard v.丢弃
- peculiarity n. 特点
- inconclusive adj. 不确定的
- disinformation n. 虚假情报
- divergent adj. 异同的,发散的
- retrieval n. 检索