首页 > 解决方案 > TensorFlow:在测试时丢弃卷积梯度/参数

问题描述

最近我一直在阅读卷积神经网络 (ConvNets) 消耗的内存。在训练期间,每个卷积层都有多个反向传播梯度所需的参数。这些讲义表明,这些参数原则上可以在测试时丢弃。链接注释的引用:

通常,大多数激活都在 ConvNet 的较早层(即第一个 Conv 层)上。这些被保留是因为它们是反向传播所必需的,但是一个仅在测试时运行 ConvNet 的巧妙实现原则上可以通过仅在任何层存储当前激活并丢弃下面层上的先前激活来大大减少这一点.

有没有办法(使用 TensorFlow)利用这种“聪明的实现”来推断大批量?是否有一些标志指定模型是否处于训练阶段?或者这是否已经根据是否调用优化器函数自动处理?

标签: tensorflowmemoryconv-neural-network

解决方案


推荐阅读