改进大语言模型的最全方法!

news2024/12/24 8:47:05

这是一篇关于适应开源大语言模型(LLMs)的三部系列博客的第一篇。本文探讨将LLM适应领域数据的各种方法。

  • 第二部分讨论如何确定微调(fine-tuning)是否适合您的用例。
  • 第三部分探讨策划良好训练数据集的一些经验法则。

0 引言

大语言模型(LLMs)在多种语言任务和自然语言处理(NLP)基准测试中展示了出色的能力。基于这些“通用”模型的产品应用正在增加。本文为小型AI产品团队提供指导,帮助他们将LLM适应并整合到他们的项目中。首先,澄清围绕LLM的(常常令人困惑的)术语,然后简要比较现有的不同适应方法,最后推荐一个逐步流程图,助你识别适合你的用例的方法。

1 适应LLM的方法

1.1 预训练

预训练是从头开始。

使用数万亿数据tokens训练LLM的过程。该模型使用自监督(self-supervised)算法进行训练。最常见的训练方式是通过自回归预测下一个token(又称因果语言建模)。预训练通常需要数千小时的GPU(105 – 107 [source1,source2]),并且分布在多个GPU上。预训练输出的模型被称为基础模型。

1.2 持续预训练

持续预训练(又称第二阶段预训练)涉及使用新的、未见过的领域数据对基础模型进行进一步训练。使用与初始预训练相同的自监督算法。通常所有模型权重都会参与其中,并且会将一部分原始数据与新数据混合进行训练。

1.3 微调(fine-tuning)

微调是使用带有注释的数据集以监督方式或使用基于强化学习的技术来适应预训练语言模型的过程。与预训练的主要区别:

  • 使用带有正确标签/答案/偏好的带注释数据集进行监督训练,而不是自监督训练
  • 所需tokens数量较少(成千上万或数百万,而预训练需要数十亿或数万亿),主要目的是增强如指令跟随、人类对齐、任务执行等能力

理解微调的当前格局可以从两个维度进行:改变的参数百分比以及微调结果带来的新功能。

1.4 改变的参数百分比

根据改变的参数数量,微调分为:

  • 全量微调:顾名思义,它涵盖了模型的所有参数,包括像 XLMR 和 BERT(100 – 300M 参数)等小型模型上的传统微调,以及像Llama 2、GPT3(1B+ 参数)等大型模型上的微调
  • 参数高效微调(PEFT):与微调所有LLM权重不同,PEFT算法只微调少量附加参数或更新预训练参数的子集,通常为1 – 6%的总参数

1.5 为基础模型添加的功能

微调的目的是为预训练模型添加功能,例如指令跟随、人类对齐等。Chat-tuned Llama 2是一个通过微调添加了指令跟随和对齐能力的模型示例。

1.6 检索增强生成(RAG)

企业也可以通过添加特定领域的知识库来适应LLM。RAG本质上是“基于搜索的LLM文本生成”。RAG使用一个根据用户问题检索到的动态提示上下文,并将其注入LLM提示中,从而引导其使用检索到的内容,而不是其预训练的(可能过时的)知识。Chat LangChain是一个基于RAG的LangChain文档问答聊天机器人。

1.7 上下文学习(ICL)

在ICL中,通过在提示中放置示例来适应LLM。研究表明,通过示例进行演示是有效的。示例可以包含不同种类的信息:

  • 仅输入和输出文本——即少样本学习
  • 推理轨迹:添加中间推理步骤;参见链式推理(CoT)提示
  • 规划和反思轨迹:添加教LLM规划和反思其问题解决策略的信息;参见ReACT

还有多种修改提示的策略,提示工程指南中提供了详细的概述。

2 选择正确的适应方法

为了确定上述方法中的哪一种适合特定应用,应考虑各种因素:所需的模型能力、训练成本、推理成本、数据集类型等。以下流程图总结了如何选择合适的LLM适应方法:

3 总结

创建基于LLM的系统是一个迭代过程。建议从简单的方法开始,并逐步增加复杂性,直到实现目标。上面的流程图为你的LLM适应策略提供了坚实的基础。

关注我,紧跟本系列专栏文章,咱们下篇再续!

作者简介:魔都架构师,多家大厂后端一线研发经验,在分布式系统设计、数据平台架构和AI应用开发等领域都有丰富实践经验。

各大技术社区头部专家博主。具有丰富的引领团队经验,深厚业务架构和解决方案的积累。

负责:

  • 中央/分销预订系统性能优化

  • 活动&券等营销中台建设

  • 交易平台及数据中台等架构和开发设计

  • 车联网核心平台-物联网连接平台、大数据平台架构设计及优化

  • LLM Agent应用开发

  • 区块链应用开发

  • 大数据开发挖掘经验

  • 推荐系统项目

    目前主攻市级软件项目设计、构建服务全社会的应用系统。

参考:

  • 编程严选网

    本文由博客一文多发平台 OpenWrite 发布!

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

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

相关文章

NX二次开发—批量导出点工具

在NX上进行二次开发,设计一个UI界面,将选择的点导出 在NX上,进行UI样式编辑器 添加选择对象,修改标题,设置为多选 创建一个组,添加枚举,设置标题和枚举内容,不显示枚举标题LabelVis…

云微客AI文案编写,有手就能出“爆款”

​现如今新媒体时代,短视频平台已经成为了企业品牌宣传的重要战场,那么如何利用短视频平台进行品牌宣传、制作爆款视频就成为了各大商企需要解决的难题。由此,不得不提到云微客短视频矩阵系统,一键助力商企品牌轻松打造爆款内容。…

python学习第九节:爬虫实战-抓取地址库

python学习第九节:爬虫实战-抓取地址库 话不多说,直接上代码;下面的代码是从统计局抓取地址库并保存为json格式和excel格式。大家拿到代码直接运行即可。 #codingutf-8 #加入上面这行代码表示可以在下面代码中包含中文 import bs4 #网页解析…

wopop靶场漏洞挖掘练习

一、sql注入漏洞 1.在搜索框输入-1 union select 1,2,3# 可以看到页面有回显 2.查询数据库名 -1 union select 1,2,database()# 3.通过查询admin表的数据可以进行登录后台 -1 union select 1,2,group_concat(user_name,user_pass) from admin# 二、文件上传漏洞 1.登录后台…

李龙受邀参加济南高新区“质量月”能力提升活动,并做专题培训

9月11日,济南高新区在山东省知识产权公共服务平台举行2024年“质量月”启动仪式暨质量管理能力提升系列活动。安畅检测首席技术专家李龙先生出席了“质量月”启动仪式 ,并为到场企业代表就信创产业相关知识做了专题培训。 济南市市场监督管理局党组成员王…

101.游戏安全项目-创建人物对象结构

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于:易道云信息技术研究院 上一个内容:100.游戏安全项目-不可见数据的搜索 以 98.游戏的启动与多开-分析与实现多开器 它的代码…

7.sklearn-逻辑回归、精确率和召回率、ROC曲线和AUC指标

文章目录 环境配置(必看)头文件引用1.逻辑回归1.1 API介绍1.2 代码实现1.3 运行结果 2.分类评估方法2.1 精确率(Precision)2.2 召回率(Recall)2.3 F1-score2.4 分类评估报告api2.5 代码工程2.6 运行结果 3.ROC曲线与AUC指标3.1 TPR和FPR3.2 ROC曲线3.3 A…

2024年宠物空气净化器选购攻略?哪款最值得买

表妹在去年刚上大学就养了一只爱掉毛的银渐层,宿舍矛盾不断激化,甚至一度产生了退学的念头。 究其原因,主要是她觉得刚进大学太孤独和身边的人都不太熟,所以就不想聊天,为了缓解这种孤独养了一只银渐层,有…

用 nextjs 创建 Node+React Demo

1、环境准备 1、安装Node 访问Node官网下载对应Node版本:Node官网,安装成功后通过命令查看当前node版本 node -v2、安装Node版本管理工具nvm 如果nvm install 安装node失败,一般是网络问题,可以用手机热点或者翻墙 # 安装nvm c…

ssm“健康早知道”微信小程序 LW PPT源码调试讲解

第二章开发技术与环境配置 以Java语言为开发工具,利用了当前先进的SSM框架,以MyEclipse10为系统开发工具,MySQL为后台数据库,开发的一个“健康早知道”微信小程序。 2.1 Java语言简介 Java是由SUN公司推出,该公司于2…

通义灵码获得国产 AI 编码工具最高成绩丨阿里云云原生 8 月产品月报

云原生月度动态 云原生是企业数字创新的最短路径。 《阿里云云原生每月动态》,从趋势热点、产品新功能、服务客户、开源与开发者动态等方面,为企业提供数字化的路径与指南。 趋势热点 🥇 Gartner 首次发布 AI 代码助手魔力象限&#xff0…

数据链路层/ARP协议

当一个报文需要从一个主机转发到另一个主机的时候,表面上是 IP 报文的跨网络转发,但也并不是直接就将数据报转发到对应的主机了,而是从网络层更下面的数据链路层一跳一跳的转发到下一个链路层,数据链路层实现的是到达短距离目的地…

2024年让你的营销机构省时的18款AI工具

提高效率是经营一家盈利的营销机构的关键。利用AI工具不仅可以提升效率,还能够保持甚至增加团队的工作量和工作质量。 这些都是非常理想的结果。然而,随着越来越多的AI工具问世,从哪里入手呢? 在这里,你会找到一份简…

公司小、资源少?别慌!5招让你有效开展测试工作

在经济环境下行的当下,很多测试人员被迫去一些小公司先渡过难关,但是去小公司做测试往往都会遇到很多问题,除了要给一些开发人员普及测试的概念和流程,而且还要从0-1准备测试资源,因为我就是这么过来的,所以…

【6大设计原则】解锁代码的灵活性:深入解析开闭原则的代码实例与应用

1.引言 在软件开发中,设计模式是解决常见问题的经过验证的解决方案。设计模式不仅提供了一种可复用的设计思路,还有助于提高软件的质量和可维护性。设计模式的六大原则是指导我们进行软件设计的基石,其中开闭原则(Open/Closed Pr…

携手科大讯飞丨云衔科技为企业提供全栈AI技术解决方案

作为智能时代的核心驱动力,人工智能不仅重塑了传统行业的面貌,更开辟了全新的经济增长点。科大讯飞以其深厚的技术底蕴和创新能力,持续引领着人工智能领域的发展潮流。云衔科技作为科大讯飞开放平台的AI技术产品线合作伙伴代理商,…

Windows桌面整理软件哪个最好?值得一试的Top10桌面管理软件汇总(全新)

Windows桌面整理软件哪个最好?有时候,桌面上的图标会杂乱无章,让您不知该从何处寻找文件、文件夹或应用程序。通过使用这些桌面图标整理工具,您可以轻松清理多余的图标,并将其分类整理,以便于后续查找。这些…

HTML/CSS/JS学习笔记 Day4(CSS--C1 选择器声明)

跟着该视频学习,记录笔记:【黑马程序员pink老师前端入门教程,零基础必看的h5(html5)css3移动端前端视频教程】https://www.bilibili.com/video/BV14J4114768?p12&vd_source04ee94ad3f2168d7d5252c857a2bf358 Day4 内容梳理:…

Arduino IDE离线配置第三方库文件-ESP32开发板

简洁版可以使用uget等,将文件下载到对应文件夹下,然后安装。 esp32之arduino配置下载提速 录屏 Arduino IDE离线配置第三方库文件ESP32 资源 Linux https://download.csdn.net/download/ZhangRelay/89749063 第三方开发板 非默认支持的开发板 linu…

科技前沿:Web3与物联网的智能连接

随着科技的迅速发展,Web3 和 物联网(IoT) 正在成为推动未来技术创新的两大关键领域。Web3是去中心化互联网的愿景,而物联网通过智能设备的相互连接,构建了一个无缝交互的物理世界。当这两项技术相结合时,它…