output = tf.nn.conv2d(input, weights, strides = [1,3,3,1], padding = 'VALID')
My input
形状为 200x225x225x1,weights
是 15x15x1x64。因此,output
形状为 200x71x71x64 因为(225-15)/3 + 1 = 71
Tensorboard 显示此操作总共消耗 768MB(见下图)。假设考虑到输入大小(38.6MB)、权重(0.06MB)和输出(246.2MB),总内存消耗不应超过300MB。那么剩下的内存消耗从何而来呢?
尽管我无法根据提供的信息重现您的图表和值,但您可能会看到由于 Conv2D 计算期间实现的中间值而导致的额外内存使用量。也有可能是仪器仪表不正确。 (例如,不会生成张量内存副本的重塑操作最终会复制 TF Node Stats 工具中的“内存使用情况”。)如果没有可重现的测试用例,就很难说更多了。如果您确实认为这是 TensorFlow 中的错误,请在 Github 上提出问题!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)