Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >2024年大语言模型的微调

2024年大语言模型的微调

作者头像
charlieroro
发布于 2024-03-08 00:27:13
发布于 2024-03-08 00:27:13
53900
代码可运行
举报
文章被收录于专栏:charlierorocharlieroro
运行总次数:0
代码可运行

2024年大语言模型的微调

上一篇博客中了解了LLM的由来以及基本流程,其中会涉及到几个概念:Prompt Engineering、model、dataset、 vector-database、training、fine-tune、 library等。鉴于本人是小白,后面将引用几篇典型的文章来熟悉这些概念,并尝试将其串联起来。 本文来自Fine-tuning large language models (LLMs) in 2024 注:(下文将统一使用"微调"指代fine-tune,使用"数据集"指代dataset)

一个LLM的生命周期包含多个步骤,下面将讨论这个周期中最活跃、最密集的部分之一 -- fine-tuning(微调)过程。

LLM的生命周期

下面展示了LLM的生命周期:

  1. 愿景和范围:首先需要定义项目的愿景,你想让你的LLM作为一个更加通用的工具还是以处理特定任务为目标,如命名实体识别(识别文本中具有特定意义的命名实体)。
  2. 模型选择:选择从头训练一个模型还是修改一个已有的模型。在大多数场景下,采用一个已有的模型更高效,但有些情况则需要对新模型实施微调。
  3. 模型的表现和调节:在准备好模型后,需要对其表现进行评估。如果不满足要求,可以采用prompt engineering或进一步微调,从而保证模型的输出和人们的预期保持一致。
  4. 评估&迭代:定期使用指标和基准进行评估,并在prompt engineering、微调和评估之间进行迭代,直到达到期望的结果。
  5. 部署:一旦模型符合预期,就可以进行部署。在这个阶段优化计算效率和用户体验。

什么是LLM微调?

LLM微调是采用预训练的模型,然后通过使用更小的专有数据集进行训练来完善其能力并提升处理特定任务或领域的表现的过程。微调包括调节通用模型并将其调节为特定模型,它是连接通用预训练模型和特定应用的特定需求之间的桥梁,从而保证大语言模型能够接近人类的预期。想象一下OpenAI的GPT-3,这是一款先进的大型语言模型,专为通用的自然语言处理(NLP)任务而设计的。假设一个医疗保健组织想使用GPT-3来帮助医生从病例生成病人报告,GPT-3可以理解并创建一般的文本,但它可能无法处理错综复杂的医学术语和特定的医疗术语。

为了提高它在该专业角色的表现,组织会使用一个含医疗报告和病历记录的数据集来微调GPT-3。通过微调,模型可以更加了解医学术语,临床语言的细微差别以及典型的报告结构。之后,GPT-3就可以帮助医生生成准确、连贯的患者报告。

听起来好像模型越大越好,但任何事情都是有代价的。下面将讨论更多的细节。

什么时候使用微调

我们关于大型语言模型的文章涉及到了一些话题,比如上下文学习和零/一/少样本推理。以下是一个简单回顾:

上下文学习:是一种通过在提示提供特定任务示例来改进提示的方法,为LLM提供了它需要完成的任务蓝图。

零样本推理:在没有额外示例的情况下将输入数据合并到提示中。如果零样本推理没有产生所需的结果,则可以使用"单样本"或"少样本推理"。这些方法涉及在提示中添加一个或多个完整的示例来改善规模较小的LLM的表项。

还有其他方式可以直接通过用户提示来优化模型输出,以便更好地匹配用户的偏好。但这些方式并不总是有效(特别对于较小的LLM)。

除此之外,提示中包含的任何示例都会占用上下文窗口的宝贵空间,为此,你不得不减低空间来添加额外的有用信息,此时就需要微调。与使用大量非结构化文本数据的预训练阶段不同,微调是一个有监督的学习过程,这意味着你需要使用一个含标记示例的数据集来更新LLM的权重。这些标记示例通常是提示-响应对,以便更好地完成特定任务。

监督微调(Supervised fine-tuning-SFT)

监督微调意味着使用标记数据来更新一个预训练的语言模型,用于处理特定的任务。与非监督方式(无需对数据进行检查)不同,这些数据已经预先进行了检查。通常,语言模型的初始化训练采用的是非监督方式,而微调则使用的是监督方式。

如何进行微调?

下面详细介绍LLMs的微调。首先需要准备训练数据,有很多开源数据集提供了有关用户行为和偏好的数据(即使它们没有直接格式化为指导数据)。例如,我们可以使用Amazon的产品评论作为数据集,并将其转换为用于微调的指导提示数据集。提供模板库包含很多用于不同任务和不同数据集的模版。

一旦准备好了指导数据集,就可以进行标准的监督学习。你可以将数据集分为训练和验证两部分。在微调过程中,你需要从训练数据集中选择提示,并将其传入LLM,最后由LLM生成结果。

在微调阶段,当模型接触到一个针对目标任务的(新标记的)数据集时,它会计算其预测值与实际标签之间的误差或差异。然后模型会使用该误差来调整其权重(通常会使用一种优化算法,如梯度下降法)。权重调整的大小和方向取决于梯度的大小和方向,梯度指示了每个权重对误差的贡献程度。对误差贡献更大的权重会进行更大的调整,而对误差贡献较小的权重则进行较小的调整。

在数据集的多次迭代(或周期)中,模型持续调整其权重,逐渐接近一个可以最小化误差的配置。这个过程的目的是对先前学到的通用知识进行调整,以适应新数据集中的细微差别和特定模式,从而使模型在目标任务中的表现更加专业高效。

该过程使用标记数据对模型进行了更新(根据输出结果和实际结果之间的差异进行了变更),从而提升了模型在该任务中的表现。

举例说明上述过程:如果你询问一个预训练的模型"为什么天空是蓝色的?",它可能会回答,"因为大气散射了阳光",这个回答简单直接。但对于一个用于科学教育平台的聊天机器人来说,这个回答过于简单。它需要更多的科学细节或上下文指导。此时可以使用监督微调。

通过微调,模型可以对科学问题给出更深度的回答。此时当你询问"为什么天空是蓝色的?",模型会给出更细节的解释:

"天空之所以呈现蓝色,是由于一种称为瑞利散射的现象。当阳光进入地球大气层时,它由不同的颜色组成,每种颜色都有自己的波长。蓝光具有较短的波长,在大气中的气体和颗粒物的作用下向所有方向散射。这种散射使得直射阳光呈现白色,而天空则呈现蓝色"。该解释提供了对这一现象的全面理解,非常适合用于科学教育平台。

微调方法

LLM的微调是一个监督学习的过程,你需要使用一个包含标记示例的数据集来更新LLM的权重,以此来提升该模型处理特殊任务的能力。下面介绍几种值得注意的微调方法。

指导微调(Instruction fine-tuning)

一种在多种任务中提升模型表现的策略叫指导微调。它是一种使用示例来训练机器学习模型的方法,这些示例展示了模型应该如何响应查询。

用于微调大语言模型的数据集必须服务于指导的目的。例如,假设你需要通过微调一个模型来提升其总结能力,在这种情况下,你应该建立一个数据集,数据集中包含以"summarize"为开头的示例,后跟文本或类似短语。这些提示-完成对(prompt-completion,即示例中的请求和响应)可以让你的模型以一种新的专业方式进行"思考",并为特定任务提供服务。

这种方式其实就是给模型提供一些用于某种场景的请求-响应的例子,增强其在某种场景下能力。

完全微调(full fine-tuning)

在指导微调中,当所有的模型权重被更新后,此时称之为完全微调。微调的结果为更新权重后的新版本模型。需要注意的是,和预训练类似,完全微调需要足够的内存和计算预算来保存和处理所有的梯度、优化器和在训练期间更新的其他组件。

参数效率微调(PEFT)

语言模型训练是一个计算密集的工作。为了对一个LLM执行完全微调,你不仅需要内存来保存模型,还需要保存训练过程中所需的参数。你的电脑可能可以处理模型权重,但在训练过程中为优化状态、梯度和前向激活(forward activations,指在训练过程中,模型通过输入数据进行前向传播时所产生的中间结果)分配内存仍然是一项具有挑战性的任务。完全微调LLM会在监督学习过程中更新每个模型的权重,而PEFT方法只会更新一部分参数。这种迁移学习技术会选择特定的模型组件,并将其他参数"冻结",在训练过程中,只会跟新和微调选定的组件,其他参数则保持不变。通过这种方式可以使用远小于原始模型的参数(某些场景下,只需要15%~20%的原始权重,LoRA可以将训练的参数数目减少10,000倍)进行训练,这样可以使内存需求更易于管理。此外,PEFT还可以处理灾难性遗忘(catastrophic forgetting)问题,由于它不会触及原始的LLM,因此该模型也就不会忘记先前学到的信息。完整微调会为每个训练的任务提供一个新版本模型,这些新模型和原始模型一样大,因此如果你需要为多个任务进行微调的话,看会导致存储成本问题。

其他类型的微调

迁移学习:迁移学习采用通用模型,然后使用大量与特定任务相关的数据集进行训练。该数据集可能包括与该领域有关的标记示例。迁移学习通常用在缺少足够数据或缺少时间来训练数据的场景。这种方式的主要优势是它在训练后提供了更高的学习率和准确性。你可以采用现有的已经使用大量数据训练的LLMs,如GPT3/4以及BERT,然后将其定制为自己的使用场景。

特定任务的微调:特定任务微调是一种使用预训练的模型,并针对特定任务或领域进行微调的方式。相比迁移学习,该方式需要更多的数据和时间,但在特定任务上可以获得更好的表现。

例如,使用一个专门针对翻译任务的数据集进行训练,即使只有相对较少的示例,也可以取得良好的结果。相比于模型预训练阶段的数十亿条文本,通常只需要几百或几千条示例就可以得到表现良好的结果。但单任务微调可能会导致一个潜在问题,称之为灾难性遗忘。

灾难性遗忘的发生是因为完全微调的过程修改了原始LLM的权重,虽然它提升了在特定任务上的表现,但降低了在其他任务上的表现。例如,尽管微调可以提高模型在某些NLP任务(如情感分析)上的能力,并产生高质量的结果,但模型可能会忘记如何执行其他任务(例如该模型在微调之前可以正确识别命名实体)。

多任务学习:多任务微调是单任务微调的扩展,此时训练数据集包含多个任务的示例输入和输出。这里的数据集包含了可以指导模型处理多种任务的示例,如概括、评论评分、代码转换或实体识别等。你可以使用这种混合数据集来训练模型,这样可以同时提升模型处理多种任务的表现,避免灾难性遗忘问题。在训练多个训练周期中,通过计算示例之间的损失来更新模型的权重,从而得到一个经过微调,且能够同时在多个任务上表现出色的模型。多任务微调模型的一个缺点是它需要大量数据。在一个训练集中,你可能需要50~100,000个实例。该模型非常适合需要经常处理多个任务的场景。

顺序微调:顺序微调是指在几个相关任务上依次调整预训练模型的过程。在针对通用领域完成初始化训练后,LLM可能会在更具体的子集上进行微调。例如,它可以从一般语言微调到医学语言,然后再从医学语言微调到小儿心脏病学。

注意,还有其他一些微调的例子,例如自适应微调、行为微调、指导、强化微调等针对大型语言模型的微调方法。这些方法涵盖了训练语言模型时的一些重要特定场景。

检索增强生成(Retrieval augmented generation-RAG)

RAG是一种知名的微调替代方式,它结合了自然语言生成和信息检索,RAG可以确保语言模型能够与外部的最新知识源/相关文档建立联系,并提供相关来源。这种技术弥合了通用模型所拥有的广泛知识和对精确、最新信息以及丰富上下文的需求之间的差距。因此,RAG是一种可以适用于事实可能随时间的推移而演变的情况下的重要技术。最新的AI产品Grok就使用了RAG技术来保证其信息的新鲜和时效性。

RAG优于微调的一点是信息管理。传统的微调将数据嵌入了模型架构中,基本上是"硬写入"的知识,可以防止被轻易篡改。而RAG允许持续更新训练数据,并允许移除/修改数据,从而保证模型的时效性和准确性。

在大语言模型的上下文中,RAG和微调通常被认为是相互竞争的方法,但二者的结合可以显著提升模型的表现。在将微调应用到RAG系统一文中就通过将二者结合来确定和改进模型中较弱的组件。

RAG和微调的对比如下:

微调最佳实践

明确定义任务

定义任务是微调大语言模型的基础步骤。一个明确的任务定义可以提供焦点和方向,确保将模型的通用能力用于实现特定的目标,并可以为性能评估设定清晰的基准。

选择并使用合适的预训练模型

选择用于微调LLM的预训练模型非常重要,由于预训练模型吸收了从大量数据中获得的知识,因此可以确保模型不需要从零学习。这种方式具备计算的高效性并节省了时间成本。此外,预训练还可以捕捉到一般语言理解能力,可以让微调聚焦于特定领域的细微差别,通常能够在特定任务中获得更好的模型表现。

尽管预训练模型提供了一个强大的起点,但模型架构的选择也非常重要,包括使用先进的策略,如专家混合(Mixture of Experts,MoE)和标记混合(Mixture of Tokens,MoT)来更有效地定制模型。这些策略可显著影响模型处理特定任务和处理语言数据的方式。

设置超参数

超参数在模型训练过程中扮演者一个重要角色。学习率、批量大小、周期数量、权重衰减和其他参数是需要调整的关键超参数。

评估模型表现

一旦完成微调,就需要使用测试数据集来评估模型表现,以此来对模型在未见数据上的表现进行公正评估。如果模型仍有改进的潜力,还可以考虑通过迭代方式对其进行优化。

为什么你的业务需要微调模型?

我们知道Chat GPT和其他语言模型可以回答大范围的问题,但个体和公司可能期望他们的LLM接口能够处理私有和专有数据。这是科技界的热门话题——面向企业的大型语言模型。

下面是为何需要LLM微调的几个原因:

  1. 具体性和相关性:虽然LLMs使用大量数据进行了训练,但它们可能不熟悉与特定业务或行业相关的特定术语、细微差别或上下文。微调可以保证模型理解并生成与业务高度相关的内容。
  2. 提升准确性:对于关键业务功能,误差幅度很小。微调业务特定的数据可以达到更高的准确度,保证模型的输出和预期一致。
  3. 自定义交互:如果你将LLMs用于客户交互,微调可以帮助定制回复,让其与品牌的声音、语调和准则相匹配,确保一致的品牌用户体验。
  4. 数据隐私和安全:通用LLMs可能会根据外部可用数据生成结果。微调可以让业务控制模型可以暴露的数据,确保生成的内容不会不经意间泄露敏感信息。
  5. 解决罕见情况:每个业务都会在其特定的领域碰到极少但重要的场景。通用LLM可能无法很好地处理这些场景。微调可以确保高效处理这些边缘场景。

微调还是不微调?

有时候,微调并不是最佳的选择。下面是来自OpenAIDevDay的一张图片,展示微调内部Slack的140K消息后的模型结果。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
User: "Write a 500 word blog post on prompt engineering"
Assistant: "Sure, I shall work on that in the morning"

User: "Write it now"
Assistant: "ok"

纯属逆向调整😄

总结

LLM的微调已经成为满足企业LLM需求、提升运营流程中不可或缺的工具。虽然LLM的基础训练提供了对语言的广泛理解,但通过微调过程,我们可以将这些模型塑造成能够理解特定领域话题并提供更精确结果的专业工具。通过针对特定任务、行业或数据集来对LLM进行训练,我们正在推动这些模型所能实现的边界,并确保它们在不断变化的数字领域中维持其相关性和价值。展望未来,对LLM的持续探索和创新以及正确的微调方法工具将无疑为更智能、更高效、更具上下文感知能力的人工智能系统铺平道路。

拓展

  • 权重(Weights):权重是定义是定义模型中不同layer之间的连接强度的数值。在LLM的背景下,权重主要用于注意力机制(attention mechanism)和组成模型架构的前馈神经网络中,它们会在训练过程中进行调整,以优化模型生成相关和连贯文本的能力。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-03-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
2024!深入了解 大语言模型(LLM)微调方法(总结)
众所周知,大语言模型(LLM)正在飞速发展,各行业都有了自己的大模型。其中,大模型微调技术在此过程中起到了非常关键的作用,它提升了模型的生成效率和适应性,使其能够在多样化的应用场景中发挥更大的价值。
ShuYini
2024/02/23
8.8K0
2024!深入了解 大语言模型(LLM)微调方法(总结)
改进大语言模型的方法
这是一篇关于适应开源大语言模型(LLMs)的三部系列博客的第一篇。本文探讨将LLM适应领域数据的各种方法。
JavaEdge
2024/09/13
2460
改进大语言模型的方法
一文读懂大型语言模型微调技术挑战与优化策略
LLMs (Large Language Models )正在引领人工智能技术的新浪潮。这种先进的 AI 通过利用统计模型分析海量数据,学习单词和词组之间的复杂模式,从而模拟人类认知和语言能力。LLMs 的强大功能已引起了众多头部企业以及科技爱好者的浓厚兴趣,他们纷纷竞相采用这些由人工智能驱动的创新解决方案,旨在提高运营效率、减轻工作负担、降低成本支出,并最终激发出更多创造业务价值的创新想法。
Luga Lee
2024/11/01
2920
一文读懂大型语言模型微调技术挑战与优化策略
预训练、微调和上下文学习
最近语言模型在自然语言理解和生成方面取得了显著进展。这些模型通过预训练、微调和上下文学习的组合来学习。在本文中将深入研究这三种主要方法,了解它们之间的差异,并探讨它们如何有助于语言模型的学习过程。
deephub
2023/08/30
6360
预训练、微调和上下文学习
推理大模型的后训练增强技术-指令微调篇,如何用指令微调提升推理能力?
指令微调定义: 指令微调是一种在带有指令提示和相应输出的标记数据集上微调大模型的技术,通过提供一组概述所需操作的指南或指令,使预训练模型适应执行特定任务。
致Great
2025/03/09
7110
推理大模型的后训练增强技术-指令微调篇,如何用指令微调提升推理能力?
万字长文——这次彻底了解LLM大语言模型
自然语言处理领域正在经历着一场又一场的革命,各类技术层出不穷,不断的改变我们对文本的理解方式和文本生成方式。类似与蝴蝶效应,这场革命不仅提高了机器翻译、文本摘要、文本分类等任务的性能,还在各行各业引发了巨大的变革。越来越 多的行业AI化、智能化。在本小节,将介绍一些语言模型中的核心概念,为更好的理解大语言模型做铺垫。
聪明鱼
2023/12/07
6.8K2
了解大语言模型的参数高效微调(Parameter-Effcient Fine-Tuning)
大语言模型在众多应用领域实现了突破性的进步,显著提升了各种任务的完成度。然而,其庞大的规模也带来了高昂的计算成本。这些模型往往包含数十亿甚至上千亿参数,需要巨大的计算资源来运行。特别是,当需要为特定的下游任务定制模型时,尤其是在计算能力有限的硬件平台上,这一挑战尤为突出。
叶庭云
2024/05/25
1.5K0
了解大语言模型的参数高效微调(Parameter-Effcient Fine-Tuning)
大语言模型综述全新出炉:51页论文带你盘点LLM领域专业化技术
大语言模型(LLMs)在自然语言处理(NLP)领域取得了显著的进步,为广泛的应用提供了一种非常有用的、与任务无关的基础。然而,直接应用 LLMs 去解决特定领域的复杂问题会遇到许多障碍,这些障碍源于领域数据的异质性、领域知识的复杂性、领域目标的独特性以及约束的多样性(例如不同的社会规范、伦理标准、宗教信仰等)。领域专业化是让 LLMs 在许多应用中实际投入使用的关键甚至是前提。因此,随着 LLMs 开始应用在越来越多的领域中的,领域专业化的技术在近期获得了加速发展和关注,而一份全面且系统的回顾能更好地总结和引导这一领域的持续工作。
机器之心
2023/08/08
1.7K0
大语言模型综述全新出炉:51页论文带你盘点LLM领域专业化技术
6种大模型微调技术
由于LLM参数量都是在亿级以上,少则数十亿,多则数千亿。当我们想在用特定领域的数据微调模型时,如果想要full-tuning所有模型参数,看着是不太实际,一来需要相当多的硬件设备(GPU),二来需要相当长的训练时间。
皮大大
2025/05/07
5810
极客 AI大模型微调训练营(新附zy)
LLM微调是一个将预训练模型在较小、特定数据集上进一步训练的过程,目的是精炼模型的能力,提高其在特定任务或领域上的性能。微调的目的是将通用模型转变为专用模型,弥合通用预训练模型与特定应用需求之间的差距,确保语言模型更贴近人类的期望。
用户11063488
2024/05/05
4430
每日论文速递 | UCB提出RAFT-检索增强微调训练方法
摘要:在大型文本数据集上预训练大型语言模型(LLM)现已成为一种标准模式。在许多下游应用中使用这些 LLM 时,通常会通过基于 RAG 的提示或微调将新知识(如时间关键新闻或私人领域知识)添加到预训练模型中。然而,模型获取此类新知识的最佳方法仍是一个未决问题。在本文中,我们提出了检索增强微调法Retrieval Augmented FineTuning(RAFT),这是一种训练方法,可提高模型在 "开卷 "领域设置中回答问题的能力。在 RAFT 中,给定一个问题和一组检索到的文档,我们训练模型忽略那些无助于回答问题的文档,我们称之为干扰文档。RAFT 通过逐字引用相关文档中有助于回答问题的正确序列来实现这一点。这与 RAFT 的思维链式响应相结合,有助于提高模型的推理能力。在特定领域的 RAG 中,RAFT 持续提高了模型在 PubMed、HotpotQA 和 Gorilla 数据集上的性能,为改进预训练 LLM 的域内 RAG 提供了一个后训练配方。RAFT 的代码和演示已开源。
zenRRan
2024/04/11
1.1K0
每日论文速递 | UCB提出RAFT-检索增强微调训练方法
入门生成式语言模型(Generative Language Models)
训练策略和模型之间有着密切的联系,尤其是在自然语言处理(NLP)和机器学习领域。以下是训练策略和模型的简要介绍:
857技术社区
2024/05/20
1.2K0
入门生成式语言模型(Generative Language Models)
RAG VS Fine-Tuning模型微调详解
这里先给大家推荐一篇实用的好文章:《一文彻底弄懂 Spring Boot 自动装配的过程!深入探索与案例解析》 来自作者:bug菌
小马哥学JAVA
2024/11/22
2750
解读大模型的微调
在快速发展的人工智能领域中,有效地利用大型语言模型(LLM)变得越来越重要。然而,有许多不同的方式可以使用大型语言模型,这可能会让我们感到困惑。实际上,可以使用预训练的大型语言模型进行新任务的上下文学习并进行微调。
半吊子全栈工匠
2023/09/02
1.2K0
解读大模型的微调
Eir-8B 专为医学领域打造的先进大语言模型 !
近年来人工智能(AI)和大型语言模型(LLMs)在自然语言处理(NLP)任务上取得了显著的进步,大大提升了各种功能的使用效率,如客户服务、语言翻译和内容生成。在这个背景下,AI在多个领域,尤其是医疗领域的辅助作用具有尤为重要的意义。
AIGC 先锋科技
2024/09/29
2110
Eir-8B 专为医学领域打造的先进大语言模型 !
大语言模型简史:从Transformer(2017)到DeepSeek-R1(2025)的进化之路
2025年初,中国推出了具有开创性且高性价比的「大型语言模型」(Large Language Model — LLM)DeepSeek-R1,引发了AI的巨大变革。本文回顾了LLM的发展历程,起点是2017年革命性的Transformer架构,该架构通过「自注意力机制」(Self-Attention)彻底重塑了自然语言处理。到2018年,BERT和GPT等模型崭露头角,显著提升了上下文理解和文本生成能力。2020年,拥有1750亿参数的GPT-3展示了卓越的「少样本」和「零样本」学习能力。然而,「幻觉」问题 — —即生成内容与事实不符,甚至出现「一本正经地胡说八道」的现象 — — 成为了一个关键挑战。2022年,OpenAI通过开发「对话式」的ChatGPT应对这一问题,采用了「监督微调」(SFT)和「基于人类反馈的强化学习」(RLHF)。到2023年,像GPT-4这样的「多模态模型」整合了文本、图像和音频处理能力,使LLM能够以更接近人类的「听」、「说」、「看」能力。近期推出的OpenAI-o1和DeepSeek-R1「推理模型」(Reasoning Model)在复杂问题解决方面取得突破,赋予LLM更接近人类「系统2思维」的深度推理能力,标志着人工智能在模拟人类思维模式上迈出了重要一步。此外,DeepSeek-R1模型以其「超成本效益」和「开源」设计挑战了AI领域的传统规范,推动了先进LLL的普及,并促进了各行业的创新。
致Great
2025/02/17
1.5K0
大语言模型简史:从Transformer(2017)到DeepSeek-R1(2025)的进化之路
从零开始构建大语言模型(MEAP)
像 ChatGPT 这样的大型语言模型(LLM)是在过去几年中开发的深度神经网络模型。它们引领了自然语言处理(NLP)的新时代。在大型语言模型出现之前,传统方法擅长于分类任务,如电子邮件垃圾分类和可以通过手工制作的规则或简单模型捕获的简单模式识别。然而,在需要复杂理解和生成能力的语言任务方面,例如解析详细说明、进行上下文分析或创建连贯且上下文适当的原始文本时,它们通常表现不佳。例如,以前的语言模型无法根据关键字列表编写电子邮件-这对于当代 LLM 来说是微不足道的任务。
ApacheCN_飞龙
2024/05/24
1.5K0
从零开始构建大语言模型(MEAP)
大语言模型的预训练[5]:语境学习、上下文学习In-Context Learning:精调LLM、Prompt设计和打分函数设计以及ICL底层机制等原理详解
大规模预训练语言模型(LLM)如 GPT-3 是在大规模的互联网文本数据上训练,以给定的前缀来预测生成下一个 token(Next token prediction)。通过预测词的训练目标、大规模数据集以及超高参数量的模型相结合,产生了性能极强的 LLM,它可以 “理解” 任何文本输入,并在其基础上进行“写作”,除此以外,GPT-3 的论文发现,大规模的训练数据会产生一种有趣的新兴行为,称为 In-Context Learning(又称上下文学习,语境学习, ICL),他并不需要调整模型参数,仅用几条下游任务的示例就可以取得极佳的结果。
汀丶人工智能
2023/07/19
7.4K0
大语言模型的预训练[5]:语境学习、上下文学习In-Context Learning:精调LLM、Prompt设计和打分函数设计以及ICL底层机制等原理详解
系统学习大模型的20篇论文
【引子】“脚踏实地,仰望星空”, 知其然还要知其所以然。读论文是一条重要的途径,这一篇文章https://magazine.sebastianraschka.com/p/understanding-large-language-models非常值得借鉴,不敢私藏,编译成文。
半吊子全栈工匠
2023/09/02
4.6K0
系统学习大模型的20篇论文
RAG还是微调?微软出了一份特定领域大模型应用建设流程指南
在构建大语言模型应用程序时通常有两种常见的方法来整合专有和特定领域的数据:检索增强生成和微调。检索增强生成通过外部数据增强提示,而微调将额外的知识整合到模型本身中。不过,对这两种方法的优缺点了解的却不够充分。
机器之心
2024/02/26
5730
RAG还是微调?微软出了一份特定领域大模型应用建设流程指南
推荐阅读
相关推荐
2024!深入了解 大语言模型(LLM)微调方法(总结)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验