思考一下,联邦学习可以训练大语言模型吗?(2)

简介: 思考一下,联邦学习可以训练大语言模型吗?

为解决微调大语言模型到不同领域和任务的挑战,已有多种方案,比如部分微调、使用 adapters 和 prompting。但这些方法存在如下问题:


Adapters 引入额外的推理延迟 (由于增加了模型层数)

Prefix-Tuning 难于训练,且预留给 prompt 的序列挤占了下游任务的输入序列空间,影响模型性能


Lora 提出的思路是:虽然模型的参数众多,但其实模型主要依赖低秩维度的内容 (low intrinsic dimension)。假设在适应过程中,权重的更新也具有较低的 "内在等级(intrinsic rank)"。对于一个预先训练好的权重矩阵 W_0∈R^d×k,通过用低秩分解代表后者来约束其更新:


, ,


在训练期间,冻结 W_0,不接受梯度更新,而 A 和 B 包含可训练参数。W_0 和∆W = BA 都与相同的输入相乘,它们各自的输出向量按坐标相加。对于 h=W_0x,修改后的正向传递得到了:



图 5. Reparameterized 只训练 A 和 B


如图 5,对 A 使用随机高斯初始化,对 B 使用零初始化,所以∆W = BA 在训练开始时是零。然后,用 α/r 来调整∆Wx,其中 α 是 r 中的一个常数。当用 Adam 进行优化时,如果适当地调整初始化,那么调整 α 与调整学习率大致相同。因此,只需将 α 设置为尝试的第一个 r,而不对其进行调整。这种比例有助于减少在改变 r 时重新调整超参数的需要。



图 6. 常规微调和 LoRA 图示


如图 6,r 是超参数,指定用于自适应的低秩矩阵的秩。r 越小,低秩矩阵越简单,在自适应过程中需要学习的参数越少,训练就更快,计算需求会相应的减少。然而,r 变小的弊端是,低秩矩阵捕获任务特定信息的能力降低。这可能导致较低的自适应质量,并且与较高的 r 相比,模型在新任务上可能表现不佳。总之,在 LoRA 中确定 r 的取值,需要在模型复杂性、自适应能力和拟合不足或拟合过度的风险之间进行权衡。因此,重要的是用不同的 r 值进行实验,以找到正确的平衡,从而在新任务中满足所需的性能。


矩阵秩 (r) 可以非常低,比如对于 GPT-3 175B 模型,rank-1 或 rank-2 就能基本对齐原始 rank-12288 的效果:


与 Adam 微调的 GPT-3 175B 相比,LoRA 可训练参数数量减少了 1 万倍,GPU 内存需求减少了 3 倍

在 RoBERTa、DeBERTa、GPT-2 和 GPT-3 等大语言模型上,LoRA 在模型质量方面的表现与微调相当或更好,尽管它具有更少的可训练参数、更高的训练吞吐量,并且与适配器不同,没有额外的推断延迟


3.4 相关硬件基础


最后,我们来看看硬件方面的工作。


Grace Hopper 是第九代英伟达数据中心 GPU,与前几代英伟达安培 GPU 相比,旨在为大规模 AI 和 HPC 应用提供数量级的改进。线程块集群和线程块重新配置改善了空间和时间上的数据定位,再加上新的异步执行引擎,使应用程序能够始终保持所有单元的忙碌。NVIDIA Grace Hopper 通过 NVIDIA NVLink C2C 将 NVIDIA Grace CPU 和 NVIDIA Hopper GPU 融合到一个超级芯片中,NVLink C2C 是一个总带宽为 900 GB/s 的芯片间互连。NVLink C2C 内存一致性使得 Grace CPU 超级芯片和 Grace Hopper 超级芯片都可以通过统一的编程模型进行编程。


图 7. 英伟达 Grace Hopper 超级芯片逻辑概览


2023 年 6 月,英伟达宣布其新的 GH200 Grace Hopper "超级芯片"— 专门为大规模人工智能应用创建的 CPU 和 GPU 组合 — 已经进入全面生产。它有 528 个 GPU 张量核心,支持高达 480GB 的 CPU 内存和 96GB 的 GPU 内存,并拥有高达 4TB / 秒的 GPU 内存带宽。


图 8. 英伟达的 GH200 "Grace Hopper"AI 超级芯片 [5]


GH200 以 "Hopper" 为基础,与 Nvidia 的 "Grace"CPU 平台(两者均以计算机先驱 Grace Hopper 命名)相结合,通过 Nvidia 的 NVLink 芯片对芯片(C2C)互连技术将其纳入一个芯片。Nvidia 预计,这一组合将极大地加速人工智能和机器学习应用的训练(创建模型)和推理(运行模型)。


"生成式人工智能正在迅速改变企业,在医疗、金融、商业服务和更多行业释放新的机会并加速发现,"Nvidia 加速计算副总裁 Ian Buck 在一份新闻稿中说。"随着 Grace Hopper 超级芯片的全面生产,全球制造商将很快提供企业所需的加速基础设施,以建立和部署利用其独特的专有数据的生成式人工智能应用程序。" 据该公司称,GH200 的主要特点包括一个新的 900GB/s 相干(共享)内存接口,比 PCIe Gen5 快 7 倍。GH200 还为 GPU 提供了 30 倍的系统内存总带宽。此外,GH200 可以运行所有 Nvidia 软件平台,包括 Nvidia HPC SDK、Nvidia AI 和 Nvidia Omniverse。Nvidia 还宣布,它将把这种 CPU/GPU 组合芯片构建成一个新的超级计算机,称为 DGX GH200,它可以利用 256 个 GH200 芯片的综合能力,作为一个单一的 GPU 来执行,提供 1 exaflop 的性能和 144 兆字节的共享内存,比上一代 Nvidia DGX A100 的内存多近 500 倍。DGX GH200 将能够为生成语言应用、推荐系统和数据分析训练巨大的下一代人工智能模型。Nvidia 目前并未公开 DGX GH200 的售价,但如果根据去年出货的 DGX H100 作为参考,一台搭载 8 组 H100 GPU 的 8U GPU 服务器机柜约为 20 万美元,考虑到 DGX GH200 拥有最多 256 个 Grace Hopper,其价格可能会高于这个范围。根据 Anandtech 的报道,一台 DGX GH200 计算机的价格 "很容易达到 8 位数(美元)的水平"。


由于 Nvidia 和 Cerebras 等供应商的持续硬件进步,高端云人工智能模型可能会随着时间的推移继续变得更有能力,处理更多的数据,并且比以前做得更快。根据内部测试,在处理需要大量内存的 AI 工作负载方面,DGX GH200 系统显示出比 DGX H100 更好表现,平均可获得 2-6 倍不等的性能提升,例如,在使用 1TB 的内存容量用于 GPT3 模型训练时,DGX GH200 的处理速度快上 1 倍,若以 40TB 内存处理深度学习推荐模型(DLRM)时,速度则有多达 4 倍的提升,甚至在图神经网络处理方面速度更快上许多,足足有 5 倍之多。


单纯从 GH200 的角度看,能够在一定程度上支撑对 LLM 的分布式训练,使 FL+LLM 变得更加可行。但是,回到文初我们的讨论,FL 的初衷是利用大量分散的一般性设备分布式训练一个中央模型,一方面可以有效利用分散的客户端资源,另一方面也满足各个客户端的数据隐私需要。要求这些客户端都装有 GH200 显然是不现实的,这样的 GPU 的成本消耗与 FL 的初衷并不一致。


此外,也有一些研究人员认为 GH200 自身也不会对大模型的应用推广有太大影响 [11]。他们分析,算力层面,单颗 GH 芯片和 H100 芯片 FP8 浮点算力没有差异。内部测试中 GH200 更好的表现是由于其存储。DGX GH200 内部 GPU 和 CPU 的连接方式与 DGX H100 不同,其高速触达的存储容量可以大幅提升。然而,集群性能的提升主要有算力本身、网络、存储三大要素。因此,传统 GPT3、GPT4 等主流大模型下,DGX H100 集群(NVLink 联网)与 DGX GH200 系统并不会有明显差异。


关于 H100,已有报道分析了其大模型训练的性能 [12]。两项 MLPerf 基准评测的最新数据中,英伟达 H100 芯片组在人工智能算力表现的测试中,刷新了所有组别的纪录,也是唯一一个能够跑完所有测试的硬件平台。英伟达和 GPU 云算力平台 CoreWeave 提交的数据为这项测试设定了业界标准。在 896 个英特尔至强 8462Y + 处理器和 3584 个英伟达 H100 芯片的联合作用下,仅仅花了 10.94 分钟就完成了基于 GPT-3 的大语言模型训练任务。在 BERT-Large 模型训练中,H100 和 CoreWeave 将数据刷到了极端的 0.13 分钟,在 64 卡的情况下,测试数据也达到了 0.89 分钟。


4、后续发展讨论


我们在这篇文章中讨论了与 FL+LLM 相关的一些方法,包括算法方面的改进、硬件方面的研发,以及分布式训练和联邦学习的架构。其中,FedLLM 应当是最符合 FL+LLM 的一篇工作,尽管其距离实用、技术完备的 FL+LLM 还有很大差距。


DeepSpeed 是通过分布式训练和混合精度技术来提高训练速度和节省资源的模型训练架构,其面向的是分布式训练的应用场景,一般来说,分布式学习会将训练数据均匀分布在不同节点,节点大多是专用机房中的计算节点,且节点通常处于统一地理位置,节点间通信条件较好。而对于 FL 来说,每个计算节点拥有的数据量与设备自身有关,很难保证不同计算节点拥有相近的数据量。此外,FL 的计算节点可能是手机、平板等,一般与中央服务器处于远程连接状态,连接稳定性和通信代价的情况都比较差。所以目前 DeepSpeed 的工作直接应用到 FL+LLM 中还有很大难度。


LoRA 是目前非常流行的微调方法,更多优秀的微调方法也在不断提出。算法上的改进,给 FL 各个客户端节点基于本地数据训练模型带来了可能。而硬件目前的发展我们在前面也讨论过,硬件自身的性能在不断提高,但对于 FL 这个应用场景来说,令手机、平板具备这样的硬件条件难度非常大。


由对目前与 FL+LLM 相关的一些工作的分析,我们感觉联邦学习支撑 LLM 还有很多需要解决的问题。包括 FedLLM,实际上也没有谈及如何应对存储容量小、处理性能差、网络条件不佳的客户端设备,而这些,恰好是 FL 最典型的应用场景。我们期待有更多的研究人员可以关注 FL+LLM 问题,给出更多的技术细节和可落地的解决方案。


作者介绍


Jiying,工学博士,毕业于北京交通大学,曾分别于香港中文大学和香港科技大学担任助理研究员和研究助理,现从事电子政务领域信息化新技术研究工作。主要研究方向为模式识别、计算机视觉,爱好科研,希望能保持学习、不断进步。


参考引用的文献:[1] McMahan, Brendan, et al. "Communication-efficient learning of deep networks from decentralized data."Artificial intelligence and statistics. PMLR, 2017.[2] Li, Tian, et al. "Federated optimization in heterogeneous networks."Proceedings of Machine learning and systems2 (2020): 429-450.[3] Karimireddy, Sai Praneeth, et al. "Scaffold: Stochastic controlled averaging for federated learning."International Conference on Machine Learning. PMLR, 2020.[4] Wang, Jianyu, et al. "Tackling the objective inconsistency problem in heterogeneous federated optimization."Advances in neural information processing systems 33 (2020): 7611-7623.[5] https://arstechnica.com/information-technology/2023/06/nvidias-new-ai-superchip-combines-cpu-and-gpu-to-train-monster-ai-systems/[6] LoRA: Low-Rank Adaptation of Large Language Models, https://arxiv.org/abs/2106.09685[7] Releasing FedLLM: Build Your Own Large Language Models on Proprietary... (https://blog.fedml.ai/releasing-fedllm-build-your-own-large-language-models-on-proprietary-data-using-the-fedml-platform/)[8] Wayne Xin Zhao, Kun Zhou, etc., A Survey of Large Language Models,  https://arxiv.org/abs/2303.18223[9] https://lifearchitect.ai/chinchilla/[10] Samyam Rajbhandari, Jeff Rasley, etc., ZeRO: Memory Optimizations Toward Training Trillion Parameter Models,  https://arxiv.org/pdf/1910.02054.pdf%22%20%5Ct%20%22_blank[11] 国泰君安证券,研究报告《AI 超算浑然一体,光互联地位显著提升》[12] 英伟达 H100 霸榜权威 AI 性能测试,11 分钟搞定基于 GPT-3 的大模型训练,https://m.cnbeta.com.tw/view/1367739.htm

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
机器学习/深度学习 算法 PyTorch
大规模模型训练tricks集锦
大规模模型训练tricks集锦
518 1
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能基础——模型部分:模型介绍、模型训练和模型微调 !!
人工智能基础——模型部分:模型介绍、模型训练和模型微调 !!
294 0
|
7天前
|
机器学习/深度学习 数据可视化 TensorFlow
使用Python实现深度学习模型的分布式训练
使用Python实现深度学习模型的分布式训练
119 73
|
2月前
|
数据采集 机器学习/深度学习 人工智能
[大语言模型-论文精读] 利用多样性进行大型语言模型预训练中重要数据的选择
[大语言模型-论文精读] 利用多样性进行大型语言模型预训练中重要数据的选择
73 0
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
机器学习模型之深度神经网络的特点
深度神经网络(Deep Neural Networks, DNNs)是一类机器学习模型,通过多个层级(层)的神经元来模拟人脑的工作方式,从而实现复杂的数据处理和模式识别任务。
76 1
|
4月前
|
机器学习/深度学习 存储 算法
深度学习之大规模模型训练
基于深度学习的大规模模型训练涉及训练具有数百万甚至数十亿参数的深度神经网络,以处理复杂的任务,如自然语言处理、计算机视觉和语音识别。
125 2
|
5月前
|
机器学习/深度学习 并行计算 TensorFlow
使用Python实现深度学习模型:分布式训练与模型并行化
【7月更文挑战第9天】 使用Python实现深度学习模型:分布式训练与模型并行化
80 1
|
6月前
|
机器学习/深度学习 人工智能 算法
【机器学习】RLHF:在线方法与离线算法在大模型语言模型校准中的博弈
【机器学习】RLHF:在线方法与离线算法在大模型语言模型校准中的博弈
361 6
|
6月前
|
机器学习/深度学习 存储 自然语言处理
【机器学习】LoRA:大语言模型中低秩自适应分析
【机器学习】LoRA:大语言模型中低秩自适应分析
281 5
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】Chameleon多模态模型探究
【机器学习】Chameleon多模态模型探究
241 5