浪潮发布了中文巨量模型“源1.0”,参数量达2457亿,超越美国OpenAI组织研发的GPT-3。“源1.0”在语言智能方面表现优异,获得中文语言理解评测基准CLUE榜单的零样本学习(zero-shot)和小样本学习(few-shot)两类总榜冠军。在零样本学习榜单中,“源1.0”超越业界最佳成绩18.3%,在6项任务中获得冠军;在小样本学习的4项任务获得冠军。在成语阅读理解填空项目中,源1.0的表现已超越人类得分。

为了提高“源1.0”在不同下游任务的泛化性和精度,我们采用了多种小样本学习优化策略。本文介绍了标签扩充和校正相结合的小样本学习优化方法。该方法不仅能消除预训练语料中标签出现频率不同而带来偏置,而且通过空文本或数据集校正标签词和输入样本带来的偏置,可使巨量模型避免再训练,降低了内存需求和系统复杂性,而且大大提高了下游任务的准确率和稳定性。

根据在下游任务推理时提供的样本数目,我们进一步将表述专门化为“零样本”和“小样本”。

采用零样本和小样本学习的原因

人类可以仅通过一个或几个示例就可以轻松地建立对新事物的认知,而机器学习算法通常需要成千上万个有监督样本来保证其泛化能力。拥有从零样本、小样本中学习和概括的能力,是人工智能向人类智能发展的重要标志。简单来说,零样本学习就是训练的模型不仅仅能够识别出训练集中已有的数据类别,还可以对未见过的类别的数据进行区分;小样本学习就是使用远小于深度学习所需要的数据样本量,达到接近甚至超越大数据深度学习的效果,如图1。

图1 零样本学习和小样本学习示例

对“源1.0”这样的超大型模型进行微调比较困难而且成本很高,因此希望固定它们的模型参数,然后将不同的优化策略应用到不同下游任务上。最新的研究成果也表明,在自然语言处理(NLP)领域通过增加模型规模、扩大预训练数据体量、使用更多的计算资源等方式,巨量模型可以在小样本学习甚至零样本学习任务中获得非常出色的性能表现。预训练好的巨量模型不必再经过复杂的“微调”过程,就可以为诸多应用任务泛化支持提供统一强大的算法支撑。

零样本和小样本学习优化方法

巨量模型最核心的能力是零样本学习和小样本学习能力。但是基于巨量模型的零样本和小样本学习可能是非常不稳定的:提示模板格式的选择、训练样本、甚至训练样本顺序都可能导致准确性在接近偶然和接近最先进水平之间漂移,这种不稳定性源于语言模型对预测某些答案的偏差,例如,那些被放在提示语末尾附近的答案,或在预训练数据中常见的答案,这些偏差往往会导致模型的输出分布发生变化。因此针对零样本和小样本学习任务,我们提出了一套校准和标签扩展方案来提升模型在下游任务上的性能表现。大量实验结果表明这套方案能够在多项语言处理NLP任务上稳定地提升模型的精度。以下内容以单句分类任务为例进行介绍。

| 提示模板设计

1> 零样本学习

经过大量的实验对比,我们发现单句分类任务更适合基于概率生成方式,因此将提示模板设计成填空最后一个词的形式。

2>小样本学习

巨量模型的准确性在很大程度上取决于训练示例的选择和排列。因此我们从训练集中人工挑选三个不同类别(娱乐、文化、体育)示例进行测试排列测试。

从实验数据可知,当模型参数量较小时,模型没有学到足够的知识,此时小样本示例对分类结果起负作用。随着模型参数量增大,小样本学习的效果越明显。

| 校准

巨量模型在预训练中会从语料库带来偏置,导致下游任务精度低或性能不稳定。例如,在零样本情感分类设置中,给定“N/A”作为输入,GPT-3 倾向于预测为“positive”而不是“negative”,而本应该分配50/50的概率给这两个相反的标签。另一个问题是同一对象的不同表示(例如,“computer”和“PC”)可能会竞争概率质量,导致任务标签上的分布不理想。因此在实际应用中校正很有必要。具体可参考论文:Calibrate Before Use: Improving Few-Shot Performance of Language Models

https://arxiv.org/abs/2102.09690

我们采用解决的方法是通过无文本输入对带偏置的标签词进行补偿,把它们校准为无偏状态,减少不同提示选择之间的差异。

具体实现:

输入无文本样例,即将无文本["N/A", " ", "[MASK]"]分别和2.1设计的提示模板组合,如"N/A"与EPRSTMT提示模板组成输入样例:“N/A。总体来说,该产品很__”;

将无文本样例输入语言模型,输出标签词位置对应的所有类别概率(logits),并取平均值后归一化得到

p_cf;

将验证集样本与提示模板组合为验证集样例输入语言模型,输出校正前所有类别概率

p_pre。

根据公式 p_cal=softmax(W*p_pre  + b) 计算校正后类别概率。其中有两种方案:一、当W= [diag(p_cf)]^(-1)通过计算校正矩阵时,p_cal=softmax(W*p_pre  );二、当b = -1 *p_cf通过计算校正矩阵时,p_cal=softmax(p_pre  + b)。

需要特别注意的是,为了同时校正标签词和输入样本带来的偏置,我们还提出了将训练集或验证集样本替代无文本["N/A", " ", "[MASK]"]计算校正矩阵的方法,使得模型可以根据输入数据分布进行校正。实验结果如表3所示。

综合来看,通过数据集校正,效果更佳。

| 标签扩展

在理想状态下,所有标签在预训练语料中的出现频率应该大致相同。但是在实验中,我们发现标签在语料中出现的频率存在差异,使得模型对预测结果有偏好性。在实际应用中,人工从接近6万的词表空间中选择符合条件的标签映射词是非常困难的,而且通常会引入主观因素(参考论文Knowledgeable Prompt-tuning: Incorporating Knowledge into Prompt Verbalizer for Text Classification)。因此我们采用word2vec算法和人工结合方式,扩展标签词步骤如下:

1> 通过word2vec初步筛选出与原标签相近,并在词表中的标签;

2> 在初步筛选候选集中再人工精选,删去稀有词,尽可能找先验分布相近的标签词对。

| 标签扩展与校准结合

将2.3扩展标签词与2.2校准相结合提出三种校正优化方案,在实际应用中可根据测试选择:

方法一:先通过模型对扩充后标签映射词计算其相应概率,然后按类别取平均,最后再校正;

方法二:先通过模型对扩充后标签映射词计算其相应概率,然后按类别取最大值,最后再校正;

方法三:先通过模型对扩充后标签映射词计算其相应概率,然后分别进行校正,最后按类别取平均。

“源1.0”在CLUE榜单单句分类任务上的应用方法举例

中文语言理解测评基准(CLUE,https://www.cluebenchmarks.com/)是目前公认最权威的中文语言模型评估基准,提供了一个由语言学家创建的诊断评估数据集,覆盖多个不同程度的语言任务,具有广泛代表性。代码地址:https://github.com/chineseGLUE/chineseGLUE

单句分类任务包括情感分类(Eprstmt:用于情感分析的电子商务产品评论数据集)、新闻标题分类(Tnews:Toutiao Short Text Classificaiton for News)、应用描述分类(Iflytek:长文本分类)和学科分类(Csldcp:中国科学文献学科分类)。Eprstmt 是二分类任务,包括带有正面和负面产品评论。Tnews、Iflytek 和 Csldcp 是多分类任务,分别有 15、118 和 67 个类别。如果标签为 0 或 1 或是英文,我们会将标签转换为中文。如果标签长于一个标记,我们将标签转换为一个标记的长度,并确保其具有相同或相似的含义。对于所有文本分类任务,标签都附加在句子的末尾,句子和标签直接用提示词链接。我们的生成模型会根据给定的句子预测标签,并计算每个候选标签的概率 P(label|sentence),其中概率最大的是模型预测结果。

预训练好的“源1.0”千亿参数模型,结合下游任务优化方法,在零样本学习榜单中,超越业界最佳成绩18.3%,并在文献分类、新闻分类,商品分类、原生中文推理、成语阅读理解填空、名词代词关系6项任务中获得冠军。

图2 Zero榜单打榜结果

关于“源1.0”的更多信息,大家可以参照浪潮发布在arxiv上的论文:

https://arxiv.org/abs/2110.04725

中文巨量模型“源1.0”的小样本学习优化方法相关推荐

  1. 中文巨量模型“源1.0”:模型结构与生成效果解析

    浪潮人工智能研究院 "源 1.0"自 2021 年 9 月底发布以来收获了广泛的关注.其参数量达 2457 亿,超越美国 OpenAI 组织研发的 GPT-3."源 1. ...

  2. 如何训练2457亿参数量的中文巨量模型“源1.0”

    如何训练2457亿参数量的中文巨量模型"源1.0" 浪潮人工智能研究院 从2018年的BERT到2020年的GPT-3,NLP语言模型经历了爆发式的发展过程,其中BERT模型的参数 ...

  3. 中文巨量模型“源1.0”的学习优化方法

    最近,浪潮人工智能研究院发布了中文巨量模型"源1.0",参数量达2457亿,超越美国OpenAI组织研发的GPT-3."源1.0"在语言智能方面表现优异,获得中 ...

  4. 中文巨量模型“源1.0”的模型结构与生成效果解析

    "源 1.0"自2021年9月底发布以来收获了广泛的关注.其参数量达2457亿,超越美国OpenAI组织研发的GPT-3."源1.0"在语言智能方面表现优异,获 ...

  5. 中文巨量模型“源1.0”:语料质量清洗与数据分析方法

    2021年,浪潮人工智能研究院发布了中文巨量模型"源1.0",其参数规模为2457亿,训练采用的中文数据集达5TB,超越美国OpenAI组织研发的GPT-3模型."源1. ...

  6. AI周报丨中文巨量模型源1.0比GPT-3强在哪里?;谷歌用协同训练策略实现多个SOTA,单一ViT模型执行多模态多任务

    01 # 行业大事件 语言大模型的终极目标是什么? 在自然语言处理(NLP)领域,暴力美学仍在延续. 自 2018 年谷歌推出 BERT(3.4 亿参数)以来,语言模型开始朝着「大」演进.国内外先后出 ...

  7. 又被 AI 抢饭碗?2457 亿参数规模,全球最大中文人工智能巨量模型 “源1.0”正式开源...

    作者 | 伍杏玲 出品 | AI科技大本营(ID:rgznai100) 输入: 昔我往矣,杨柳依依. 今我来思,雨雪霏霏. 行道迟迟,载渴载饥. 我心伤悲,莫知我哀! (以战争为题写一首诗) 回复: ...

  8. 浪潮信息人工智能巨量模型“源1.0”,切实促进AI行业高质量发展

    自从GPT-3发布以来,大模型成为几乎所有全球头部AI企业的逐鹿目标.浪潮信息作为全球领先的AI厂商,也高举巨量模型的大旗,加速创新研发.在10月26日于北京举行的2021人工智能计算大会(AICC ...

  9. 全球最大AI巨量模型,参数2457亿炼丹16天最懂中文

    晓查 梦晨 发自 凹非寺 量子位 报道 | 公众号 QbitAI 一个比GPT-3还大的AI模型,如果把近5年中文互联网能爬取到的内容看了个遍,会怎么样? 能学会日语. 我们把日语词汇"气持 ...

最新文章

  1. Outlook2010 Bug 一则
  2. 创建ContentProvider的详细步骤
  3. 浅谈Java/Android下的注解
  4. 是什么调性_协调性训练 | 单脚跳
  5. 搞技术多少要有点危机意识,切不可温水煮青蛙
  6. Ubuntu中Cairo Dock安装和设置
  7. SpringMVC控制器单例和多例
  8. java 中阶乘如何表示_Java阶乘实例
  9. 教你如何不登陆复制CSDN代码
  10. 极速PDF打开文件后工具栏不显示怎么办
  11. 布朗运动、伊藤引理、BS公式
  12. 谷歌中国正式宣布李开复辞去总裁一职
  13. 新《劳动法》能要来“双薪”?
  14. RequestResponse入门1(Request)
  15. Linux -- snmp v3开通、认证、加密及其他
  16. 英雄联盟(多重背包)
  17. 什么是数据规约,数据规约的策略都有哪些
  18. 三菱服务器显示rb是什么故障,三菱变频器常见的故障代码 以及故障说明
  19. 巧妙解决-数学家年龄问题
  20. 嵌入式开发:嵌入式应用程序中的信任链简介

热门文章

  1. LWN: Rust语言写的微内核操作系统Redox
  2. 腾讯T2大牛亲自教你!看了谷歌大神写的Spring源码笔记,不愧是大佬
  3. 华为 海思看门狗使用说明
  4. 面向UE4新手----基于UE4的室内软装系统设计和实现思路
  5. 我的又一个iPhone程序正式上线了
  6. 空调控制协议盒_睿志诚汽车总线协议盒 后装车机也能控制车辆
  7. 达梦DM8表空间数据文件误删除恢复
  8. day02-输入和输出
  9. 某东14薪变16薪,是诚意还是套路?
  10. WindowsMobile应该如何发展?-2(未完待续)