一种面向大语言模型微调的指数流无损压缩存储与布局等价重建方法、系统、设备和介质
本发明涉及人工智能与数据处理,尤其涉及一种面向大语言模型微调的指数流无损压缩存储与布局等价重建方法及系统,用于大规模神经网络模型的训练与微调过程。
背景技术:
1、随着人工智能技术的迅速发展,大语言模型等大规模神经网络模型在自然语言处理、计算机视觉以及多模态智能等领域得到广泛应用。为了获得更高的模型性能和更强的表达能力,相关模型的参数规模不断扩大,从数亿参数逐渐发展到数十亿甚至数千亿参数规模。在模型训练、微调以及推理过程中,大规模参数和中间激活数据会占用大量存储资源和计算资源,对计算平台的存储容量、显存容量以及数据传输效率提出了更高要求。
2、在大语言模型微调过程中,模型参数通常以浮点格式进行存储和计算,例如半精度浮点数(fp16)或脑浮点数(bf16)格式。这些参数张量以及中间激活张量在训练迭代过程中需要频繁加载、保存和交换。随着模型规模不断增大,模型权重数据和激活数据的存储需求迅速增加,不仅会显著占用显存资源,还会导致模型检查点(checkpoint)文件体积过大,进而造成模型加载时间延长和系统运行效率下降。
3、现有技术中,为了减少模型参数和中间数据的存储开销,通常采用模型剪枝、参数量化或稀疏化等方法对模型进行压缩处理。然而,上述方法大多属于有损压缩方式,在一定程度上会影响模型的数值精度和训练稳定性。同时,这些方法通常针对模型结构或参数数值本身进行优化,而较少关注在保持原始张量精度和布局结构不变的前提下,对张量数据进行无损压缩存储。
4、此外,在大语言模型的训练或微调过程中,张量数据不仅需要保持数值一致性,还需要保持其在内存中的布局结构,例如张量的形状、步长以及数据类型等信息。如果压缩方法无法保证恢复后的张量与原始张量在布局结构上的一致性,则可能导致训练框架中的算子无法直接使用恢复后的数据,从而影响模型训练流程的连续性与稳定性。
5、因此,如何在不影响模型训练精度和计算流程的前提下,对大语言模型中的张量数据进行高效无损压缩,并在需要时能够快速恢复为与原始张量布局等价的数据结构,以降低存储开销并提高模型加载效率,成为当前人工智能系统优化领域亟需解决的技术问题。
技术实现思路
1、针对上述问题,本发明的目的是提供一种面向大语言模型微调的指数流无损压缩存储与布局等价重建方法及系统,通过对浮点张量中的指数信息进行提取与压缩,在保持张量数值精度不变的前提下减少张量数据的存储开销,并通过保留张量布局元数据实现压缩态张量的快速恢复,使恢复后的张量与原始张量在数值和内存布局上保持一致,从而在大语言模型训练和微调过程中降低存储开销并提高模型加载效率。
2、为实现上述目的,本发明采取以下技术方案:
3、第一方面,本发明提供一种面向大语言模型微调的指数流无损压缩存储与布局等价重建方法,包括:
4、获取大语言模型微调过程中待处理的张量数据及其对应的布局元数据,并对所述张量数据中的每个浮点元素进行字段解析,得到指数字段、符号位和尾数字段;
5、从所述浮点元素中提取指数字段形成指数子流,将所述指数子流作为扁平字节序列进行无损压缩处理,得到压缩指数数据;
6、将所述压缩指数数据、未经压缩的所述符号位和尾数字段数据以及所述布局元数据组合形成压缩张量对象,并将所述压缩张量对象存储于预设存储介质中;
7、在需要恢复所述张量数据时,对所述压缩指数数据进行解压处理,并将解压后得到的指数子流数据与所述符号位和尾数字段数据进行重组,根据所述布局元数据重建所述张量数据,得到与所述张量数据数值和布局上等价的重建张量数据。
8、进一步,所述张量数据包括模型权重张量、梯度张量、优化器相关张量和训练过程中产生的激活张量中的至少一种。
9、进一步,所述浮点元素采用半精度浮点格式或脑浮点格式,对浮点元素进行字段解析时,按照其浮点格式提取相应的符号位、指数字段和尾数字段,所述符号位用于表示浮点数的正负,所述指数字段用于表示数值范围,所述尾数字段用于表示有效数字部分。
10、进一步,所述布局元数据包括所述张量数据的形状信息、步长信息、数据类型以及所述张量数据在存储空间中的偏移信息中的至少一种。
11、进一步,所述将所述指数子流作为扁平字节序列进行无损压缩处理时,采用熵编码、字节流压缩算法或者其他适用于离散字节序列的无损压缩算法。
12、进一步,所述压缩张量对象用于模型检查点存储、训练时激活数据暂存、模型参数缓存和训练恢复加载中的至少一种场景。
13、进一步,所述在需要恢复所述张量数据时,对所述压缩指数数据进行解压处理,并将解压后得到的指数子流数据与所述符号位和尾数字段数据进行重组,根据所述布局元数据重建所述张量数据,得到与所述张量数据数值和布局上等价的重建张量数据,包括:
14、对所述压缩指数数据进行无损解压处理,得到与所述张量数据中浮点元素一一对应的指数数据流;
15、将解压得到的指数数据流与预先存储的符号位和尾数字段数据按照预定浮点格式进行组合,重构得到完整的张量浮点元素数据;
16、根据所述布局元数据,对张量浮点元素数据进行排列,以恢复张量结构并写入对应的模型参数存储位置。
17、第二方面,本发明提供一种面向大语言模型微调的指数流无损压缩存储与布局等价重建系统,包括:
18、张量解析模块,用于获取大语言模型微调过程中待处理的张量数据及其对应的布局元数据,并对所述张量数据中的每个浮点元素进行字段解析,得到指数字段、符号位和尾数字段;
19、压缩模块,用于从所述浮点元素中提取指数字段形成指数子流,将所述指数子流作为扁平字节序列进行无损压缩处理,得到压缩指数数据;
20、存储模块,用于将所述压缩指数数据、未经压缩的所述符号位和尾数字段数据以及所述布局元数据组合形成压缩张量对象,并将所述压缩张量对象存储于预设存储介质中;
21、张量重建模块,用于在需要恢复所述张量数据时,对所述压缩指数数据进行解压处理,并将解压后得到的指数子流数据与所述符号位和尾数字段数据进行重组,根据所述布局元数据重建所述张量数据,得到与所述张量数据数值和布局上等价的重建张量数据。
22、第三方面,本发明提供一种处理设备,所述处理设备至少包括处理器和存储器,所述存储器上存储有计算机程序,所述处理器运行所述计算机程序时执行以实现所述面向大语言模型微调的指数流无损压缩存储与布局等价重建方法的步骤。
23、第四方面,本发明提供一种计算机存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现所述面向大语言模型微调的指数流无损压缩存储与布局等价重建方法的步骤。
24、本发明由于采取以上技术方案,其具有以下优点:
25、1、绝对精度无损,保障训练收敛稳定性:本发明通过提取浮点张量(中冗余度高的指数字流进行通用无损压缩,同时保留完整的符号与尾数视图,在保持张量数值精度完全不变的情况下减少了存储开销。实验证明,在标准测试集(如gsm8k、hellaswag)上,本系统的微调准确率与全精度基线(如全参数lora)实现比特级等价,彻底消除了现有低比特量化(如4-bitqlora带来的1-4%精度下降)引起的数值误差与训练不稳定问题。
26、2、有效释放峰值显存,拓展可训练上下文极限:本发明统一了大规模神经网络微调过程中权重与激活的在轨无损压缩,能够在不影响模型训练精度的前提下有效降低动态内存资源消耗。在32gb显存的边缘设备(如jetsonagxorin)上,相较于标准lora,本发明可降低13%至16%的峰值内存占用。在基线方法因长上下文导致内存溢出(oom)的极端场景下,本系统依然能稳定运行,将最大可训练的上下文长度极限成功延伸了25%至60%。
27、3、显著降低模型检查点体积与加载时延:通过离线阶段的指数流压缩机制,本发明能够显著降低大语言模型(如llama-3系列、mistral等)检查点文件的存储体积,最高缩减可达40%。存储i/o压力的减轻直接减少了模型读取耗时,使冷启动加载时间缩短1.3倍至2.3倍,大幅提高了系统整体的运行与部署效率。
28、4、架构轻量且侵入性低,具备优异的通用性与扩展性:本发明方法实现简洁,所构建的半实体化骨架模型及其解压缩逻辑易于无缝集成到现有深度学习训练框架(如pytorch)中。该机制在不破坏自动求导底层计算图与广播语义的前提下完成了布局等价重建,使其在不同的大语言模型与硬件平台上均展现出良好的通用性。
29、因此,本发明可以光反应应用于人工智能与数据处理技术领域。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com