自己从零训了一版控制模型,数据对齐这关最难过

以前一直用别人训好的控制模型,这回自己从零训了一版,才算真搞懂它在干嘛。

头几天基本在捋链路:说白了就是在扩散模型旁边接了一路条件输入,主干那份生成能力不动,让边缘、深度、姿态这类结构信息在旁边牵着它走。道理不复杂,真跑起来才知道时间都花在哪。

接下来准备数据,坑几乎都在这一段。条件图和目标图必须严格对齐,我一开始没太当回事,训出来控制力软绵绵的,给什么图它都只是照着大概那个意思画。回头查才发现问题不在网络,是预处理参数前后没统一,同一批数据里混了几种口径,模型能学到的对应关系自然是糊的。重新对齐一遍再训,同样的步数,控制力立刻硬了一截。

后面换底模又重来一轮。不同底模得配不同的训练策略,上一版的参数照抄过去不灵,新一代那几个大底模显存吃得特别凶,batch压根压不上去,只能从别的地方想办法凑。

跑完这一版最大的收获不是手里多了个模型,而是以后调别人的控制模型心里有数了——它在某些场景失灵,我大致能猜到是训练数据那头缺了这类样本,而不是干等作者更新。数据清洗我还是土办法,有一起训过的说说你们怎么清的。

自己训一遍确实通透,佩服

对齐我后来全交给统一的预处理脚本批跑,手动挑必错