大模型学习笔记1【大模型】

news2024/11/25 0:52:24

文章目录

  • 学习内容
    • 0.大模型应用的流程
    • 1.构建任务/领域的数据集
    • 2.寻找备选模型
    • 3.调整模型
      • Prompt
      • Fine-tuning
        • PEFT
      • RLHF

学习内容

  • 根据自己的经验和课程的学习,系统的记录一下大模型落地的流程。

0.大模型应用的流程

  1. 构建任务/领域问题数据集
  2. 使用对应任务的语料测试效果,找到备选模型。
  3. 尝试调整模型:1.Prompt 2.Fine-tuning(SFT) 3.对齐人类反馈(使用多个答案返回哪个模型更好,PPO,DPO)
  4. 评估模型
  5. 应用:RAG,量化,压缩,剪枝,推理。

1.构建任务/领域的数据集

  1. 数据准备
    • 最好是客观数据:书籍、期刊、研报、核实后的新闻等
    • 数据量大小应按模型对应推荐大小准备,训练6b左右模型的经验:单任务最好是100-1000条数据进行LoRA微调,3-5个EPOCH就可以。领域数据最少1-2G + 通用领域的纯文本语料进行全量微调,1-2个EPOCH就可以。
  2. bench集的构建
    • 从语料中寻找问题,知识方面由简单,中等,困难三个方面准备,逻辑方面由简单,复杂两个方面准备,再加入行业内常用问题,共计100-200个问答就可以了。一般来说,未经微调时,对于简单的领域问答集合ChatGLM的效果有60%左右,GPT一般是75-80%,我认为微调后能达到80%就算合格了。
  3. 获取Instruction DATA
    • 已经存在的数据集 问答、翻译、摘要
    • 人类提供答案
    • 最优的大模型生成答案(人工筛选数据)
    • 最优的大模型根据人的结果生成答案

2.寻找备选模型

  • 就是一个一个试,一般对于中文任务微调来说ChatGLM和LLaMA好一些;阿里的模型我没试过,据说是分数机器,但是泛化性能一般;在企业的师兄说百川好用……存疑,可能只对特定数据有效。

3.调整模型

Prompt

方法:
- zero-shot:直接描述任务,给出问题就可以了。
- context few-shot:在上下文加入1-3个问答样例,一般不加入超过20个,但是可以尝试一下20左右的示例。
问题:
- context few-shot:
- 会让成本变高
- 利用太多上下文窗口(虽然模型支持的窗口越来越长,但是会占用跟多显存?)
- 只能做一个任务,泛化性能极差

Fine-tuning

  • 一般可以做多任务微调
  • 最好构建Instruction DATA:
    • 构建任务描述(类似zero-shot)
    • 改写label,例如评论分类中: 差评 -->这个产品不好用、这个产品难用、不好用、垃圾等。但在摘要等任务中不需要改写回答。
    • 问答最好都具有多样性
  • 遗忘:fine-tune之后只能按训练的格式、内容输出,原本可以做好的任务做不好了。表现形式:直接提现就是提高了一方面的能力,但其他方面能力下降了。
  • 减少遗忘的方法:
    • 加入通用数据训练,对专用模型可以做多任务训练,针对所需的能力增加数据
    • LoRA,冻结层等方式减少对模型的改动,也可以使用动态学习率(尽量小一点的的学习率)
    • 使用更大的模型(模型越小,遗忘越严重:这也是6B模型普遍不推荐微调的原因)
PEFT

高效参数训练方法:

  • LoRA

  • Prefix-tuning

  • Adapters

  • 量化

  • 微调GPT3所需的性能:96*V100,海量的存储(这之前经常被忽略),启动服务时间长(读取加载)

  • Adaptor Tuning:通过在TransformerFFN后增加额外的Adaptor层,只训练额外的Adaptor层。但是会增加推理时的成本。
    在这里插入图片描述

  • P-tuning:通过改变输入,对输入增强前缀token,帮助模型理解我们想要什么。由于添加了token,优化存在困难,性能无法通过增加更多token的方法提升,还占用了更多的窗口。
    在这里插入图片描述

  • LoRA:模型本身不改变,新的模型通过加法进入原模型向量。

    • 这部分是个人的一些想法,不是原论文中严谨的数学解释,仅用于帮助理解。

    • 高效微调的核心思想:在不大幅度改变模型参数的同时,训练入新的知识。微调的本质就是较少改变预训练模型的基础上,使其适应新任务、新领域对向量的调整理论上应该远低于预训练模型本身的信息量。
      w ′ = Δ w + w w' = \Delta w + w w=Δw+w

    • 也就是说 Δ w \Delta w Δw相较于 w w w所含信息量较少,通过较少的改变量,使得权重达到所需效果。

    • 简单而言,由于包含信息量少,微调所需的 Δ w \Delta w Δw并不需要一个较大的模型,在 Δ w \Delta w Δw的RANK较小时,也能达到要求。
      在这里插入图片描述

    • Δ w \Delta w Δw的参数量为 dim * dim;A,B的参数量为dim * rank * 2,故LoRA模型的参数量较少

    • 初始化的方式:A使用高斯分布,B为全0。

    • 初始化的原因:1.为了让训练开始时的 Δ w \Delta w Δw为0

    • 问题: 训练哪一个矩阵?
      总所周知,Transformer模型大致由6类矩阵组成,注意力中的Q、K、V、Out矩阵和FFN中的两个线性变换矩阵。原论文作者中表示,仅对Q和V做LoRA就可以了,K没什么用。

    • 问题: rank选择多少?
      作者表示使用4-8效果不错,我个人的想法是,一个模型参数可以存储2bit信息,LoRA的可更改参数量和可解决问题相关,没有很大的信息量,选择更大的rank会导致过拟合,选择过小的rank会导致LoRA模型的容量不足。

    • 实现方式:通过继承预训练模型层,然后对Q和V做线性变换,冻结原模型即可。

RLHF

  • 以后再说

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1888601.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

“党建链串起产业链“ —— 亦企港携手企业共赴天空卫士探索数据安全新篇章

在数字化浪潮的推动下,数据安全已成为国家发展的关键。北京经济技术开发区(简称北京经开区)通过创新的“党建链串起产业链”活动,不断探索党建工作与产业发展的双向促进模式,为企业提供政策支持和资源共享,…

【课程设计】基于python的一款简单的计算器

我们是大二本科生团队,主力两人耗时3天完成了这款计算器的制作。希望大家给我们多多引流!!!!!! 欢迎各位优秀的高考学子报考长安大学,报考长安大学电子信息工程专业。 欢迎有志于就…

手机数据恢复篇:如何从损坏的iPhone恢复数据

不知道如何在没有备份的情况下从损坏的iPhone恢复数据?阅读本文,您可以获得从损坏的iPhone中提取数据的详细步骤。 可能很多苹果用户都经历过上述场景带来的痛苦。意外事件经常发生,例如 iPhone 被液体损坏并从高处掉落。面对无响应的屏幕&a…

3DMAX选择相似对象插件使用方法

3DMAX选择相似对象插件使用教程 3DMAX选择相似对象插件,允许你选择与当前选定对象相似的对象。它将比较当前可见对象或场景中所有对象内的边界框大小、网格(顶点、面、边数)和材质。 【版本要求】 3dMax7及更高版本(建议使用3dMa…

线性代数笔记

行列式 求高阶行列式 可以划上三角 上三角 余子式 范德蒙行列式 拉普拉斯公式 行列式行列对换值不变 矩阵 矩阵的运算 同型矩阵加减 对应位置相加减 矩阵的乘法 左边第 i 行 一次 相乘求和 右边 第 j 列 eg 中间相等 两边规模 矩阵的幂运算 解题思路 找规律 数学归纳…

基于大语言模型建模改变法律服务是否在速度和准确性上超越人类?

概述 人工智能(AI)在法律行业的发展为法律服务创造了新的可能性。然而,关于使用生成式人工智能和大规模语言模型(LLM)解决和发现法律问题的研究仍有很大的探索空间。尤其关键的是,要了解这些先进技术是如何…

生命在于学习——Python人工智能原理(3.2.1)

二、随机变量 2.1 随机变量及其分布 (一)基本概念 定义1 随机变量 随机变量表示随机试验各种结果的实值单值函数,即能用数学分析方法来研究随机现象,例如某一时间内公共汽车站等车的乘客人数、淘宝在一定时间内的交易次数等&am…

MySQL学习(5):SQL语句之数据查询语言:DQL

1.DQL语法 select 字段列表 from 表名列表 #DQL是可以进行多表查询的 where 条件列表 group by 分组字段列表 having 分组后条件列表 order by 排序字段列表 limit 分页参数 2.基本查询(select) 2.1查询多字段 select 字段1,字段2,字段3,......fro…

AI+BI:结合大语言模型实现对话式的智能报表系统

转自:AI产品经理研习与实践 引言:BI是什么、AI大语言模型结合BI有什么优势 AIBI的不同模式:主要关注在数据查询分析&可视化呈现环节 AIBI的实施挑战 产品实践:包括网易、百度、京东、腾讯以及观远数据、神策数据在AIBI上的…

vscode移动侧边栏到右边

vscode移动侧边栏到右边,的简单办法 直接在侧栏上单击右键,选择向右移动主侧栏

基于Hadoop平台的电信客服数据的处理与分析④项目实现:任务18: 数据展示

任务描述 接下来我们需要将根据业务需求将某人按照不同维度查询出来的结果,展示到Web页面上。 任务指导 数据展示模块流程图: 数据展示使用Java的SSM框架,需要实现的代码包括: 1. 实体类 2. 数据库操作 3. 业务逻辑操作 4.…

Java程序设计课后习题(答案版) 期末复习

第一章 Java语言概述 一、选择题 下面哪种类型的文件可以在Java虚拟机中运行?( A ) A. class B. Java C. jre D. exe 如果JDK 的安装路径为“d:\jdk”,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设…

vue实现搜索文章关键字,滑到指定位置并且高亮

1、输入搜索条件&#xff0c;点击搜索按钮 2、滑到定位到指定的搜索条件。 <template><div><div class"search_form"><el-inputv-model"searchVal"placeholder"请输入关键字查询"clearablesize"small"style&quo…

LaySNS模板仿RiPro日主题素材源码资源下载响应式CMS模板

LaySNS模板仿RiPro日主题素材源码资源下载响应式CMS模板&#xff0c;该主题是网上泛滥的RiPro主题仿制而成的laysns模板&#xff0c;原主题是很强大的。 全站功能是通过ajax响应实现的&#xff0c;另外就是网上流传得比较多的是美化版。 主要说明&#xff1a;付费/回复下载功…

三爱法国高中留学:开启全球视野的黄金之路

综合素质培养 : 全面发展的教育体系 法国高中课程以其全面而严谨的教育体系闻名全球。学生不仅学习到丰富的学科知识,如法语及文学、外语、科学、历史地理、哲学和体育等,还通过独特的教学方法培养独立思考和批判性思维能力。法国是全球唯一将哲学纳入中学必修课程的国家,这种…

物流行业:智能物流跟踪

在现代物流中&#xff0c;RFID技术的应用已经成为提高运输效率和安全性的重要手段。RFID标签可以被轻松地附加到货物上&#xff0c;并能够实时记录物品的位置和状态。通过这些标签&#xff0c;物流公司可以实时追踪货物的运输路径&#xff0c;监控货物的运输状况&#xff0c;确…

Android MQTT 反复重连故障

一、检查是否断开&#xff0c;在不用mqtt地方调用disconnect. /*** 断开Mqtt连接*/public static void disconnect() {try {if (mqttAndroidClient ! null) {String topic PUBLISH_TOPIC devicesId;if (mqttAndroidClient.isConnected()){mqttAndroidClient.unsubscribe(topi…

深圳AI绘画模型训练外包服务公司

&#x1f680; 最强AI绘画、图片生成技术服务公司出炉 —— 触站AI&#xff0c;智能图像的革新工坊 &#x1f3a8; 在AI技术的浪潮中&#xff0c;触站AI以其专业和创新&#xff0c;成为企业AI图像领域的技术解决方案服务先锋。 &#x1f6e0;️ 第一&#xff1a;触站AI&#x…

前端进阶:Vue.js

目录 框架&#xff1a; 助解&#xff1a; 框架&#xff1a; VUE 什么是Vue.js? Vue.js优点 Vue安装 方式一&#xff1a;直接用<script>引入 方式二&#xff1a;命令行工具 第一个Vue程序 代码 代码解释&#xff1a; 运行 Vue指令 v-text v-html v-tex…

电脑版微信自动发送微信消息给好友或者群聊

一.软件下载 点击微信自动发送消息下载 二.相关使用方法 1.打开软件&#xff0c;输入想自动发送的内容 2.确保登录了微信电脑版【PC端】&#xff0c;然后切换到想要自动发送的好友或群聊的窗口。 3.点击开始&#xff0c;现在自动发送即可&#xff0c;稍等三秒程序自动运行。 …