• DeepFaceLab参数详解之Batch-Size的使用和取值!


    Batch-Size简称BS。 这是一个非常常见的参数,所有模型都具备的一个参数。 这其实是深度学习中的一个基础概念。要说理论可以说出一大堆,大家可以先简单的理解为一次处理的图片张数。为了防止吓跑小白,还是从实际操作说起。

    1.如何设置batch-size

    双击train64.bat 启动程序,三次回车后就出现了Batch_size,此时你可以输入一个具体的数字,比如:8。也可以直接回车(默认值为:4)。

    2.修改设置batch-size

    如果你更换了设备,或者从其他地方搞来了一个模型,因为配置不一样了,你可能需要修改BS,此时可以参考下面的操作。

    同样双击train64.bat 启动程序,鼠标点击黑色窗口确保已经激活状态,然后立马回车,再来一个三连击,就可以修改BS了。

    3  batch-size 设置成多少比较好?

    理论放在最后,我们还是先实践,对比下H64模型,bs4和bs32,跑1000个iter的效果。

    BS=4  的时候,单个迭代大概380ms, 1000个迭代后src_loss>2   总时间大概380s=6分钟。

    BS=32  的时候,单个迭代大概680ms, 1000个迭代后src_loss<2 , 总时间大概680s=11分钟。

    通过简单的对比可以发现。如果迭代次数相同,bs大的效果相对较好,loss曲线更加“瘦” 降低的比较快,但是相应消耗的时间也多了不少,接近一倍,同时还要消耗更多显存。

    所以这个值并不是单纯的说越小越好,或者越大越好,而是时间和机器性能的一个平衡。  软件的默认值为4,推荐的取值为2的n次方,比如4,8,16,32,64,128。  一般用4,8,16比较多。

    上图为,BS从8改到16。可以看到BS变大后振幅明显变小,时间翻倍,但是最低点并没有太大变化。

    凡是有size的东西,大家往往都迷恋“” (单纯一笑),其实合适的才是最好。

    BS基本的原则是:根据自己的硬件设备来调整,从小往上调,调到OOM就知道极限在哪里了。

    我喜欢练模型的时候开大一点,具体使用的时候开小一点。

    4.batch-size扩展阅读

    学有余力的想上进的可以看看专业的介绍,大神就不用看了。

    小白也不要为难自己咯!即使读不懂这些,也能把软件玩的很溜。看完下面这篇文章,请告诉我梯度是什么,哈哈!

    原文地址:https://blog.csdn.net/qq_34886403/article/details/82558399

    -------------------------------------------------------------------------------------------------------

    获取更多Deepfakes/AI换脸内容可访问deepfakes中文网

    第一时间获取相关文章可关注微信公众号:托尼是塔克(TonyIsStark)

  • 相关阅读:
    网络基础相关知识内容
    json模块的转义dump 和反转义 loap
    常用模块--time,sys,os,json
    正则表达式
    day_24 模块和包
    day23_内置函数(__del__ item系列 ,模块)
    LuoguP3806 【模板】点分治1 (点分治)
    BZOJ1305/Luogu3153 [CQOI2009]dance跳舞 (network flow)
    LuoguP2217 [HAOI2007]分割矩阵 (DP + memorized search)
    BZOJ3224/LuoguP3369 普通平衡树 (splay)
  • 原文地址:https://www.cnblogs.com/wangpg/p/11645228.html
Copyright © 2020-2023  润新知