• 【通览一百个大模型】Baize(UCSD)


    【通览一百个大模型】Baize(UCSD)

    作者:王嘉宁,本文章内容为原创,仓库链接:https://github.com/wjn1996/LLMs-NLP-Algo

    订阅专栏【大模型&NLP&算法】可获得博主多年积累的全部NLP、大模型和算法干货资料大礼包,近200篇论文,300份博主亲自撰写的markdown笔记,近100个大模型资料卡,助力NLP科研、学习和求职。


    Baize大模型基本信息资料卡

    序号大模型名称归属推出时间规模预训练语料评测基准模型与训练方法开源论文模型地址相关资料
    58BaizeUCSD2023-0513B不涉及预训练,不存在预训练语料。通过ChatGPT进行Self-Chat实现自动构建大量的多轮对话数据。Baize的训练结构如下图所示:
    image.png
    初始化一个种子数据集(Quora4 和 Stack Overflow5 的问题作为种子),并进行随机采样,根据采样的结果设计对应的提示模板后,交给ChatGPT进行自我对话,从而产生大量模拟人类的多轮对话数据,总共产生111.5k对话数据,花费约100美元。
    训练过程中,基于LLaMA和LoRA进行参数有效性训练,得到Baize模型。输入序列为512,LoRA中的秩k为8。使用8位整数格式 (int8) 参数初始化LLaMA检查点。 对于7B、13B和30B模型,使用 Adam 优化器更新LoRA 参数,batch size为64,学习率为2e-4、1e-4和 5e-5。 可训练的LoRA参数在 NVIDIA A100-80GB GPU 上微调了1个 epoch。
    https://github.com/project-baize/baize-chatbothttps://arxiv.org/pdf/2304.01196.pdfhttps://huggingface.co/project-baize/baize-v2-13b
    https://huggingface.co/project-baize/baize-lora-30B
    白泽大模型介绍

    一、核心要点

    • 随着ChatGPT和GPT-4的提出,大模型展现了超出人类表现的能力,并在很多领域表现的很精彩;
    • 然而,现如今这些大模型均是黑盒模型,对研究和应用都带来了一定的阻碍。
    • 缺乏可获得的高质量的对话数据加剧了上述的问题和困难。
    • 为了解决这个问题,我们提出一种新颖的pipeline,利用chatgpt的能力自动生成一系列高质量的多轮对话语料。这些语料可以作为有价值的资源用于训练或评估对话模型在多轮对话中的表现。
    • 基于LLaMA在生成的多轮对话语料上训练,得到我们的Baize模型。
    • 我们继续提出一种自蒸馏式的对齐方法,进一步提升模型的效果。

    二、方法

    image.png

    Self-Chat

    Self-Chat旨在完全利用chatgpt扮演对话角色生成对话数据。
    给定一个seed,可以是一个问题,或者一个主题,配套一个模板,让chatgpt生成对话数据。
    模板如下所示:
    image.png
    根据这个模板,给定一个seed,让chatgpt生成多轮对话数据,样例如下所示:
    image.png
    挑选Quora和Stack Overflow数据集作为seed,每个数据集中挑选55k个问题,最终获得了111.5k个多轮对话数据,花费约100美元.
    另外为了提高模型的instruction-tuning能力,也引入了alpaca语料。
    最终的多轮对话数据如下所示:
    image.png

    模型训练

    在构造的对话数据集上,选择LLaMA-7B和LLaMA-13B模型进行参数有效性监督微调,对应的模型和数据如下表示:
    image.png
    参数有效性方法选择LoRA。

    • 选择V1版本的对话数据,SFT后得到的模型是Baize-v1;
    • 选择v2版本的对话数据,SFT后得到的模型是Baize-v1.5;
    • 在Baize-v1.5基础上,进行对齐,得到Baize-v2模型。

    模型训练时,在LLaMA的Transformer的每一层嵌入LoRA参数。

    Self-Distillation with Feedback

    在SFT阶段后,为了提升模型的对齐性能,提出自蒸馏方法。
    首先在Quora数据集上,让SFT模型生成4个候选答案response。然后设计模板,让ChatGPT作为评估器对4个候选答案进行排序。模板如下所示:
    image.png
    因此,每个question可以得到ChatGPT认为最好的response。
    在对齐阶段,选择Baize-v1.5模型,并额外插入新的LoRA参数,训练时,只选择最好的response进行优化训练。

    实验细节

    最大长度:512/1024
    LoRA rank=8
    量化感知训练:INT8量化训练
    Adam优化器,batchsize=64,单机A100(80G);
    学习率2e-4(7B)、1e-4(13B)和5e-5(30B);
    推理阶段采用的prompt如下所示:
    image.png

    在prompt中,插入“The AI assistant consistently declines to engage with topics, questions, and instructions related to unethical, controversial, or sensitive is- sues.”较为关键。

    实验

    (1)GPT-4 Score
    挑选Vicuna评估集,包含80个人工标注的prompt,涉及9个不同的类别。
    在评估时,挑选ChatGPT的答案,和Baize(或者其他baseline模型)的答案,设计指令让GPT-4进行挑选。计算baize(或者其他baseline)的答案被挑选到的比例
    实验结果如下所示:
    image.png

    因为每次都是和ChatGPT对比,因此ChatGPT的答案认为是100%的。Baize-v2-13B发现有92%的情况下,GPT-4挑选了Baize的答案,说明其效果最好。
    GPT-4会偏向于挑选第一个候选答案,为了和之前的工作保持一致,我们将ChatGPT的生成结果作为第一个候选答案。

    (2)质量评估
    对于一些不道德的问题,我们期望模型不能给出反应,下面是case study,说明Baize模型可以有效避免回答潜在道德风险的问题。
    image.png

      博客记录着学习的脚步,分享着最新的技术,非常感谢您的阅读,本博客将不断进行更新,希望能够给您在技术上带来帮助。


    【大模型&NLP&算法】专栏

    近200篇论文,300份博主亲自撰写的markdown笔记。订阅本专栏【大模型&NLP&算法】专栏,或前往https://github.com/wjn1996/LLMs-NLP-Algo即可获得全部如下资料:

    • 机器学习&深度学习基础与进阶干货(笔记、PPT、代码)
    • NLP基础与进阶干货(笔记、PPT、代码)
    • 大模型全套体系——预训练语言模型基础、知识预训练、大模型一览、大模型训练与优化、大模型调优、类ChatGPT的复现与应用等;
    • 大厂算法刷题;

    在这里插入图片描述

  • 相关阅读:
    员工管理:人才九宫格,提低扩中保高
    输出格式 && 常用的运算符
    【libevent】异步UDP
    学会nodejs中express框架进行get和post请求,如何获取和增加用户数据?(express的安装以及实战案例讲解)
    阿里业务平台技术质量部——测试开发面试
    MYSQL 敏感数据加密后进行模糊查询
    读书笔记:彼得·德鲁克《认识管理》第19章 社会影响和社会问题
    多模态知识图谱构建系统论文笔记
    俄罗斯方块
    搭建直播带货源码,商品带货销售不止直播一种方式
  • 原文地址:https://blog.csdn.net/qq_36426650/article/details/134002437