中小型公司大模型构建之路
如何选择
自己建立
二次开发
重新训练,消耗非常巨大
现有的大模型体系已经非常丰富
对话大模型已经白热化
•三天产生一个小应用
•两天产生一个新模型
中小公司的技术实力相对薄
微调
用 LoRA((Low-Rank Adaptation低秩适配)
2022年
Edward J.Hu
PLM(Pre-trained Language Model 预训练语言模型)
AdaLoRA
Qingru Zhang 等人
AdaLoRA技术采用了一种有效的策略来调整增量阵的分配
在增量更新中使用奇异值分解进行参数化,并基于重要性指标去除不重要的奇异值,同时保留奇异向量。
QLoRA
Tim Dettmers 等人
SFT(有监督微调)
DeepSpeed+ZeRO-3
DeepSpeed
•微软开发的开源深度学习优化库
•PyTorch框架
零冗余优化器 ( Zero Redundancy Optimizer,ZeRO)
•优化器状态分区(ZeRO-1)
•梯度分区 (ZeRO-2)
•参数分区(ZeRO-3)
压缩
剪枝
剪枝技术通过理结果产生重要影响,需要剔除冗余参数以提高模型训练效率。删除多余的节点来减小网络规模,从而降低计算成本,同时保持良好的推理效果和速度。
步骤
•1、训练一个原始模型,该模型具有较高的性能但运行速度较慢。
•2、确定哪些参数对输出结果的贡献较小,并将其设置为零。
•3、在训练数据上进行微调,以便尽量避免因网络结构发生变化而导致性能下降。
•4、评估模型的大小、速度和效果等指标,如果不符合要求,那么继续进行剪枝操作直至满意为止。
分类
•非结构化剪枝
•使用技术A或B的一个或多个通道
•A 滤波
•B 权重矩阵
•分类
•权值剪枝
•神经元剪枝
•结构化剪枝
•又名:滤波器剪枝
•分类
•Filter-wise
•Channel-wise
•Shape-wise
KD(Knowledge Distillation知识蒸馏)
教师网络( Teacher Network)
学生网络 ( Student Network)
量化压缩
从高精度转换为低精度
分类
•线性量化压缩
•非线性量化压缩