gpt4 book ai didi

python - 为什么在 MNIST 教程中使用负 reshape (-1)?

转载 作者:太空狗 更新时间:2023-10-29 21:30:44 25 4
gpt4 key购买 nike

阅读 the Tensorflow MNIST tutorial , 我偶然发现了这条线

x_image = tf.reshape(x, [-1,28,28,1])

28, 28来自width,height1来自 channel 数。但为什么是 -1

我想这与小批量训练有关,但我想知道为什么 -1 而不是 1 (这似乎在 numpy 中给出了相同的结果)。(可能相关:为什么 numpy 的 reshape 对 -1-21 给出相同的结果)?

最佳答案

-1 表示推断该维度的长度。这是基于 ndarrayTensor 中的元素数量在 reshape 时必须保持不变的约束来完成的。在本教程中,每个图像都是一个行向量(784 个元素),并且有很多这样的行(假设为 n,因此有 784n 元素)。所以,当你写

x_image = tf.reshape(x, [-1, 28, 28, 1])

TensorFlow 可以推断-1n

关于python - 为什么在 MNIST 教程中使用负 reshape (-1)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41848660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com