zoukankan      html  css  js  c++  java
  • 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)

  • 相关阅读:
    js模拟点击加载事件代码
    js添加节点
    js数字随机产生并相加
    转:Selenium借助AutoIt识别上传(下载)详解
    [原创] web_custom_request 与 Viewstate
    转:浏览器与WEB服务器工作过程举例
    转:WebDriver(Selenium2) 处理可能存在的JS弹出框
    转:Loadrunner报错“Too many local variablesAction.c”解决方法
    转:loadrunner关联及web_reg_save_param方法浅析
    转:性能测试流程剖析
  • 原文地址:https://www.cnblogs.com/wangpg/p/11645228.html
Copyright © 2011-2022 走看看