本发明涉及物联网领域,尤其涉及时间与内存高效的大语言模型边缘协同微调方法、系统及装置。
背景技术:
1、大型语言模型(llms)因其在广泛的机器学习任务中展现出的卓越性能,引发了机器智能领域的一场革命。虽然这些模型最初在云数据中心孕育而成,但它们迅速扩展至移动边缘设备,推动了包括智能个人助理和私人心理咨询在内的边缘智能应用的发展。为了不断提升模型的性能,llms需持续跟踪用户互动,收集数据,并通过微调来提高服务质量。此项微调使得预训练大语言模型能够适应各种具体的下游边缘智能应用,例如智能个人助理、私人心理咨询等应用。
2、个人大语言模型的微调通常使用的是高度敏感的用户隐私数据,这可能包括:用户的日常对话、行动轨迹和就诊病例等,使用云服务商所提供的云计算资源进行llms微调,需要将目标微调数据全部上传到这些商业公司的云服务器中,这面临着严重的用户隐私数据泄漏风险,引发了个人用户对数据隐私的担忧。边缘端微调技术可以充分利用边缘环境中的空闲计算资源,同时完全保护用户的数据隐私,使其成为隐私敏感的边缘应用中广泛使用的计算范式。然而llms微调的资源密集性,给在资源有限的边缘设备上的微调带来了极大挑战。
技术实现思路
1、有鉴于此,为了解决现有大预言模型微调方法受制于单一边缘设备固有的资源短缺问题,进而无法在边缘端高效地进行个人llms的微调,本发明提出时间与内存高效的大语言模型边缘协同微调方法,所述方法包括以下步骤:
2、为大型语言模型构建旁路子网络,得到目标llms;
3、利用各边缘设备对所述目标llms进行测试微调,并记录边缘设备和模型的相关信息;
4、基于所述相关信息,对所述目标llms和所述边缘设备进行划分,得到划分编排方案;
5、基于所述划分编排方案,进行边缘设备协同的目标llms微调,得到微调结果。
6、在一些实施例中,还包括:
7、利用缓存数据对所述旁路子网络进行微调。
8、通过该优选步骤,将所有输入样本的这些中间激活结果缓存下来保存到设备的存储设备中,在下次使用同一样本微调时从硬盘中直接读出来使用,这样可以避免使用同一样本进行微调时,重复执行llms的前向传播过程。
9、在一些实施例中,所述利用各边缘设备对所述目标llms进行测试微调,并记录边缘设备和模型的相关信息这一步骤,其具体包括:
10、在边缘设备部署所述目标llms;
11、基于测试数据离线执行所述目标llms的微调;
12、记录所述边缘设备在不同负载下的训练速度、设备间的网络通信速度和内存预算、以及所述目标llms的模中间激活结果,模型权重和梯度张量维度。
13、在一些实施例中,所述基于所述相关信息,对所述目标llms和所述边缘设备进行划分,得到划分编排方案这一步骤,其具体包括:
14、定义约束目标,所述约束目标为各条流水线阶段的执行时间相差最小、以及通信时间最短;
15、基于约束目标和动态规划算法,得到划分编排方案;
16、所述划分编排方案包括多个子模型和设备组,所述子模型和设备组存在对应关系。
17、在一些实施例中,所述动态规划算法的状态转移方程为:
18、
19、其中,表示由设备组和llm层0到y的子模型编排得到的具有s个流水线阶段的最优子流水线中,最慢的流水线阶段的执行时间;n和m是索引下标,其中:
20、表示由设备组和llm层0到q的子模型编排得到的具有s-1个流水线阶段的最优子流水线中,最慢的流水线阶段的执行时间;
21、t(q+1→y,{dn-m…,dn-1})表示由设备组{dn-m,…,dn-1}和llm层q+1到y的子模型组成的单个流水线阶段执行前向传播和反向传播所需的时间;
22、其中t(x→y,{d0…,dn-1})的计算方法为:
23、
24、其中,m为一个批次被划分的微批次数量,b为一个微批次中的样本数量,md表示微调过程中设备d的峰值内存开销,ud表示设备d的内存预算,
25、在一些实施例中,所述通信时间最短的公式表示如下:
26、
27、其中,表示一个批次样本中的训练开始阶段,表示一个批次样本中的训练执行阶段,表示一个批次样本中的训练结束阶段,s表示阶段数量,表示ws配置下所测量的流水线阶段i的前向传播的执行时间,表示ws配置下所测量的流水线阶段i的反向传播的执行时间,表示流水线阶段i和i+1前向传播的通信时间,流水线阶段i和i+1反向传播的通信时间,ars(i)表示配置ws中的流水线阶段i所需的all-reduce集合通信时间。
28、在一些实施例中,所述利用缓存数据对所述旁路子网络进行微调这一步骤,其具体包括:
29、将微调过程中的中间激活结果进行保存,得到缓存数据;
30、将所述旁路子网络的模型参数和所述缓存数据同步至所有边缘设备;
31、采用数据并行的方法对所述旁路子网络进行微调。
32、本发明还提出了时间与内存高效的大语言模型边缘协同微调系统,所述系统包括:
33、目标模型构建模块,用于为大型语言模型构建旁路子网络,得到目标llms;
34、测试微调模块,利用各边缘设备对所述目标llms进行测试微调,并记录边缘设备和模型的相关信息;
35、编排模块,基于所述相关信息,对所述目标llms和所述边缘设备进行划分,得到划分编排方案;
36、协同微调模块,基于所述划分编排方案,进行边缘设备协同的目标llms微调,得到微调结果。
37、基于上述方案,本发明提供了时间与内存高效的大语言模型边缘协同微调方法及系统,首先,该方案允许用户数据直接在生成数据的设备上进行处理,从而有效地保障了用户的隐私和数据安全;同时,该模式无需与云数据中心进行大量的数据交换,减少了因主干网络不稳定及服务质量不佳带来的问题;通过为目标llms组装了一个并行的旁路网络,有效降低了模型微调过程中的计算和内存开销;利用其主干模型参数始终保持不变的特性,设计了中间激活结果缓存技术,进一步降低了在边缘环境中微调llms所需的计算资源;充分挖掘了边缘环境中可用闲置算力,利用多个边缘设备进行协同计算,从而打破单个边缘设备有限的计算资源壁垒,实现更加资源高效且具有可拓展性的个人llms边缘侧微调。
1.时间与内存高效的大语言模型边缘协同微调方法,其特征在于,包括以下步骤:
2.根据权利要求1所述时间与内存高效的大语言模型边缘协同微调方法,其特征在于,还包括:
3.根据权利要求2所述时间与内存高效的大语言模型边缘协同微调方法,其特征在于,所述利用各边缘设备对所述目标llms进行测试微调,并记录边缘设备和模型的相关信息这一步骤,其具体包括:
4.根据权利要求2所述时间与内存高效的大语言模型边缘协同微调方法,其特征在于,所述基于所述相关信息,对所述目标llms和所述边缘设备进行划分,得到划分编排方案这一步骤,其具体包括:
5.根据权利要求4所述时间与内存高效的大语言模型边缘协同微调方法,其特征在于,所述动态规划算法的状态转移方程为:
6.根据权利要求5所述时间与内存高效的大语言模型边缘协同微调方法,其特征在于,所述通信时间最短的公式表示如下:
7.根据权利要求6所述时间与内存高效的大语言模型边缘协同微调方法,其特征在于,所述利用缓存数据对所述旁路子网络进行微调这一步骤,其具体包括:
8.时间与内存高效的大语言模型边缘协同微调系统,其特征在于,包括:
