来自美国的新研究表明,根据您自己的数据微调 AI 基础模型并不需要减少或损害原始模型的功能,而且相对简单的修复不仅可以恢复原始模型的功能,而且实际上可以提高您尝试让(已经训练的)模型生成的输出质量。
通过作者新的训练后校准,不同模型的性能提升。本文稍后将提供更多详细信息。来源: http://export.arxiv.org/pdf/2409.16223
这不仅对科技巨头来说是巨大的,他们的注意力集中在将生成系统“即服务”出租的经济回报上,而且对越来越多的“剪线族”爱好者来说也是如此,他们下载和定制开源模型,以便他们能够更便宜地访问个性化的 AI 写作和图像/视频生成系统——而且限制更少。
该论文的作者并不害怕表现出他们对该方法潜力的热情,这显然比 2023 年提交的 Holistic Transfer: Towards Non-Disruptive Fine-Tuning with Partial Target Data(与新论文的许多贡献者合著)取得了重大进展。
他们说:
“[调查结果] 令人鼓舞,具有深远的影响!它们意味着,简单的后处理校准可能会解决微调模型在缺失类上的准确性不佳的问题,恢复预训练模型的能力,同时揭示所有类的改进特征质量。
我们很快就会看看新工作。首先,让我们看看它的目标是解决什么问题。
为什么重要
2002 年 <> 月 Stability.ai 的 Stable Diffusion 文本到图像模型发布后,第一波广泛的微调出现了。早期模型在超大规模 LAION 数据集的子集上进行训练,任何人都可以下载。
然而,想要将特定内容(例如他们自己的身份、艺术风格或名人的代表)插入到 Stable Diffusion 的非凡生成品质中的用户需要求助于 DreamBooth 等技术——这是 Google Research 定制方法的外推,允许用户将新数据训练到免费可用的模型中。 通过微调。
2022 年 Google 官方 DreamBooth 实施的用户流程示例。用户精选一小部分图像,并在微调模型的文本提示中选择一个唯一的名称(Stable Diffusion 的训练数据中没有的名称)。来源: https://dreambooth.github.io/
通过这种方式,可以获得一个模型的副本,该模型非常擅长创建特定人物或自定义艺术风格,但现在已被“妥协”以用于更普遍的用途。
这意味着,如果您想微调 Stable Diffusion 以使其能够准确描绘三个不同的人,您不可避免地必须创建三个不同的模型,每个模型大约 2-4GB 或更多。
任何第二次微调这些模型的尝试不仅会进一步降低模型的总体性能,还会对上一次微调会话的输出产生不利影响。
无论如何,名人 DreamBooth 模型很快就会在互联网上激增,主要聚集在 civit.ai 域。最终,低秩自适应 (LoRA) 等不太繁重的方法在流行度上超过了微调(尽管 LoRA 输出是否与完全微调一样有效仍然存在争议,并且 NVIDIA 此后开源了一种明显更有效的方法,称为 DoRA)。
LoRA 属于参数高效微调 (PEFT) 类别,它只影响模型训练参数的子集。
一些用户希望通过在数千张图像上微调开源 Stable Diffusion 检查点来改变它们的基本性质。
这有效地产生了一个替代的基础模型,专用于用户试图训练的任何领域(例如特定的艺术风格)。为此,LoRA 等“轻量级”方法可能效果较差,因为模型的权重需要严重偏向于新的训练数据。
本地聊天
随着最近对大型语言模型 (LLM) 的兴趣激增,希望避免 ChatGPT 等 API 驱动服务不断增长的出口(和相关成本)的用户越来越多地开始下载和微调有效的开源模型,如 Llama 3 等。
在这里,也可以使用 LoRA 来代替微调完整的检查点。我们之前曾争辩过,微调是生成适应特定用户需求的 LLM 的卓越方法。尽管微调可能具有更高的硬件要求并且可能需要更长的时间,但它提供了用户希望模型吸收的新数据的更深入泛化。
微调的问题在于,这是一个破坏性的过程,正如我们上面提到的,以后无法根据其他数据进行增量训练。
注入模型的特征和偏差显然破坏了数据集中原始的权重平衡,这意味着该模型要么极有可能反映用户贡献的数据,要么至少总体上表现比原始基础模型差(在与新数据无关的任务上)。
在一定程度上,可以通过在训练期间冻结模型的某些部分来解决这个问题;但这可能会导致一般功能减少,因为架构的冻结部分可能无法很好地推广到模型潜在空间内新微调的数据。
因此,如果有一些更简单的方法来保留微调模型的原始功能,同时保留模型根据微调数据生成输出的能力,那就太好了。
这样的发展将有利于各种潜在用户,从使用本地 LLM 和其他类型的生成模型的业余爱好者和早期采用者,一直到 FAANG 级别(非常昂贵的 AI 模型可以迭代和非破坏性地改进,而无需使用额外的数据重新开始训练的数百万美元费用)。
后处理校准
这让我们回到了这篇新论文,它被称为 Fine-Tuning is Fine, if Calibrated,来自俄亥俄州立大学、威斯康星大学麦迪逊分校和伦斯拉尔理工学院的 11 名研究人员。
研究人员试图找出地基模型在微调时损坏的确切内容。他们得出的结论是,“之前和之后”模型之间的唯一主要区别是微调类之间的 logit 刻度与模型中的原始类表现出重大差异。
Logit 链接可预测逻辑回归过程中的成功概率,将估计值(可能非常精确)转换为 0 或 1。
作者不仅发现这种缺陷几乎可以通过校准技术随意逆转,而且这种事后修复实际上提高了微调数据的输出质量。因此,使用这种技术,您不仅可以获得基础模型的原始功能,还可以更好地集成您自己的微调数据。
(尽管本文没有研究前景,但这种技术意味着模型可以多次微调,并保持有效)
在讨论他们在微调后调查模型损伤的发现时,作者指出:
“令我们惊讶的是,我们发现微调后的模型既不会忘记其他类之间的关系,也不会降低识别这些类的特征。
“相反,微调模型通常会为这些其他类别产生更多的判别特征,即使它们在微调过程中缺失!
“[真正] 损害准确性的是微调类和其他 [类] 之间的差异 logit 刻度,这意味着简单的后处理校准将恢复预训练模型的能力,同时揭示所有类的特征改进。”
作者已将他们对该理论的测试结果在 GitHub 存储库中重现。
他们发现,经过调查,基础模型架构中唯一在微调中受损的部分是二进制分类器,它将原始模型中不存在的类错误分类为微调类。
论文指出*:
“[通过] 为所有缺失类的 logit [4, 40] 添加校准偏差因子,微调模型可以成功地恢复缺失类的准确率,并在下游 [域] 获得不错的整体改进。
“由此产生的性能甚至在许多基准测试中都超过了强大的基线 [整体传输 - 本文所基于的论文],包括 ImageNet 及其变体 [ImageNet、ImageNet-R(endition)、ImageNet-S(ketch) ]、Office-Home 和 VTAB,无需复杂的训练和超参数设置。”
论文结果:作者指出,对其执行了后处理校准的微调模型可以胜过解决问题的最先进方法。
作者将校准后微调模型的性能改进归类为“意外的良性行为”,并观察到当使用基本的随机梯度下降 (SGD) 优化器时,与使用更流行的当前优化器(如 Adam)相比,可以获得更好的结果。
“尽管如此,”他们指出,“随着学习率和体重衰减足够小,良性行为会出现并保持下去。
小修
为了修复微调导致的 logit 差异,作者借用了 zero-shot 学习中的一种技术,为所有缺失类的 logit 添加了一个常数因子。这将生成新的分类规则。
作者指出,这个过程将被忽视的缺失类“提升”到与微调类相同的预测质量,恢复原始性能并提高推理时“添加”数据的性能。
在测试中,后校准技术恢复了各种微调模型的性能。表中指示的 'Oracle' 是指经过微调的分类器,该分类器还考虑了缺失的类数据。
他们进一步观察到,后处理校准“可能适用于任何模型”,并且与他们自己提出的方法相比,试图通过冻结层(例如分类器和主干)来保持基础模型完整性的方法得分很低。
结论
这项合作的发现似乎意义重大。在超大规模数据集上训练 AI 模型是一项巨大的承诺,类似于客机的起飞。尽管可以中断训练,并且通过定期保存当前权重(以相当大的存储成本)来减轻任何损害,以允许中断训练,但启动后可以做的改变结果相对较少。
这项工作令人印象深刻的是,研究人员似乎发现了一般 AI 模型训练的一个基本原理,而且他们的解决方案出奇地优雅。
在微调后能够保持基础模型的准确性,其经济意义也很大。迄今为止,解决数百万美元模型缺点的最常见方法是在推理时过滤输出,或控制推理以避免模型中出现任何明显的阿喀琉斯之踵。
此外,从理论上讲,这种技术可以在消费者层面为微调生成模型的能力带来显著改进,并带来输出质量的提高。