【LLM大模型】如何微调:关注有效的数据集!

大模型微调并不复杂,数据才是关键:3个实例详解数据准备 今天我们不打算深挖那些复杂的技术细节,而是要告诉你们一个简单的事实:微调其实一点都不复杂,真正的关键在于——数据!在这篇文章里,我们不仅会深入浅出地介绍什么是微调,还会通过三个具体的实例,教你们如何准备高质量的数据集,让你们的模型表现出色。准备好了吗?让我们一起开始吧! 阅读详情

在这篇文章中,我们将探讨一些用于策划高质量训练数据集的经验法则。

  • 第一部分探讨了将LLM适应于领域数据的普遍方法
  • 第二部分讨论了咋确定微调是否适用于你的实际情况

1 介绍

微调LLMs是一门艺术与科学的结合,该领域的最佳实践仍在不断发展中。在本篇博文中,我们将突出微调的设计变量,并给出我们迄今为止所见的最佳实践的方向性指导,以在资源受限的情况下微调模型。我们建议使用下面的信息作为制定微调实验策略的起点。

2 全量微调 V.S 参数高效微调(PEFT)

都显示出在应用于新领域时改进了下游性能,无论在学术环境中还是在实际设置。选择哪种取决于:

  • 可用的计算资源(以GPU小时数和GPU内存衡量)
  • 除目标下游任务之外的任务表现(学习-遗忘权衡)
  • 人工标注成本
2.1 全量微调

更可能遭受两个问题:

如该系列的第一部分所述,灾难性遗忘导致模型失去其能力。一些早期经验研究表明,全量微调比PEFT更易出现上述问题,尽管还需要进一步研究。

2.2 PEFT技术

设计上作为微调的自然正则化器。PEFT通常需要相对较少的计算资源来训练下游模型,且对于数据集大小有限的资源受限场景更适用。

2.3 小结

某些情况下,全量微调在感兴趣的特定任务上表现更好,通常是牺牲了模型的一些原有能力。这种“学习-遗忘”的权衡在LoRA和全量微调之间的比较论文中进行了深入探讨在此论文中。

考虑到资源限制,PEFT技术可能比全量微调提供更好的性能提升/成本比率。如果在资源受限的情况下,下游性能至关重要,那么全量微调将是更有效的。无论在哪种情况下,关键在于创建高质量的数据集,同时牢记以下主要原则。

3 数据集策划

在文献中的微调实验中,数据集对于充分利用微调至关重要。这不仅仅是“质量更高和更多样例”的问题,你可以智能地投资于数据收集以提高资源受限微调实验的表现。

3.1 数据质量和数量
① 质量至上

总体趋势是质量比数量更重要—即最好拥有一小套高质量数据,而非一大套低质量数据。质量的关键原则包括一致的标注、无错误、未标记的数据、噪声输入/输出以及与总体相比具有代表性分布。

微调时,LIMA数据集中的几千个精心挑选的例子比5万个机器生成的Alpaca数据集表现更好。OpenAI微调文档建议,即使是50到100个样例的数据集也可能有所作为。

② 较难的语言任务需要更多数据

相对较难的任务,如文本生成和摘要,比简单的任务如分类和实体提取更难微调,且需要更多的数据。“较难”可指多种情况:输出中的更多标记、所需的人类能力等级更高、多个正确答案。

③ 高效高质量数据收集

由于数据收集昂贵,建议以下策略以提高样本效率和降低成本:

  • 观察失败模式:观察先前ML能力失败的例子,并添加针对这些失败模式的例子
  • 人机协作:这是一种更便宜的方式扩展数据标注。我们使用LLM自动化生成基础响应,人类标注者可以用来在更短时间内完成标注
3.2 数据多样性

简单来说,如果你过度训练模型以产生某种特定类型的响应,则即使这不是最合适的答案,模型也会偏向于给出那种响应。这里的经验法则是尽可能确保训练数据反映模型在现实世界中的行为方式。

  • 重复: 这已经被发现是模型退化的根源,无论是微调还是预训练。通过去重实现的多样性往往能改善性能指标。
  • 输入的多样性: 通过改写输入来实现多样性。在微调SQLCoder2时,团队重新表述了伴随SQL查询的纯文本,以引入语法和语义多样性。类似地,指令回译已被用于人类编写文本,通过问LLM“这可能是对什么问题的回答?”来生成问答数据集。
  • 数据集的多样性: 当微调更一般的下游任务——例如多语言适应——时,使用多样化的数据集已被证明可以改善模型遗忘原始能力与学习新能力之间的学习-遗忘权衡。为不同语言如印地语和奥迪亚语微调的模型使用了丰富的语言特定数据集与其他指令微调数据集,如FLAN、Alpaca、Dolly等,以增加多样性。
  • 标准化输出: 从输出中移除空格和其他格式花招已被证明是有帮助的。SQLCoder2从生成的SQL中移除空格,让模型专注于学习重要的SQL概念,而不是像空格和缩进这样的花招。如果你希望回答中有特定的语气,“帮助台聊天机器人是…”,那么在每个例子中都加入这些内容。

4 基于LLM的数据管道

为了策划高质量多样化的数据集,数据管道经常使用LLM来减少标注成本。实践中观察到的技术:

  • 评估: 使用高质量数据集训练模型并利用它来标注你较大的数据集,以过滤出高质量的例子
  • 生成: 用高质量的例子种子LLM并提示其生成类似的高质量例子。合成数据最佳实践正在形成中
  • 人机协作: 使用LLM生成一组初始输出,并用人来通过编辑或选择偏好来提高质量

5 调试你的数据集

  • 评估你的数据集中的不良输出: 如果模型在某些方面仍然表现不佳,添加直接展示给模型如何正确处理这些方面的训练例子。如果你的模型有语法、逻辑或风格问题,检查你的数据是否有同样的问题。例如,如果模型现在说“我会为你安排这次会议”(当它不应该这样做时),看看现有例子是否教会了模型说它可以做它不能做的事情。
  • 审视正负类平衡: 如果数据中有60%的助手回应说“我无法回答这个问题”,但在推理阶段只有5%的回应应该这么说,那么你可能会得到过多的拒绝回应。
  • 详尽性和一致性: 确保你的训练例子包含所有需要的回应信息。如果我们希望模型根据用户的个人特质赞美用户,并且训练例子中包含了对前面对话中没有提到的特质的助手赞美的例子,模型可能会学会虚构信息。确保所有的训练例子都是以预期的格式呈现,以便推理。查看训练例子中的一致性。如果多人创建了训练数据,那么模型的表现很可能受到人们之间一致性的限制。例如,在文本抽取任务中,如果人们只在70%的抽取片段上达成一致,模型很可能也无法做得更好。

6 结论

微调是LLMs开发的重要组成部分,需要在资源限制下取得微妙的权衡!

程序员为什么要学大模型?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

继科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉优快云大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

​

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)

在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

LLM大模型学习路线 ↓

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容:

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容:

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容:

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容:

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉优快云大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

​

LLM | Hugging Face | 微调属于自己的大模型(Fine Tuning) 利用hugging face进行模型微调 阅读详情

相关推荐

LLM微调知多少(2)——LoRA及QLoRA微调技术实战

微调方式篇

QWYF123的博客 2082

微调(fine-tuning)

本文介绍了迁移学习常用的方式——微调(fine-tuning),微调可以从预训练的权重上获得一定的先验知识,提高模型收敛速度并且有利于特征的提取。

m0_56312629的博客 2362

LLM2LLM:LLM2LLM:用 LLM 来增强 LLM !通过教师模型合成数据,增强学生模型的训练数据集

LLM2LLM 是一种创新的迭代数据增强技术,通过教师模型生成合成数据,显著提升大语言模型在数据稀缺任务中的性能。

士多啤梨先生の博客 1787

如何微调:关注有效的数据集!

微调LLMs是一门艺术与科学的结合,该领域的最佳实践仍在不断发展中。在本篇博文中,我们将突出微调的设计变量,并给出我们迄今为止所见的最佳实践的方向性指导,以在资源受限的情况下微调模型。我们建议使用下面的信息作为制定微调实验策略的起点。

JavaEdge全是干货的技术号 1261

【LLM】self-instruct 构建指令微调数据集

四部曲:指令生成;分类任务识别;实例生成;过滤和后处理。 为了实证评估SELF-INSTRUCT,在GPT3(Brown等人,2020)上运行该框架,在这个模型上的SELF-INSTRUCT迭代过程产出了大约52K条指令,以及大约82K个实例输入和目标输出对。结果数据提供了多种多样的创造性任务,其中50%以上的任务与种子指令的重合度低于0.3 ROUGE-L(§4.2)。可以利用生成的指令数据微调其他大模型。 二、具体过程 1. 指令生成 175个种子任务(每个对应1个指令+1个实例),从该任务池中随机抽取

发现问题,并解决问题,批判性思维 8308

大模型常用微调数据集

然后,每次随机抽取了 8 个指令作为示例,以此提示 GPT-3 生成了新的指令,之后在这些已有指令的基础上,继续利用 GPT-3 生成实例输入及其对应的输出,从而获得了更多数据。Alpaca-52K 数据集同样是基于 self-instruct 方法进行构建的,它是在 Self-Instruct-52K 的 175 个种子任务上,利用 OpenAI 的 text-davinci-003模型获得了 52K 个不重复的指令,并根据指令和输入生成了输出,进而构成了完整的实例数据。

weixin_43961909的博客 5307

LLM大模型开源微调教程:LLaMA Factory,100+国内外大模型微调落地教程!

LLaMA、Mistral、Qwen、ChatGLM等国内外大模型在开源后得到了众多关注,然而如何将大模型适配到各自的任务上,则依赖于对大模型的进一步微调。

Langchain的博客 1430

零成本接入Gemini Pro:GCP+NewAPI+OpenCode全栈方案

AI编程助手在现代开发流程中扮演着越来越重要的角色,其核心原理是通过大语言模型理解开发者意图并生成代码。以Gemini Pro为代表的顶级模型虽然能力出众,但成本控制和接入复杂度成为主要痛点。通过Google Cloud Platform的免费额度与开源工具链组合,开发者可以构建零成本的AI辅助开发环境。该方案采用Vertex AI作为基础模型服务,通过New API实现协议转换,最终与OpenCode终端工具深度集成。这种架构特别适合需要长期稳定使用AI编程助手的开发者,既能享受Gemini Pro的百万

weixin_29051245的博客 430

【LLM大模型】全面解读大模型LLM的微调

在快速发展的人工智能领域中,有效地利用大型语言模型(LLM)变得越来越重要。然而,有许多不同的方式可以使用大型语言模型,这可能会让我们感到困惑。

2301_81888214的博客 881

NFS共享速度慢?麒麟系统性能调优5个关键参数实测对比

本文针对银河麒麟服务器系统上NFS共享速度慢的问题,通过实测对比分析了五个关键调优参数。重点探讨了rsize/wsize传输块大小、TCP/UDP协议选择、sync/async模式权衡等,并结合麒麟系统特性提供了具体的优化建议与配置示例,旨在帮助用户有效提升国产化环境下的文件共享性能。

weixin_29254029的博客 335

操作系统头歌 课后作业3.3.2:进程的调度

请问:从 6 号进程刚创建完 7 号进程开始,在接下来的 9 次进程调度中,每次调度时,6 号和 7 号进程的剩余时间片是多少?请问:从 6 号进程刚创建完 7 号进程开始,在接下来的 9 次进程调度中,每次调度时,6 号和 7 号进程的剩余时间片是多少?根据相关知识回答当程序 01.c 运行时(在版本 0 内核中),会在父子两个进程(假设分别为 6 号和 7 号进程)中分别输出字符串。当程序 01.c 运行时(在版本 0 内核中),会在父子两个进程(假设分别为 6 号和 7 号进程)中分别输出字符串。

weixin_73255571的博客 4716

【AI大模型】全面解读大模型LLM的微调

在快速发展的人工智能领域中,有效地利用大型语言模型(LLM)变得越来越重要。然而,有许多不同的方式可以使用大型语言模型,这可能会让我们感到困惑。实际上,可以使用预训练的大型语言模型进行新任务的上下文学习并进行微调。那么,什么是上下文学习?又如何对大模型进行微调呢?

2301_81888214的博客 1001

排查单片机不工作的‘玄学’故障:从LDO选型、复位电路到焊接不良的完整避坑指南

本文深入剖析单片机不工作的常见硬件故障,从LDO选型、复位电路设计到PCB布局和焊接工艺,提供系统性排查方法。重点分析3.3V电源稳定性、LDO动态响应特性及复位电路设计要点,帮助工程师快速定位和解决嵌入式系统中的'玄学'故障,提升产品可靠性。

weixin_30655569的博客 387

聊聊大模型的应用及微调

模型的微调有多种方式,对于入门的来说,一般都是基于官方的文档微调;最近发现很多开源库,其目的就是支持应用多种微调策略来微调模型,简化模型的微调门槛。

2301_81887304的博客 1025

道岔故障监测系统设计(源码+开题)

通过实时监控道岔的工作状态,系统能够及时发现异常情况,预防潜在的安全隐患,从而减少事故发生的概率。此外,监测系统还能够为维护人员提供详细的数据支持,帮助他们更准确地判断道岔的磨损程度和故障类型,优化维修计划,延长道岔的使用寿命。随着智能化、自动化技术的发展,道岔故障监测系统的设计与应用也将推动铁路行业的技术进步,为实现智能铁路和未来交通系统的构建奠定基础。因此,开展道岔故障监测系统的设计研究,不仅具有重要的工程实践价值,也有助于推动铁路运输行业向更高水平的发展。

灵军程序设计 771

瑞萨MCU定时器API实战:从Smart Configurator配置到中断与输入捕获应用

在嵌入式系统开发中,定时器(Timer)是实现精准时序控制、PWM输出和信号测量的核心硬件外设。其工作原理基于计数器在稳定时钟源驱动下递增或递减,达到预设值后触发中断或改变输出电平,从而为系统提供节拍和事件基准。通过图形化配置工具(如瑞萨的Smart Configurator),开发者可以高效地将复杂的硬件寄存器操作转化为清晰、标准化的C语言API函数,这极大地提升了开发效率并降低了出错风险。这种从硬件抽象到软件接口的技术价值在于,它使得开发者能更专注于应用逻辑,而非底层细节,尤其适用于工业控制、汽车电子等

weixin_42519733的博客 274

Qwen2大模型微调入门实战(完整代码)大模型微调入门到精通,收藏这一篇就够了!

大模型指令微调(Instruction Tuning)是一种针对大型预训练语言模型的微调技术,其核心目的是增强模型理解和执行特定指令的能力,使模型能够根据用户提供的自然语言指令准确、恰当地生成相应的输出或执行相关任务。指令微调特别关注于提升模型在遵循指令方面的一致性和准确性,从而拓宽模型在各种应用场景中的泛化能力和实用性。在实际应用中,我的理解是,指令微调更多把LLM看作一个更智能、更强大的传统NLP模型(比如Bert),来实现更高精度的文本预测任务。

Everly_的博客 2849

【计算机视觉】语义分割实战:FCN、U-Net与DeepLab系列详解

语义分割实战:FCN、U-Net与DeepLab系列详解,人工智能、大模型、AI深度学习在计算机视觉领域取得了令人瞩目的进展,语义分割作为计算机视觉领域的关键任务,旨在将图像中的每个像素都分配到特定的类别中,实现对图像内容的精细理解。与目标检测关注物体的类别与位置不同,语义分割能够对场景中的所有元素进行像素级别的分类,这在自动驾驶、医学图像分析、遥感图像解译等众多领域都有着至关重要的应用。例如,在自动驾驶中,准确的语义分割可以帮助车辆识别道路、行人、交通标志等,为安全行驶提供决策依据;在医学图像分析中……

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 9万+

【LLM大模型】聊聊大模型的微调实现及其应用

模型的微调有多种方式,对于入门的来说,一般都是基于官方的文档微调;最近发现很多开源库,其目的就是支持应用多种微调策略来微调模型,简化模型的微调门槛。比如。其架构逻辑如下:最近试玩了这两个框架,个人觉得蛮好的,先不说实际的调试效果,这取决于多种因素,总的来说还是很方便快捷的。方便快捷的基于多种微调策略调试LLM;同时支持多种数据集类型。基于个人使用及学习的角度,介绍了微调框架的概述及其应用。在这里面的道道还是蛮多的,有一定的大模型知识再基于这些库去做参考去做应用,将极大的降低LLM的应用门槛。

AAI666666的博客 881

TC3XX - MCAL知识点(三十三):基于EB Tresos配置Tc3xx的MCAL代码如何产生中心对称的三相六路发波波形

本文用于记录如何在英飞凌 tc3xx 芯片的应用开发中,借助 EB Tresos 配置工具生成的配置代码与 MCAL 源码相结合,进而实现三相六路中心对称互补的 PWM 输出效果。外部资源需求:EB Tresos23.0以上、Tasking\Hightec编译器、示波器\逻辑分析仪。

梦想技术家 1212

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

全面解读大模型LLM的微调

在快速发展的人工智能领域中,有效地利用大型语言模型(LLM)变得越来越重要。然而,有许多不同的方式可以使用大型语言模型,这可能会让我们感到困惑。实际上,可以使用预训练的大型语言模型进行新任务的上下文学习并进行微调。

Y525698136的博客 1130

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

开源LLM微调训练指南:如何打造属于自己的LLM模型

今天我们来聊一聊关于LLM的微调训练,LLM应该算是目前当之无愧的最有影响力的AI技术。尽管它只是一个语言模型,但它具备理解和生成人类语言的能力,非常厉害!它可以革新各个行业,包括自然语言处理、机器翻译、内容创作和客户服务等,成为未来商业环境的重要组成部分。

FrenzyTechAI的博客 7894

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【大模型微调】3.通过Easy Dataset构建自己的微调数据集

在前文了解 LLaMA-Factory 的各种主要设置参数后,本文开始使用现有的资料构建自己的微调数据集。

兴趣使然的创作者 1744

edg4llm:一款简单好用的大模型微调数据生成工具

edg4llm 是一个专为使用大型语言模型生成微调数据而设计的 Python 库。该工具旨在帮助用户高效创建高质量的训练数据集。目前,它主要支持文本数据的生成。生成的数据包括但不限于: - 问题数据 - 答案数据 - 对话数据 通过 edg4llm,大家可以轻松生成符合微调需求的多样化数据集,从而显著提升大型语言模型在特定任务中的性能。

T_susan的博客 3011
上一篇: 【LLM大模型】改进AI大语言模型的方法
下一篇: OpenAI o1模型揭秘:通过LLMs学习推理能力
Llama-Turbo
博客等级 码龄4年 9901粉丝 2022原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值