《Is Information Extraction Solved by ChatGPT? An Analysis of Performance, Evaluation Criteria, Robustness and Errors》论文笔记
借鉴点:
- 实验的设置非常全面 。 可以对抽取任务的不同侧重点有更全面地认识
- 写作方面行文流畅,囊括了将容易忽略的方法/技巧,这些技巧是工作中常见的,但使论文更加全面。
吐槽一下,有些的boss会认为这种内容没有创新点而直接毙掉,然后一篇论文就胎死腹中了。希望后面的工作目标不要”为了创新而创新“,也希望自己的 ”能力“ 能提升到和 ”目标“ 能相匹配
吐槽点:
- 还希望看到开放域信息抽取(OIE)的应用,可惜这篇论文没有包含
- 没有说明具体如何判定 GPT输出是无效输出
主要贡献
从性能、评估标准、鲁棒性、错误类型四个方面评估了GPT执行信息抽取的能力;
- 在17个dataset及14个IE子任务上,使用zero-shot、 few-show ICL 、few-show COT 3个场景下进行评估,结果表明chatgpt和SOTA模型之间仍存在较大差距
- 对差距进行思考(hard-matching 不适用GPT),并提出soft-matching 策略更准确地进行评估
- 对鲁棒性进行分析,上下文 和 目标类型频率 严重影响性能;GPT不能理解主谓关系
- 错误类型:错误标注是主要的错误类型,使用GPT注释数据的可能性
方法
任务设置
实体抽取、关系抽取、事件抽取、细粒度情感分析 4大方面、共14个子任务
--------【写论文为了体现实验全面真的搞得复杂。单就应用来说,现在只考虑考虑复杂情况和联合抽取,简单的情况已经解决的挺好了】
- 实体抽取:
- NER-Flat
- NER-Nested
- 关系抽取
- RE-RC 关系分类
- RE-Triplet 同时抽取实体和关系
- 事件抽取
- EE-Trigger 识别事件触发词并分类
- EE-Arugment 给定事件识别相关论元实体,并分类确定它们对应的角色
- EE-Joint 同时识别触发词、事件类型、及事件论元
- 细粒度情感分析
- ABSA-AE 抽取关观点的对象词(aspect)
- ABSA-OE 抽取所有观点词(opinion)
- ABSA-ALSC 为观点中的给定对象预测情感极性
- ABSA-AOE 为观点中的给定对象提取对应的观点词
- ABSA-AESC 同时抽取对象词和情感极性
- ABSA-Pair 同时抽取对象词和对应的观点词
- ABSA-Triplet 同时抽取对象词、观点词、情感极性
数据集
共使用了17个数据集
其中:
- RE数据集, CoNLL04, NYT-multi, TACRED, SemEval 2010
- EE数据集, ACE05-Evt, ACE05+ CASIE, Commodity New IE
--------【没有开放域信息抽取的数据集】
提示词
--------【属于是基本结构了】
任务指令 + 候选标签 + 输出格式描述 + 样例 + 输入文本
步骤
设置了零样本、 少样本 、少样本+思维链 3种情况
避免prompt的造成的偏差: 设置5个不同的prompt,汇报均值和标准差
ICL和COT 时,选择最好的prompt,随机选择 5个样本
--------【为了提升效果,或许可以尝试使用“差异策略”选择样本,即最大化所选样本间的差异】
样本量:设置阈值为3000,大部分数据集为全量数据,数据量超过阈值的随机选择
指标: F1
结果
几个注意点:
- 落后于专用模型,提到所对比的“专用模型”都是有监督模型
- 在更难的任务上落后的更多 【这就是我们的机会啊兄弟们】
- 提到了另一篇论文,该论文用LLM取得了超过专用模型的结果,认为是因为它使用了更多的样本
- COT没有比ICL取得更好的结果
反思(提出指标存在的问题)
LLM结果倾向于包含冠词、数量词、形容词、时间、地点等修饰词
--------【那么问题来了,我们在实践过程中应该如何”对齐颗粒度“呢】
论文使用了soft-Matching,实际就是在评估时使用相似性,与标注结果相似度超过阈值的,就认为是正确的。
鲁棒性分析
-
无效输出,GPT很少产生无效的输出
包括错误的输出格式 or 结果不符号任务指令的要求-------【如何自动的识别无效的输出?】
-
不相关的上下文, 对GPT效果影响很大
在输入的开头或结尾插入不相关的的文本。论文还提到对分类型抽取任务影响较小 -
目标类型频率
GPT受长尾效应的影响
实验时,通过训练集中对应类型出现的次数来区分长尾./非长尾数据
其它
GPT不能区分主谓顺序
错误分析
总结了7种错误类型
未标注(unannotated span)、错误的类型(Incorrect type)、未识别(missing spans)是主要的错误
其中,未标注占比最高
------【提到关于数据质量的担忧,以及使用GPT辅助数据标注的可能性】