我已经用Numpy在Python中构建了一个CNN,它是用小批量梯度下降训练的,用于MNIST数字分类。当训练批量为1时,5次训练所需时间约为1200次s,仅比16 ~ 256次间歇训练慢40%左右。第4批和第8批分别需要940名S和890 S。当我训练它超过5个周期,批号为16,32或256,时间大约是850 S(这三种大小大致相同)。
我期望更大的批号缩短时间,如批号1与批号16的时间一样,但是为什么批号16、32和256的时间相同?批处理大小越大,迭代次数就越少。我希望用我的矢量化代码将训练更大批的计算成本降到最低。批处理大小似乎没有使用任何磁盘内存。为什么时差这么小,为什么时间停滞在大约850 S的5个时代?
发布于 2021-06-19 14:54:16
您可以通过对代码进行分析和基准测试来自己回答这个问题。Python有用于侧写的标准库模块。
https://datascience.stackexchange.com/questions/90669
复制相似问题