微调模型分类
"全参数微调是一把重剑,轻量微调是一把小刀。你不会用一把重剑来削水果,你也不会用一把小刀来战斗”。 炼金协会会员伊达尔.阿尔凯米在笔记里写到
微调模型技术分为两种大类
- 全参数微调(Full fine-tuning):对模型的所有参数进行训练,产物是一个新的模型。
- 轻量化微调(Parameter-Efficient Fine-Tuning):微调整个模型的少部分参数,产物是一个小的模型,这个小模型无法单独使用,需要和原有的模型一起才能发挥作用
两种技术适用的场景不同
下面举例说明
全参数微调的使用场景
假设现在我们有 Stable Diffusion 2.1 模型,他能生成各种场景的图像
现在我们想要让这个模型只用于生成各种现实场景的各种真人照片,这时候我们最好采用全参数微调
准备大量(1w张甚至更多)真人的照片,然后基于这些图像进行微调,训练一个只用于真实照片生成的专用模型
得到这个专用的真实系图像模型之后,我们把新训练的模型放到图像生成工作台,就能进行真人系图像的生成了
轻量化微调的使用场景
接下来我们有另一个想法,希望这个模型生成的照片中,出现的人都是某一个固定的明星,也就是说,我们希望照片中出现的人,脸是固定的
这时候我们可以采用轻量化微调,准备少量(10~50张)该明星的照片,然后基于这些图像进行微调,训练一个轻量化的 Lora 模型
得到这个小模型之后,我们在生成图片时,需要同时使用原有的大模型和这个轻量化的小模型
全参数微调:需要更多的计算资源,同时通常更适合更大规模的数据集,通常适合大型的调整,例如模型整体需要进行风格调整,一个主要用于生成二次元图片的模型,现在希望将其变成生成现实系图片的模型
轻量化微调:训练和使用更方便,例如希望模型生成某一个人的人脸,或者生成某一种服饰