Pluto and Charon: A Time and Memory Efficient Collaborative Edge AI Framework for Personal LLMs Fine-Tuning

📄 arXiv: 2408.10746v1 📥 PDF

作者: Bei Ouyang, Shengyuan Ye, Liekang Zeng, Tianyi Qian, Jingyi Li, Xu Chen

分类: cs.DC, cs.AI, cs.LG, cs.NI

发布日期: 2024-08-20

备注: Accepted by The 53rd International Conference on Parallel Processing (ICPP'24)


💡 一句话要点

Pluto and Charon:一种时间与内存高效的边缘AI协同框架,用于个人LLM微调

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 边缘计算 大语言模型 参数高效微调 协同计算 分布式训练

📋 核心要点

  1. 现有参数高效微调(PEFT)技术在边缘设备上资源效率不足,无法满足个人LLM微调的需求。
  2. PAC框架通过算法-系统协同设计,利用并行适配器和激活缓存机制,实现了高效的边缘LLM微调。
  3. 实验结果表明,PAC相比现有方法,实现了显著的端到端加速和内存占用减少,性能提升明显。

📝 摘要(中文)

大型语言模型(LLM)在网络边缘解锁了大量强大的应用,例如智能个人助理。出于对数据隐私和安全的考虑,人们越来越倾向于在边缘设备上对个人LLM进行微调,而不是依赖云端。然而,这也带来了计算强度和资源稀缺的问题,阻碍了训练效率和可行性。虽然目前的研究调查了参数高效微调(PEFT)技术以缓解资源约束,但我们的分析表明,这些技术对于边缘设备来说资源效率还不够高。为了应对这些挑战,我们提出了Pluto and Charon (PAC),这是一个时间和内存高效的协同边缘AI框架,用于个人LLM微调。PAC通过复杂的算法-系统协同设计打破了个人LLM微调的资源壁垒。(1) 在算法上,PAC实现了一种在参数、时间和内存方面都高效的个人LLM微调技术。它利用并行适配器来避免通过LLM骨干网络的完整反向传播。此外,激活缓存机制通过消除跨多个epoch的重复前向传播的必要性,进一步简化了该过程。(2) 在系统上,PAC利用近距离的边缘设备,将它们汇集为集体资源,用于原位个人LLM微调,利用混合数据和流水线并行来协调分布式训练。激活缓存的使用消除了通过LLM骨干网络进行前向传播的需要,从而能够使用数据并行来专门微调并行适配器。基于原型实现的广泛评估表明,PAC显著优于最先进的方法,实现了高达8.64倍的端到端加速和高达88.16%的内存占用减少。

🔬 方法详解

问题定义:论文旨在解决在资源受限的边缘设备上高效微调个人LLM的问题。现有参数高效微调方法(PEFT)虽然减少了参数量,但仍然需要大量的计算资源和内存,无法在边缘设备上实现高效训练。现有方法的痛点在于需要多次通过LLM骨干网络进行前向和反向传播,计算开销大,内存占用高。

核心思路:论文的核心思路是采用算法-系统协同设计,通过并行适配器和激活缓存机制,减少计算量和内存占用。同时,利用边缘设备的协同计算能力,通过混合数据和流水线并行,加速分布式训练。这样可以在保证模型性能的前提下,显著降低边缘设备上的训练成本。

技术框架:PAC框架主要包含两个部分:算法部分和系统部分。算法部分主要包括并行适配器和激活缓存机制。系统部分主要包括边缘设备的协同计算和混合数据/流水线并行。训练流程如下:首先,使用激活缓存机制缓存LLM骨干网络的前向传播结果。然后,使用并行适配器进行微调,避免通过LLM骨干网络进行反向传播。最后,利用边缘设备的协同计算能力,通过混合数据和流水线并行,加速分布式训练。

关键创新:论文的关键创新在于提出了并行适配器和激活缓存机制,以及边缘设备协同计算的混合并行策略。并行适配器避免了通过LLM骨干网络进行反向传播,显著降低了计算量。激活缓存机制避免了多次前向传播,进一步降低了计算量和内存占用。混合并行策略充分利用了边缘设备的计算资源,加速了分布式训练。与现有方法的本质区别在于,PAC能够在资源受限的边缘设备上实现高效的LLM微调,而不需要依赖云端。

关键设计:并行适配器的结构和数量需要根据具体的LLM和任务进行调整。激活缓存的大小需要根据边缘设备的内存容量进行调整。混合并行策略需要根据边缘设备的计算能力和网络带宽进行优化。损失函数采用交叉熵损失函数,优化器采用AdamW优化器。学习率需要根据具体任务进行调整。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,PAC框架相比现有最先进的方法,实现了高达8.64倍的端到端加速,并且内存占用减少了高达88.16%。这些显著的性能提升证明了PAC框架在边缘设备上进行LLM微调的有效性。实验在多个数据集上进行了验证,结果均表明PAC具有优越的性能。

🎯 应用场景

该研究成果可应用于智能个人助理、本地知识库问答、个性化推荐等场景。用户可以在本地设备上对LLM进行微调,保护数据隐私,提高响应速度。该框架降低了边缘设备上部署和微调LLM的门槛,促进了边缘智能的发展,未来可能广泛应用于物联网设备、智能家居等领域。

📄 摘要(原文)

Large language models (LLMs) have unlocked a plethora of powerful applications at the network edge, such as intelligent personal assistants. Data privacy and security concerns have prompted a shift towards edge-based fine-tuning of personal LLMs, away from cloud reliance. However, this raises issues of computational intensity and resource scarcity, hindering training efficiency and feasibility. While current studies investigate parameter-efficient fine-tuning (PEFT) techniques to mitigate resource constraints, our analysis indicates that these techniques are not sufficiently resource-efficient for edge devices. To tackle these challenges, we propose Pluto and Charon (PAC), a time and memory efficient collaborative edge AI framework for personal LLMs fine-tuning. PAC breaks the resource wall of personal LLMs fine-tuning with a sophisticated algorithm-system co-design. (1) Algorithmically, PAC implements a personal LLMs fine-tuning technique that is efficient in terms of parameters, time, and memory. It utilizes Parallel Adapters to circumvent the need for a full backward pass through the LLM backbone. Additionally, an activation cache mechanism further streamlining the process by negating the necessity for repeated forward passes across multiple epochs. (2) Systematically, PAC leverages edge devices in close proximity, pooling them as a collective resource for in-situ personal LLMs fine-tuning, utilizing a hybrid data and pipeline parallelism to orchestrate distributed training. The use of the activation cache eliminates the need for forward pass through the LLM backbone,enabling exclusive fine-tuning of the Parallel Adapters using data parallelism. Extensive evaluation based on prototype implementation demonstrates that PAC remarkably outperforms state-of-the-art approaches, achieving up to 8.64x end-to-end speedup and up to 88.16% reduction in memory footprint.