[ControlNet] Adding Conditional Control to Text-to-Image Diffusion Models

1、目的

        让预训练好的大型DDPM模型支持额外的输入条件(如Canny edges、Hough lines、user scribbles、segmentation maps、human key points、shape normals、depths等)

        不同于image-to-image translation致力于学习不同domain之间的映射,ContrlNet旨在用task-specific condition来控制扩散模型

2、方法

        ControlNet:end-to-end网络,控制大型DDPM模型学习task-specific input condition

        1)trainable copy

                在task-specific数据集上训练,学习条件控制

        2)locked copy

                保留网络从上亿图片中学到的能力。因为保留了production-ready weights,所以在不同scale的数据集上训练都很鲁棒,不会overfitting

        3)zero convolution

                连接trainable和locked网络块,通过学习,卷积权重逐渐从0增长到优化的参数。

                不给deep features增加新的噪声,因此相较于从头开始训练新的卷积层,训练和fine tune一样快

                

                在训练初始,有

                

                也即 ,相当于ControlNet不存在。之后ControlNet的训练就相当于是在进行fine tuning

                并且训练伊始,卷积层的weight和bias的梯度不为0,不影响训练

                

        4)训练技巧

                -> 随机用空字符替代50%的text prompts,有利于网络专注于从input control map中学习语义特征

                -> small-scale training

                        部分打破ControlNet和Stable Diffusion之间的connection可以加速收敛。等到模型的预测结果和condition之间展现出合理的关联的时候,可以再恢复这些connection进行训练,使得结果更精准

                -> large-scale training

                        数据量较大,因此不容易over-fitting。可以先训ControlNets,然后再unlock Stable Diffusion的weights,训练整个模型。

                

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值