支持私有化部署
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


我要投稿

大模型+数据标注=?

发布日期:2024-04-16 15:15:00 浏览次数: 4669
作者:鹤啸九天

微信搜一搜,关注“鹤啸九天”

引言  

大模型这么强了,数据标注员会下岗吗?怎么驾驭大模型?


随着机器学习/深度学习的兴起,数据成了“天花板”,有什么样的数据,就有什么样的模型效果,如果数据质量不佳,什么都白搭。正所谓:

    “garbage in garbage out”

    于是,人工标注成了项目实施的必备环节,直接关系到产品效果。

    然而,标注过程相对枯燥、重复、无趣,成了没有感情的工具人…向人工智能训练师们致敬


    (0)人工标注介绍

    数据标注是指对文本、图像、音频、视频等数据进行高质量、高精度地打上标签,以满足机器训练学习的需求。

    • ① 数据类型主要分为:文本、图像、语音、视频等

    • ② 标注任务主要有:分类标注、标框标注、区域标注、描点标注和其他标注

    • ③ 人工标注中主要角色:

      • 1) 标注员: 标注数据, 由经过专业培训的人员来担任.在一些特定场合或者对标注质量要求高的行业(例如医疗), 直接由模型训练人员(程序员)或者领域专家来担任.

      • 2) 审核员: 审核已标注数据, 完成数据校对和数据统计, 适时修改错误并补充遗漏的标注. 这个角色往往由经验丰富的标注人员或权威专家来担任.

      • 3) 管理员: 管理相关人员, 发放和回收标注任务

    数据标注过程中,各个角色之间相互协作、相互制约

    图解人工标注基本流程及各方协作关系

    • 角色上,增加了项目经理,负责标注规则宣讲、任务分发、回收、人员调配等

    • 审核员里的修改环节可由质检员承担

    参与标注、质检、审核等环节的人员需要同时兼顾先验知识和标注规则,

    标注的本质:

    • 标注 = 常识 + 标注规则

    • 常识对应先验知识。有了常识能力,仅提供类别名称(未提供标注规则)就能标注。即零样本NLP模型(如Siamese-uniNLU、paddleNLP)的核心。

    • 标注规则帮助标注员明确任务、区分边界。包括:任务定义、类别定义、边界处理逻辑等


    (1)人工标注局限性

    尽管训练师们披星戴月,加班加点,完成数据标注,最终效果未必令人满意。

    以简单的文本分类为例,经过培训的标注人员平均效率 200-800条/天,质检通过后,交付数据仍然有10-30%的错误率。

    原因多种多样

    • 标注规则不确定:初期规则一般由需求方提供,从少量数据+业务经验中提炼而来,难以兼顾大部分情形,这个环节一般需要几轮迭代

    • 标注人员方差:同一句话,不同人的理解不一样

    • 任务难度大:有些样本人都难以区分。


    一些示例告诉你NLP为什么难:

    • cover me !→ 盖外套,还是 掩护? 

    • 你也想犯范范范玮琪犯过的错吗

    • 《绿林俊杰》→ 林俊杰做错了什么?为什么要绿他

    • 碳碳键键能能否否定定律一

    • 书名:无线电法国别研究

    • 他快抱不起儿子了,因为他太胖了 → 到底为啥抱不起来?

    • 中不不建交是受印度的影响 → 中不建交不受印度的影响

    • 同学会标语:从小便相识,大便情更浓

    更多案例见文末

    语音、图像和视频等模态中,文本难度最大,因为语言是人类创造,非结构化,人类沟通过程时为了提升效率,常常:

    • 忽略常识、背景信息(世界模型)—— 还记得文言文、早期电报吗

    • 然后尽可能的压缩(编码)—— 有损压缩,丢失信息

    • 接收者按照自己的常识、背景加以理解(解码)—— 各自的世界模型不同,信息不全,解码结果当然就不同了


    总结下人工标注面临的问题

    • 部分任务需要有领域知识:如金融情感分类任务标注要求同时具有金融 + 社交媒体知识,对标注员的专业性要求高

    • 整体准确率有限:即便人类也只能达到70%的标注一致性,仅通过人类难以获得大量的高质量标注样本

    • 其它:理想情况,人力充足、时间充足,而实际上,大部分任务都是排期紧,标注资源少,只有一轮试标+标注+质检的机会。


    (2)用大模型(LLM)来标注?

    上面提到的这些问题该怎么办?

    引入LLM后, 部分工作得以替代

    • LLM本身具备一定常识。不提供细则,也能有良好的效果;

    • LLM 听懂人话高效。标注规则通过自然语言表达,也通过自然语言修改,成本低、速度快、且人类可以理解。

    既然大模型理解能力这么强,都要达到AGI了,那能不能用到人工标注里?

    • LLM + In-Context Learning 来标注:有实验证明,使用prompt提示工程效果不错,Reddit测试集上ACC达到72%。

    详见往期文章:Prompt提示工程编写指南文生图Prompt如何自动化?贾扬清PromptLLM实测


    那么,GPT vs 人工,到底谁厉害?

    【2023-3-29】苏黎世大学:

    ChatGPT标注数据比人类便宜20倍80%任务上占优势

    • ChatGPT Outperforms Crowd-Workers for Text-Annotation Tasks

    在ChatGPT面前,无论成本还是效率,人类毫无优势:

    • 成本:ChatGPT平均每个标注成本低于0.003美元,比众包平台便宜20倍;何况AI还能24*7无休。

    • 效率:在相关性、立场、主题等任务中,ChatGPT也是以4:1的优势“碾压”人类。

    用 6183个 条推文样本证明:ChatGPT 在多个标注任务中优于众包工作者,包括相关性、立场、主题和框架检测。

    • ChatGPT 零样本准确性在4个数据集中平均超出众包工作者20%

    • ChatGPT 的编码一致性在所有任务中都超过了众包工作者和专业标注员。

    • ChatGPT 每次注释成本不到 0.003 美元,比 MTurk 众包员工便宜30倍。

    大型语言模型大幅提升文本分类效率。

    (3)LLM标注范式

    有人总结了LLM标注的3种范式:调参式、工具式、智能式。

    • (1) 调参式:精心设计Prompt,不断迭代出满意的版本

    • (2) 工具式:局部使用

    • (3) 智能式:智能体迭代


    表格整理:

    范式 说明 适用场景 优点 缺点
    调参式 prompt优化(非标注规则) 冷启动 高度自动化 bad case迭代不便
    工具式 LLM作为局部子标注器 通用 可控,对LLM依赖较低,支持case迭代 框架复杂,人工重
    智能式 所有工作都由prompt承担 只需修改标注规则 通用 对LLM要求高,具备复杂指令理解能力


    各范式间的关系

    • 智能式调参式都用全局性LLM来完成标注任务;而工具式里LLM局部作用;

    • 智能式工具式核心是迭代标注规则;而调参式核心是迭代与业务无关的变量(参数、prompt技术等);

    • 调参式可以结合在智能式工具式当中,以进一步提升效果;


    图解几种模式的差异

    更多细节,参考作者段誉的知乎文章:https://zhuanlan.zhihu.com/p/662285150


    (4)LLM标注工具

    (4.1)ChatGPT NER Demo

    ChatGPT 用于 人工标注的 Web系统:Weak Labeling Tool using ChatGPT,链接见附录

    把ChatGPT当做标注员,完成初步标注


    以上解决的是简单任务,复杂任务标准不明,怎么办?

    【2023-6-18】无需人力标注!悉尼大学华人团队提出”GPT自监督标注范式

    业界和学界面临数据标注任务:成本较高、存在偏见、难以评估,以及标注难度等问题。

    悉尼大学研究提出通过大语言模型自监督生成标注的框架。首次利用基于生成-还原循环标注的GPT自监督方法,解决了上述问题

    • davinci,text-curie-001,text-davinci-003,gpt-3.5-turbo在不同评估标准下标注数据质量的得分

    核心思想: 利用大语言模型作为一个黑盒优化优器,构造了一个循环:

    • 模版质量越高,生成的数据-标注对质量越高;

    • 生成的数据标注对质量越高,用当前质量更高的数据对替换上一轮的模版。

    • 以此往复迭代,滚雪球式循环提升标注质量。


    (4.2)Autolabel

    【2023-6-19】GPT-4终结人工标注!AI标注比人类标注效率高100倍,成本仅1/7

    数据标注需要找到一个新方法,避免大量使用人工标注带来的包括道德风险在内的其他潜在麻烦。所以,包括谷歌/Anthropic在内的AI巨头和大型独角兽,都在进行数据标注自动化的探索。

    • 谷歌开发了一个和人类标注能力相近的AI标注工具

      • 论文: RLAIF:Scaling Reinforcement Learning from Human Feedback with AI Feedback

    • Anthropic采用了Constitutional AI来处理数据,也获得了很好的对齐效果

      • 论文: Constitutional Al: Harmlessness from AI Feeedback


      初创公司refuel,也上线了一个AI标注数据的开源处理工具:Autolabel。用AI标注数据,效率最高提升100倍. introducing-autolabel

      • 按照使用成本最高的GPT-4来算,采用Autolabel标注的成本只有使用人工标注的1/7,而如果使用其他更便宜的模型,成本还能进一步降低

    Autolabel结合GPT-4进行标注可取得88.4%的准确率,超过了人工标注的准确率。Autolabel还可以估计标注置信度,允许用户平衡成本和质量。总体来说,Autolabel极大地降低了数据标注的门槛,为训练高质量模型提供了可能。

    (4.3)LabelFast

    【2023-11-3】LabelFast:基于LLM的NLP任务自动标注开源工具,Demo发布「AI小作坊」

    • LabelFast 用LLM技术,识别并快速标注简单文本数据的开源工具,demo

    • 标注员只需关注那些少量而关键的难样本,达到降本增效

    特点如下:

    • 开箱即用。无需微调和Prompt工程,提供 标注任务 + 样本,马上开始标注;

    • 诚实可信。在提供标注结果的同时,还提供Confidence信息,以表示模型对标注结果的信心程度,便于使用者确定何时信任模型结果;

    • 完全开源。LabelFast源于开源的模型和技术,因此也将回馈开源社区。

    LabelFast核心理念:

    • 用最快的速度,完成简单样本的标注,让人类聚焦于关键的难样本。

    常见使用场景

    • 单条样本标注: 将单条样本填入文本框 -> 执行标注 -> 得到标注结果;

    • 批量样本标注: 将多条样本,按格式做成xlsx/csv文件 -> 上传文件 -> 执行标注 -> 得到批量标注结果;

    • 批量样本标注 + 选择confidence threshold: 将多条样本 + 真实标签,按格式做成xlsx/csv文件 -> 上传文件 -> 执行标注 -> 得到批量标注结果 + 各confidence threshold下的任务表现(output2) -> 根据任务表现,确定confidence threshold,高于此值的自动标注结果可直接使用,低于此值的通过其他方式标注


    (4.4)图片标注

    以上都是文本标注工具,图像领域怎么办?

    【2024-1-8】告别逐一标注,一个提示实现批量图片分割,高效又准确

    Segment Anything Model (SAM) 在图像分割领域兴起,优异的泛化性能引发了广泛的兴趣。然而,尽管如此,SAM 仍然面临一个无法回避的问题:

    • 为了使 SAM 能够准确地分割出目标物体的位置,每张图片都需要手动提供一个独特的视觉提示


    目前的一些方法,如 SEEM 和 AV-SAM通过提供更多模态的输入信息,引导模型更好地理解要分割的物体是什么。然而,尽管输入信息变得更加具体和多样化,但在实际场景中,每个无标注样本仍然需要一个独特的提示来作为指导,这是一种不切实际的需求。

    伦敦大学玛丽女王学院提出了一种无需训练的分割方法 GenSAM ,只提供一个任务通用的文本提示的条件下,将任务下的所有无标注样本进行有效地分割。

    Generalizable SAM(GenSAM)模型旨在摆脱像 SAM 这类提示分割方法对样本特定提示的依赖。

    作者提出跨模态思维链(Cross-modal Chains of Thought Prompting,CCTP)的概念,将一个任务通用的文本提示映射到该任务下的所有图片上,生成个性化的感兴趣物体和其背景的共识热力图,从而获得可靠的视觉提示来引导分割。此外,为了实现测试时自适应,作者进一步提出了一个渐进掩膜生成(Progressive Mask Generation,PMG)框架,通过迭代地将生成的热力图重新加权到原图上,引导模型对可能的目标区域进行从粗到细的聚焦。值得注意的是,GenSAM 无需训练,所有的优化都是在实时推理时实现的。

    (5)LLM标注实战

    说是一回事儿,做是另一回事儿。

    来实测下LLM标注效果

    (5.1)数据集

    以最简单的文本分类任务为例:倾向性分析

    • 输入:太阳出来了吗 →输出:积极

    • 输入:怎么这么慢 → 输出:消极

    • 输入:嗯嗯 → 输出:中性

    注意:这几个示例的答案不唯一,第一句也可以是中性,第三句也可以消极(湖北人高冷口头禅),这里只代表大部分的字面含义理解,不含背景、上文

    (5.2)任务设计

    使用范式智能式范式,构建多个Agent,充当标注流程中各个角色,检验标注效果

    自动标注任务设计

    • 基本流程: 任务开始 → 分发给标注员 → 质检员质检 → 回收

    • 标注员: 4个,如下图

    • 质检员: 1个,负责检测标注结果是否幻觉、是否一致,如果不对一并修改

    • 质检方式: 统计集成+LLM检测,即出现不同结果时,选最多的


    流程图:


    (5.3)代码实现

    使用 GPT-3.5和GPT-4实现。

    代码文件 auto_labeler.py 内容

    • 使用多线程(theading)实现多个标注人员一起标注


    代码片段

      # --------------- prompt设计 ---------------label_set = ['积极', '消极', '中性']task_desc = f"给出以下句子的情绪等级: {','.join(label_set)}\n注意: 输出结果不能超出标签范围"
      # annotator 标注员system_prompt_a = f"""你是一个标注员,请完成文本分类标注任务. 任务描述: {task_desc}待标注数据: [query]标注结果: """# inspector 质检员system_prompt_i = f"""你是一个质检员,你判断标注结果是否合格- 如果标注员识别结果(逗号分隔)都一样, 返回: Yes,标注结果- 如果标注员识别结果(逗号分隔)不同, 返回: No,矫正后标注结果
      任务描述: {task_desc}待标数据: [query]标注结果: [result]质检结果: """

      听说你不想写代码?

      没关系,可以使用大厂的Bot管理平台来实现,比如字节的Coze(扣子)

      • 【国外版】Multi-Agent 实现: AutoLabeler自动标注员

      • 【国内版】workflow 实现: workflow

      链接公众号私信

      (5.4)效果分析

      运行代码, 两种模型各跑两次,结果相同,说明非随机结果

      执行多代理自动标注

      python auto_labler.py

      model: gpt-3.5-turbo-0613

      样例 标注结果(,分割) 平均标注耗时(s) 质检结果 最终标签 置信度
      太阳出来了吗 积极,积极,积极,积极 0.57 Yes 积极 100.00
      怎么这么慢 消极,消极,消极,消极 0.46 Yes 消极 100.00
      你客气了 中性,积极,积极,积极 0.45 Sure 积极 100.00
      嗯嗯 中性,中性,中性,中性 0.42 Yes 中性 100.00
      不想说话 中性,消极,消极,消极 0.44 Sure 消极 75.00

      model: gpt-4-0613

      样例 标注结果(,分割) 平均标注耗时(s) 质检结果 最终标签 置信度
      太阳出来了吗 中性,中性,中性,中性 1.30 Yes 中性 100.00
      怎么这么慢 消极,消极,消极,消极 0.92 Yes 消极 100.00
      你客气了 中性,中性,中性,中性 1.02 Yes 中性 100.00
      嗯嗯 中性,中性,中性,中性 1.26 Yes 中性 100.00
      不想说话 消极,消极,消极,消极 1.01 Yes 消极 100.00

      gpt-3.5 vs gpt-4 对比分析

      • gpt-3.5 速度快(平均0.45s),但准确率不高(60%),不够稳定(60%)

      • gpt-4 速度慢(平均1.1s), 准确率高(100%),且稳定(100%)


      以上数据量较小,统计意义欠佳,仅供参考,但大致可信,1k的实验数据集,结果也类似。

      (6)思考

      以上是LLM在文本分类上的小试牛刀,LLM在文本分类上有没有新鲜点子?

      当然有,学术界的做法总结:

      • (1)Prompt系列,除了直接PE,In-Context Learning 3种改进技术如下:

        • Noisy Channel Model:2022年5月,华盛顿大学和Meta出品,根据贝叶斯概率公式,反其道而行之,将 Prompt 反着写,即将分类任务转化为生成任务

        • Contextual Calibration(简称CC):2021年,消除ICL导致高方差的3类bias

        • Domain-context Calibration(简称DC):2023年7月,瑞士苏黎世联邦,改进CC,消除llm、prompt和domain里的bias

      • (2)蒸馏法:2023年,基于分类的蒸馏(CLS)、基于回归的蒸馏(REG),最后选择P-R曲线更平滑的REG,

        • 最佳prompt组合技:manual few-shot COT + self-consistency




      53AI,企业落地大模型首选服务商

      产品:场景落地咨询+大模型应用平台+行业解决方案

      承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

      联系我们

      售前咨询
      186 6662 7370
      预约演示
      185 8882 0121

      微信扫码

      添加专属顾问

      回到顶部

      加载中...

      扫码咨询