查看: 4737|回复: 13

【新手必看】DeepFaceLab训练参数详解

[复制链接]

3727

积分

68

帖子

1084

符石

管理员

Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9

积分
3727

最佳新人隐藏大神灌水之王

发表于 2023-7-8 14:06:31 | 显示全部楼层 |阅读模式
什么是参数?
参数是控制模型结构与模型训练方法的一些值

所有参数中,有些参数只在第一次创建模型时可调整,一旦确定后不可更改。有些参数可以在后续训练中随时调整。

就好比造大厦,一旦决定造几层楼,每层有几间房间,就不可再次变更。而而大厦内部怎么装修,时可以有你自行决定并随时变更的。


怎么输入/调节参数?

第一次运行时,会让你输入各个参数值,输入方法如下:

[0] Which GPU indexes to choose? :请输入GPU序号

问句前的[0]表示你直接按回车后,会使用的默认值你可以自行输入值,值的可选项通常在问句中会给出
如果不了解这个选项的作用,输入英文问号?按回车,会给出详细说明

当模型创建后,第N次执行训练脚本时,选择好模型和GPU后,短暂停顿后会有一行提示“Press enter in 2 seconds to override model settings”“请在2秒内按enter回车以重新修改模型参数设置”就是字面意思。如果2秒内没按enter,就会沿用上一次训练时的参数进行训练


接下来就解释各参数的作用,带*的一旦创建不可更改

0. 选择/创建模型
Choose one of saved models, or enter a name to create a new model.选择一个已有的模型,或输入名字创建新模型
[r] : rename  /输入r后回车 选择重命名模型
[d] : delete  /输入d后回车 选择删除模型

[0] : liaef-ud512 - latest  /输入0后回车 选择liaef-ud512这个模型

介绍:如果model文件夹内已经有模型,在这里会显示出来,如上面的[0] : liaef-ud512 - latest,-latest表示这是最近一个进行过训练的模型。如果你要使用已存在的模型,输入模型前的编号。如果要新建模型,直接输入新模型名字后按回车。

1. 选择训练用GPU
Choose one or several GPU idxs (separated by comma).选择一个或多个GPU序号,用英文逗号隔开
[CPU] : CPU

[0] : GeForce RTX 3090

[0] Which GPU indexes to choose? :
请输入GPU序号

介绍:第一次运行时首先会出现上面这段文字。要求你输入用于训练模型的GPU序号。可支持的序号已经给你列出来了,输入CPU就使用CPU训练,输入0就使用你的第一张显卡训练。土豪有多张显卡的话输入0,1,2,3.....
问句前面的[0]代表默认值,即直接按回车会采用的值

推荐值:推荐只用编号为0的GPU训练。CPU速度太慢,直接放弃。有多张GPU的话,卡间通讯会消耗大量时间,如无必要不推荐多卡同时训练。

2. 选择自动备份时间
[0] Autobackup every N hour每N小时备份 ( 0..24 ?:help ) :

介绍:自动备份会每隔N小时复制一份模型文件,以免模型崩溃后没法回退。0表示不自动备份

推荐值:6-12

3. 记录保存预览图
[n] Write preview history ( y/n ?:help ) :
介绍:每次迭代会随机保存一张当前训练效果图,方便你查看模型进步效果,来判断是否已经训练到顶峰了。图片保存在model内一个以history结尾的文件夹中

推荐值:n 一般人看预览窗口的图就OK了。这个功能给做专业对比测试的用

4. 指定预览图
[n] Choose image for the preview history ( y/n ) :

介绍:指定一张图片作为保存的历史预览图。选n就随机选一张

推荐值:n

5. 目标迭代次数
[0] Target iteration目标迭代数 :

介绍:模型训练迭代次数,到了这个次数就停止训练。选0就一直会训练下去,直到你手动停止

推荐值:0

6. 随机翻转人脸
[y] Flip faces randomly ( y/n ?:help ) :

介绍:图片随机左右翻转,以增多数据。src图不足时可以开,但更好的方式是增加数据。如果遇到src人脸左右不对称,比如一边有痣,一边没痣,那么开启后会导致练出来的人脸两边都会有若隐若现的痣。不推荐开,增加数据集是王道

推荐值:n

7.批尺寸大小
[2] Batch_size ( ?:help ) : ?

介绍:每次迭代程序会随机选batchsize张图来学习,数量越大模型每次进步的方向越准,单次迭代时间也越久,需要的显存也相应成倍增加

推荐值:4-16 通常显存不足报错后,把这个值改低就好

8. 模型分辨率*
[512] Resolution ( 64-640 ?:help ) :

介绍:模型生成人脸的分辨率。注意,这个只是尺寸大,并不是更清晰。大尺寸的结果就是训练速度更慢,通常256足够用了。一般人连256都训练不到高清,完全没必要用256以上的分辨率模型。

推荐值:128-256,要是16的倍数

9. 选择人脸类型*
[wf] Face type人脸类型 ( h/mf/f/wf/head ?:help ) :

介绍:训练用的人脸类型。什么是人脸类型呢,就是从原图中截取的人脸框大小。h是half face,mf是mid-half-face,f是full-face,wf是whole-face,head是最大的带整个头的人脸。

人脸越大,最后合成环节的可调节余地越大。但相同模型分辨率下,有效面积就越小。比如256尺寸的wf,有效的人脸范围大概只有二分之一大。但在显存越来越大的今天,不用担心。
h是deepfake刚问世时的人脸类型,当年显存小啊,只能将就将就。

推荐值:推荐用wf,已经把整个脸都包含进了,而且能兼容f人脸素材。 h和mf太小,在后期合成时没调整余地。head过大,没必要浪费显存。
许多人总问head模型,真没必要。我理解你们是觉得head可以把脸型也生成出来,这个wf就行,但实际上合成时用的还是dst的人脸轮廓,你训练阶段能生成没卵用。脸型问题你就认为无解吧,只能靠专业后期调整,别再讨论head模型了。

10. 模型的架构*
[liae-ud] AE architecture ( ?:help ) :

介绍:模型的核心架构类型。有DF和LIAE两种架构。内容较多,具体区别细节以后单独开教程。这里你只要记住结论DF五官结构保留的更像,LIAE光影处理的更好。
除了核心架构外,还有几个附带参数可加,-u增加人脸相似度,-d在相同显存占用量下,牺牲速度换取分辨率.
核心架构和附带参数可组合使用,如 df, liae, df-d, df-ud, liae-ud

推荐值:LIAE系列

11. 模型中间瓶颈层的宽度
[256] AutoEncoder dimensions ( 32-1024 ?:help ) :

介绍:模型最中间一层神经元的数量。可以理解为越大这个模型能力越强,但要求的显存也越大。就像大脑,人脑比猪脑神经元更多,能力也越强,但需要的头骨容量也越大。

推荐值:256及以上

12. 模型编码层的宽度
[64] Encoder dimensions ( 16-256 ?:help ) :

介绍:模型前半部分神经元的数量。可以理解为越大这个模型能力越强,但要求的显存也越大。就像大脑,人脑比猪脑神经元更多,能力也越强,但需要的头骨容量也越大。

推荐值:64及以上

13. 模型解码层的宽度
[64] Encoder dimensions ( 16-256 ?:help ) :

介绍:模型后半部分神经元的数量。可以理解为越大这个模型能力越强,但要求的显存也越大。就像大脑,人脑比猪脑神经元更多,能力也越强,但需要的头骨容量也越大。

推荐值:64及以上

14. 模型解码器遮罩层宽度
[16] Decoder mask dimensions ( 16-256 ?:help ) :


介绍:模型中有个分支是学习遮罩,次此参数控制此部分的宽度。

推荐值:三分之一解码层宽度

15. 只训练遮罩部分
[n] Masked training ( y/n ?:help ) :

介绍:只有人脸类型是wf或head时可选。开启后模型只关注于被遮罩划分出来的人脸,不学习遮罩外的无关区域。这个遮罩需要提前用xseg模型应用得到。不然默认使用人脸关键点围合而成的遮罩,会把头发等其他区域给囊括进来。

推荐值:y

16. 眼部嘴部优先训练
[n] Eyes and mouth priority ( y/n ?:help ) :

介绍:眼神和嘴巴口型是最难训练的区域,开启这个参数可以让模型重点优化眼部和嘴部。但如果你没有闭眼素材和张嘴素材,开这个参数也没用

推荐值:n

17. 均匀化样本中各角度的素材
[n] Uniform yaw distribution of samples ( y/n ?:help ) :

介绍:一般样本中正脸图片居多,俯仰脸侧脸数量较少,这会导致纯随机选取样本时,这些大角度素材被选中训练的概率较小,模型对它们的学习不足。开启此参数后,会根据人脸角度来挑选素材,让大角度人脸样本得到较好的训练

推荐值:n 看你的目标视频,如果有很多大角度的话,建议开启

18. 记录保存预览图
[n] Write preview history ( y/n ?:help ) :

介绍:每次迭代会保存一张当前训练效果图,方便你查看模型进步效果,来判断是否已经训练到顶峰了。图片保存在model内一个以history结尾的文件夹中

推荐值:n 一般人看预览窗口的图就OK了。这个功能给做专业对比测试的用

19. 把模型和优化器放到GPU中使用
[y] Place models and optimizer on GPU ( y/n ?:help ) :

介绍:开启后模型权重会放在GPU上使用,减少GPU和内存通信,从而提高训练速度。显存足够就开启,显存不够就关闭

推荐值:y

20. 使用AdaBelief优化器
[y] Use AdaBelief optimizer? ( y/n ?:help ) :

介绍:使用最新的adabelief优化器作为训练用的迭代方法。模型收敛到最优状态的速度更快,效果更好。但会占用更多显存

推荐值:y

21. 使用学习率衰减
[n] Use learning rate dropout ( n/y/cpu ?:help ) :

介绍:学习率可以简单理解每次模型进化的步子大小。步子大了容易扯着蛋,走上歧途。步子小了可以更精准走到正确的地点,但速度就慢。

推荐值:前期不开,等你感觉画面很久没进步时开启。

22. 是否扭曲样本
[y] Enable random warp of samples ( y/n ?:help ) :

介绍:开扭曲后,给模型增大学习难度,让模型得到更高难度的锻炼,学成后就更牛逼。不开的话容易src和dst互相影响,让生成的src像dst。

推荐值:y 前期开,后期可关闭

23. GAN(生成对抗学习)的强度
[0.0] GAN power ( 0.0 .. 1.0 ?:help ) :

介绍:机器学习中有个很牛逼的算法叫GAN,能生成细节更丰富的图,眼睫毛都根根分明。但特别耗显存,高配玩家建议开启。开启后模型崩溃的概率会增大,一定要做好自动备份。

推荐值:低配0 高配0.1

24. GAN的感知域尺寸大小*
[24] GAN patch size ( 3-640 ?:help ) :

介绍:GAN每次去辨别的区域大小,越大效果越好,显存也占用越多。

推荐值:分辨率/8

25. GAN的模型宽度*
[0.0] GAN dimensions(4-512 ?:help):

介绍:类似模型编码层宽度,越大效果越好,显存也占用越多。

推荐值:16 显存大可酌情增加

26. 脸部明暗色彩学习强度
[0.0] Face style power ( 0.0..100.0 ?:help ) :

介绍:让生成的人脸和原本的人脸在明暗色彩上更相似。

推荐值:初期不开,后期从0.001开始慢慢增加,不要开太大,0.01差不多了,这个很容易崩

27. 背景明暗色彩学习强度
[0.0] Background style power ( 0.0..100.0 ?:help ) :

介绍:让生成的背景和原本的背景在明暗色彩上更相似。学背景干嘛,后面都是要扣掉的,没必要,不用开

推荐值:0

28. 对src做变色处理
[none] Color transfer for src faceset ( none/rct/lct/mkl/idt/sot ?:help ) :

介绍:src素材通常光影不够丰富,开启这个参数后,可以每次对src素材做随机颜色变化,人为营造出各种光影色彩

推荐值:rct或lct

29. 使用梯度剪裁
[n] Enable gradient clipping ( y/n ?:help ) :

介绍:梯度是什么,可以理解为每次模型更新的变化剧烈程度。开启此参数后,会把模型剧烈的变化给限制住,能极大避免模型崩溃。不然很可能遇到一次很奇怪的数据,导致模型瞬间爆炸,崩成一片纯色

推荐值:y 强烈建议开着,不会多消耗显存

30. 使用预训练模式
[n] Enable pretraining mode ( y/n ?:help ) :

介绍:一体包软件在 _internal\pretrain_CelebA\faceset.pak 放了一份综合名人人脸数据,人种、光影、角度很丰富,开启此参数后,src和dst就会使用这份数据做为训练。让模型可以先做个通识教育。为你自己的特定数据学习打下良好基础。

推荐值:n 我个人不推荐用这种方式做预训练。个人推荐你把杂七杂八的图直接放到src的aligned和dst的aligned文件夹中训练就行,效果一模一样,还方便随时增删数据。

Zhatv换脸论坛免责声明
全站默认解压密码:zhatv.cn
【Zhatv】论坛里的文章仅代表作者本人的观点,与本网站立场无关。
所有文章、内容、信息、资料,都不保证其准确性、完整性、有效性、时效性,请依据情况自身做出判断。
因阅读本站内容而被误导等其他因素所造成的损失责任自负,【Zhatv】不承担任何责任。

本帖被以下淘专辑推荐:

300

积分

21

帖子

38

符石

金丹师

Rank: 3Rank: 3Rank: 3

积分
300
发表于 2023-7-11 11:34:42 | 显示全部楼层
作为一个新手 太有用了!!! 感谢大佬的分享
回复

使用道具 举报

291

积分

11

帖子

19

符石

金丹师

Rank: 3Rank: 3Rank: 3

积分
291
发表于 2023-9-12 21:57:34 | 显示全部楼层
感谢分享---
回复

使用道具 举报

2565

积分

156

帖子

403

符石

化神丹师

Rank: 5

积分
2565

灌水之王

发表于 2023-9-26 00:29:55 | 显示全部楼层
留下脚步~
[发帖际遇]: 暴走萝莉 乐于助人,奖励 5 符石. 幸运榜 / 衰神榜
回复

使用道具 举报

95

积分

5

帖子

28

符石

筑基丹师

Rank: 2Rank: 2

积分
95
发表于 2023-10-26 14:05:52 | 显示全部楼层
学习了,谢谢大佬
回复

使用道具 举报

1408

积分

81

帖子

312

符石

化神丹师

Rank: 5

积分
1408
发表于 2023-11-12 00:28:43 | 显示全部楼层
必须点赞!太强大了!对于我这个新手太有帮助了!谢谢!
回复

使用道具 举报

748

积分

12

帖子

436

符石

元婴丹师

Rank: 4Rank: 4Rank: 4Rank: 4

积分
748
发表于 2023-12-11 14:11:15 | 显示全部楼层
一看就是高手写的,俗话用的非常流利,讲的也非常详细全面
回复

使用道具 举报

358

积分

3

帖子

173

符石

金丹师

Rank: 3Rank: 3Rank: 3

积分
358
发表于 2023-12-29 07:29:42 | 显示全部楼层
教程很有帮助,谢谢大佬。
回复

使用道具 举报

715

积分

16

帖子

455

符石

元婴丹师

Rank: 4Rank: 4Rank: 4Rank: 4

积分
715
发表于 2024-3-15 21:20:47 | 显示全部楼层
学习中谢谢分享
回复

使用道具 举报

87

积分

3

帖子

33

符石

筑基丹师

Rank: 2Rank: 2

积分
87
发表于 2024-4-23 08:41:13 | 显示全部楼层
本帖最后由 s3219521aa 于 2024-4-23 08:50 编辑


讲得好
回复

使用道具 举报

小黑屋|ZhaTV ( 滇ICP备15003127号-4 ) |网站地图

GMT+8, 2024-10-11 23:42

Powered by Zhatv.cn

© 2022-2023

快速回复 返回顶部 返回列表