首页 > 其他分享 >【AI大模型】如何构建一个大模型?看完你就知道了!

【AI大模型】如何构建一个大模型?看完你就知道了!

时间:2024-10-18 10:20:17浏览次数:8  
标签:语言 训练 AI 模型 学习 奖励 构建

根据 OpenAI 联合创始人 Andrej Karpathy 在微软 Build 2023 大会上公开的信息,OpenAI 使用的大语言模型构建流程如图1所示,主要包含四个阶段:预训练、有监督微调、奖励建模和强化学习

这四个阶段都需要不同规模的数据集及不同类型的算法,会产出不同类型的模型,所需要的资源也有非常大的差别。

在这里插入图片描述

图1 OpenAI 使用的大语言模型构建流程

预训练(Pretraining)阶段需要利用海量的训练数据(数据来自互联网网页、维基百科、书籍、GitHub、论文、问答网站等),构建包含数千亿甚至数万亿单词的具有多样性的内容。

利用由数千块高性能 GPU 和高速网络组成的超级计算机,花费数十天完成深度神经网络参数训练,构建基础模型(Base Model)。

基础模型对长文本进行建模,使模型具有语言生成能力,根据输入的提示词,模型可以生成文本补全句子。

有一部分研究人员认为,语言模型建模过程中隐含地构建了包括事实性知识(Factual Knowledge)和常识知识(Commonsense)在内的世界知识(World Knowledge)。

根据文献 [1] 中的介绍,GPT-3 完成一次训练的总计算量是 3 640PFLOPS,按照 NVIDIA A100 80GB GPU 和平均利用率达到 50% 计算,需要花费近一个月的时间使用 1 000 块 GPU 完成。

文献[1] BROWN T B, MANN B, RYDER N, et al. Language models are few-shot learners[J]. arXiv preprint

arXiv:2005.14165, 2020.

由于 GPT-3 的训练采用 NVIDIA V100 32GB GPU,其实际计算成本远高于上述计算。

文献 [2] 介绍了参数量同样是 1 750 亿个的 OPT 模型,该模型训练使用 992 块 NVIDIA A100 80GB GPU,整体训练时间将近 2 个月。

文献[2] ZHANG S, ROLLER S, GOYAL N, et al. Opt: Open pre-trained transformer language models[J].

arXiv preprint arXiv:2205.01068, 2022.

BLOOM[32] 模型的参数量也是 1 750 亿个,该模型训练一共花费 3.5 个月,使用包含384块NVIDIA A100 80GB GPU 集群完成。

可以看到,大语言模型的训练需要花费大量的计算资源和时间。LLaMA、Falcon、百川(Baichuan**)等模型都属于基础语言模型。由于训练过程需要消耗大量的计算资源,并很容易受到超参数影响,因此,如何提升分布式计算效率并使模型训练稳定收敛是本阶段的研究重点。

有监督微调(Supervised Fine Tuning),也称为指令微调,利用少量高质量数据集,通过有监督训练使模型具备完成问题回答、翻译、写作等能力。

有监督微调的数据包含用户输入的提示词和对应的理想输出结果。用户输入包括问题、闲聊对话、任务指令等多种形式和任务。

例如:提示词:复旦大学有几个校区?理想输出:复旦大学现有 4 个校区,分别是邯郸校区、新江湾校区、枫林校区和张江校区。其中邯郸校区是复旦大学的主校区,邯郸校区与新江湾校区都位于杨浦区,枫林校区 位于徐汇区,张江校区位于浦东新区。

利用这些有监督数据,使用与预训练阶段相同的语言模型训练算法,在基础模型的基础上进行训练,得到有监督微调模型(SFT 模型)。经过训练的 SFT 模型具备初步的指令理解能力和上下文理解能力,能够完成开放领域问答、阅读理解、翻译、生成代码等任务,也具备了一定的对未知任务的泛化能力。

由于有监督微调阶段所需的训练数据量较少,SFT 模型的训练过程并不需要消耗大量的计算资源。根据模型的大小和训练数据量,通常需要数十块 GPU,花费数天时间完成训练。SFT 模型具备了初步的任务完成能力,可以开放给用户使用,很多类 ChatGPT** 的模型都属 于该类型,包括 Alpaca、Vicuna、MOSS、ChatGLM-6B 等。很多这类模型的效果非常好, 甚至在一些评测中达到了 ChatGPT 的 90% 的效果。当前的一些研究表明,有监督微调阶 段的数据选择对 SFT 模型效果有非常大的影响,因此构造少量并且高质量的训练数据是本阶段的研究重点。

奖励建模(Reward Modeling)阶段的目标是构建一个文本质量对比模型。对于同一个提示词,SFT 模型对给出的多个不同输出结果的质量进行排序。

奖励模型可以通过二分类模型,对输入的两个结果之间的优劣进行判断。奖励模型与基础模型和 SFT 模型不同,奖励模型本身并不能单独提供给用户使用。

奖励模型的训练通常和 SFT 模型一样,使用数十块 GPU,通过数天时间完成训练。

由于奖励模型的准确率对强化学习阶段的效果有至关重要的影响,因此通常需要大规模的训练数据对该模型进行训练。

Andrej Karpathy 在报告中指出,该部分需要百万量级的对比 数据标注,而且其中很多标注需要很长时间才能完成。图 2 给出了 InstructGPT 系统中奖励模型训练样本标注示例。

在这里插入图片描述

图2 InstructGPT 系统中奖励模型训练样本标注示例

可以看到,示例中文本表达都较为流畅,标注其质量排序需要制定非常详细的规范,标注者也需要认真地基于标规范进行标注,需要消耗大量的人力。

同时,保持众包标注者之间的一致性,也是奖励建模阶段需要解决的难点问题之一。

此外,奖励模型的泛化能力 边界也是本阶段需要重点研究的一个问题。

如果奖励模型的目标是针对系统所有的输出都能够高质量地进行判断,那么该问题的难度在某种程度上与文本生成等价,因此限定奖励模型应用的泛化边界是本阶段需要解决的问题。

强化学习(Reinforcement Learning,RL)阶段根据数十万用户给出的提示词,利用前一阶段训练的奖励模型,给出 SFT 模型对用户提示词补全结果的质量评估,并与语言模型建模目标综合得到更好的效果。

该阶段使用的提示词数量与有监督微调阶段类似,数量在十万量级,并且不需要人工提前给出该提示词所对应的理想回复。

使用强化学习,在 SFT 模型的基础上调整参数,使最终生成的文本可以获得更高的奖励(Reward)。该阶段需要的计算量相较预训练阶段也少很多,通常仅需要数十块 GPU,数天即可完成训练。

文献 [3] 给出了强化学习和有监督微调的对比,在模型参数量相同的情况下,强化学习可以得到相较于有监督微调好得多的效果。

文献[3] OUYANG L, WU J, JIANG X, et al. Training language models to follow instructions with human feedback[J]. Advances in Neural Information Processing Systems, 2022, 35: 27730-27744.

关于为什么强化学习相比有监督微调可以得到更好结果的问题,截至 2023 年 9 月还没有完整或得到普遍共识的解释。

Andrej Karpathy 也指出,强化学习并不是没有问题的,它会使基础模型的熵降低,从而减少模型输出的多样性。

经过强化学习方法训练后的 RL 模型,就是最终提供给用户使用、具有理解用户指令和上下文的类 ChatGPT 系统。

由于强化学习方法稳定性不高,并且超参数众多,使得模型收敛难度大,叠加奖励模型的准确率问题,使得在大语言模型上有效应用强化学习非常困难。
在这里插入图片描述
以上内容选自《大规模语言模型:从理论到实践(全彩)》一书,更多关于构建大语言模型的细节内容,可以阅读此书!

本书共分为 8 章,围绕大语言模型基础理论、预训练、指令理解和模型应用四个部分展开:

  • 第一部分介绍大语言模型的基础理论;
  • 第二部分介绍大语言模型的预训练,包括大语言模型预训练 数据和分布式训练;
  • 第三部分介绍大语言模型如何理解并服从人类指令,包括有监督微调和强化学习;
  • 第四部分介绍大语言模型应用和评估。

具体章节安排如图3所示。

在这里插入图片描述

图3 本书章节安排

第 2 章介绍大语言模型的基础理论知识,包括语言模型的定义、Transformer 结构、大语言 模型框架等内容,并以 LLaMA 使用的模型结构为例介绍代码实例。

第 3 章和第 4 章围绕大语言模型预训练阶段的主要研究内容开展介绍,包括模型分布式训练 中需要掌握的数据并行、流水线并行、模型并行及 ZeRO 系列优化方法。除此之外,还将介绍预 训练需要使用的数据分布和数据预处理方法,并以 DeepSpeed 为例介绍如何进行大语言模型预 训练。

第 5 章和第 6 章围绕大语言模型指令理解阶段的主要研究内容进行介绍,即如何在基础模型 的基础上利用有监督微调和强化学习方法,使模型理解指令并给出类人回答,包括 LoRA**、Delta Tuning 等模型高效微调方法、有监督微调数据构造方法、强化学习基础、近端策略优化,并以 DeepSpeed-Chat 和 MOSS-RLHF 为例介绍如何训练类 ChatGPT 系统。

第 7 章和第 8 章围绕大语言模型的应用和评估开展介绍,包括将大语言模型与外部工具和知 识源进行连接的 LangChain** 框架、大语言模型在智能代理及多模态大模型等方面的研究和应用情 况,以及传统的语言模型评估方式、针对大语言模型使用的各类评估方法。

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

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

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

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

本文转自 https://blog.csdn.net/DEVELOPERAA/article/details/141030152?ops_request_misc=&request_id=&biz_id=102&utm_term=ai%E5%A4%A7%E6%A8%A1%E5%9E%8B&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-4-141030152.142v100pc_search_result_base8&spm=1018.2226.3001.4187,如有侵权,请联系删除。

标签:语言,训练,AI,模型,学习,奖励,构建
From: https://blog.csdn.net/2401_84205765/article/details/143035880

相关文章

  • 2024 年最值得尝试的 8 个 AI 开源大模型
    如果要将LLM按照是否开源来划分的话,那么,OpenAI的ChatGPT,Google的Gemini这一类就属于闭源模型,也可以说是专有的LLM,用户并不能深入到模型层面去使用,而是只能在基于模型的聊天应用层使用。当然,尽管这些LLM提供了开放API给开发者,但是也只能够在一定的范围内进行调......
  • 智能高效,智慧监管:EasyCVR视频汇聚平台助力煤矿构建一体化视频监控系统
    随着物联网、大数据、云计算等技术的快速发展,智慧化转型已成为煤矿行业提升生产效率、保障安全的重要途径。煤矿生产环境复杂多变,存在高温、低氧、多尘、黑暗等不利因素,给传统的人工巡检和管理方式带来了极大的挑战。EasyCVR视频汇聚平台作为智慧煤矿建设的重要组成部分,凭借其强大......
  • 过期大米被重新销往乡村学校?EasyCVR平台如何构建食品卫生安全视频监管方案
    近期,重庆市市场监管局发布的一则通报引起了社会广泛关注。通报指出,酉阳县某公司存在将过期大米重新包装并销往乡村学校的行为,这一事件再次将校园食品卫生安全问题推向了风口浪尖。面对这样的食品安全隐患,如何加强监管、确保学生饮食安全成为亟待解决的问题。而EasyCVR安防综合管......
  • ShowMeAI-人工智能工具笔记-九-
    ShowMeAI人工智能工具笔记(九)T81-558|深度神经网络应用-全案例实操系列(2021最新·完整版)-P15:L2.4-在Pandas中为Keras使用Apply和Map-ShowMeAI-BV15f4y1w7b8嗨,我是Jeffine,欢迎来到华盛顿大学的深度神经网络应用课程。在这段视频中,我们将看看如何结合使用apply和......
  • 普通人也能看懂的大语言模型入门,不要错过哦
    1.引言本文旨在为没有计算机科学背景的人士提供关于ChatGPT及类似AI系统(GPT-3、GPT-4、BingChat、Bard等)的工作原理的洞察。ChatGPT是一种聊天机器人——一种基于大型语言模型构建的对话式AI。这些肯定是些专业术语,我们将逐一解析。在此过程中,我们将讨论它们背后的核心概......
  • 作为前端程序员该如何转行大模型?说说我的经验
    最近各行各业都不容易啊,那个中金女员工跳楼事件频繁上热点,引起广泛的关注,本质上还是经济下行,我们互联网行业也是如此,特别是程序员,本来就有35岁危机,加上行业不景气,大厂都在裁员,那么我们程序员面对这困境怎么办呢,还有那些即将走上程序员岗位的年轻人怎么办呢,今天跟大家好好聊......
  • 35岁失业后,靠这5个AI副业也能养活自己!
    都说经济下行,市场大环境不好,即使是大厂也裁员不断。有铁饭碗的或许还可以熬熬工龄,一般企业的普通打工人,不得不面临35岁的职场危机。打工人,建议尽早认清一个事实,与其坐以待毙,不如在当前主业尚且稳定的情况下,尽快探索新的机会。我也不建议你做实体,开店或者下班后去摆摊,毕竟......
  • AI实战篇:Spring AI + 混元 手把手带你实现企业级稳定可部署的AI业务智能体
    前言在之前的内容中,我们详细讲解了SpringAI的基础用法及其底层原理。如果还有小伙伴对此感到困惑,欢迎参考下面这篇文章,深入学习并进一步掌握相关知识:https://www.cnblogs.com/guoxiaoyu/p/18441709今天,我们将重点关注AI在实际应用中的落地表现,特别是SpringAI如何能够帮助企业......
  • 《使用Gin框架构建分布式应用》阅读笔记:p77-p87
    《用Gin框架构建分布式应用》学习第5天,p77-p87总结,总计11页。一、技术总结1.Go知识点(1)context2.on-premisessoftwarep80,AcontainerislikeaseparateOS,butnotvirtualized;itonlycontainsthedependenciesneededforthatoneapplication,whichmakesthe......
  • Google Tx-LLM:用大型语言模型助力治疗药物开发
      每周跟踪AI热点新闻动向和震撼发展想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与未来同行!订阅:https://......