【抛砖引玉】关于Checkpoint模型融合的一点经验
大家好,我是Ghost_Shell,也是GhostMix的作者。本来想写一篇文章整体介绍一下模型,一些你们可能没察觉到,但我非常固执的理念,也算是模型的特性。结果发现写太长了,就分开两部分,第一部分是介绍如何融合模型的。

首先是这张图,可能C站的小伙伴看过,但B站的小伙伴们没有看过。其实这张图是GhostMix的主要特性之一,也是这个模型做的累的根本原因。从GhostMix V1.1,V1.2到V2.0,不能说全部,但绝大部分的Prompts都是可以得到沿用的,而且效果大部分是越来越好的。如果随便将两个大模型融合,相同Prompts出图是绝对不一样,相当于用B跟A去比。我个人是不接受这种“升级”的,这不叫模型版本的升级,而是叫另一个模型。所以从V1.1到V2.0,要做到Prompts沿用的同时,提升画面质量,达到真正“升级”的目的,就需要借助MBW,也就是常说的分层融合,借助的就是supermerger插件,下面是一个checkpoint的24层。一个checkpoint有24层,如果以0.2为阈值,那么一共有6^24= 4.73e+18种可能性,显然不可能试完,所以要测试每一层的情况。

这里的分层融合跟lora的分层融合不同,会比较少人研究,而我的建议就是最蠢的方法,一层一层去试。比方说,把第一层alpha设为1,其他设为0,生成一张,以此类推,找到不影响画面整体布局的层。

确定好不影响整体画面的层之后,开始调alpha,下图是一个我的alpha表。每一个alpha后面都是一个模型。当然可以用测试图来看这一个模型有没有继续检验下去的必要。

做完这些之后,应该得到几个temp的模型,然后就进入模型检验环节,测试集涵盖很多不同画风的图片以确保模型的泛化性。

过了测试集,可以将随机种子设为-1,来看模型的泛化性。走完这一路,终于可以获得了一个不错的模型,但这只是GhostMix和另一个模型比如BRA的流程。如果需要换成是chilloutmix或者perfectworld等其他模型,请重新来一遍。这次很幸运,我只试了4个模型就找到了对的模型,所以才做了47个版本。BTW,本来想融合BRA的,最终倒在了最后泛化性这里……

所以之前有人问我,V2.0是不是比V1.2更好的时候,我都会给出非常肯定的答案,原因就在这里。无他,唯测得多尔。而且这一切还是建立在一张3060ti的显卡上....我觉得看到这里的同学,应该能理解我说的累是真的累....
如果想支持我,可以在爱发电给我买一杯咖啡:Ghost_Shell正在创作Stable Diffusion模型GhostMix的制作者 | 爱发电 (afdian.net)
现在的目标是众筹换把3060ti换成4070更好的去做模型,PS:学生党不准给我打钱,好好吃喝,生活更重要。