zoukankan      html  css  js  c++  java
  • Deep Learning Terminologies

    Deep Learning Terminologies

    batch

    full batch

    已知在梯度下降中,需要对所有样本进行处理过后然后走一步(梯度更新),那么如果我们的样本规模的特别大的话效率就会比较低。假如有 5000 万个样本的话,走一轮迭代就会非常的耗时。这个时候的梯度下降叫做 full batch。

    mini-batch

    所以为了提高效率,我们可以把样本分成等量的子集。 例如我们把 100 万样本分成 1000 份, 每份 1000 个样本, 这些子集就称为 mini batch。然后我们分别用一个 for 循环遍历这 1000 个子集。 针对每一个子集做一次梯度下降。 然后更新参数的值。接着到下一个子集中继续进行梯度下降。

    这样在遍历完所有的 mini batch 之后我们相当于在梯度下降中做了 1000 次迭代。 我们将遍历一次所有样本的行为叫做一个 epoch。在 mini-batch 下的梯度下降中做的事情其实跟 full batch 一样,只不过我们训练的数据不再是所有的样本,而是一个个的子集。 这样在 mini-batch 我们在一个 epoch 中就能进行 1000 次的梯度下降,而在 full batch 中只有一次。 这样就大大的提高了我们算法的运行速度。

  • 相关阅读:
    ES6
    JavaScript中的Function
    正则表达式
    小程序---电影商城---娱乐---电影列表
    小程序---电影商城---第三方组件 vant(vant weapp)
    Nginx 日志格式
    隐藏响应中的server和X-Powered-By
    个人常用的正则表达式(偶尔更新)
    笔记-VUE滚动加载更多数据
    thinkphp5.1+ 使用 Redis 缓存
  • 原文地址:https://www.cnblogs.com/fengyubo/p/9256271.html
Copyright © 2011-2022 走看看