如何使用可变形状或尺寸的输入?
How to use inputs with a variable shape or dimensions?
我是 TensorFlow 的新手,我必须实现一个包含大量图像作为输入的模型。但是这些图像没有相同的维度,所以当我将它们转换为数组时,它们没有相同的维度。
我想知道如何在没有预定义形状的情况下声明权重。
W = tf.Variable(tf.zeros([?, ?]))
您不能在变量内提供图像。可能您需要的是一个占位符(一种您可以用来在算法的某个点输入数据的变量)。有关详细信息,请参阅此 link:https://www.tensorflow.org/api_docs/python/tf/placeholder
而且在占位符的情况下,您必须指定尺寸。因此,我的建议是使用一些技术将所有图片的大小调整为相同的尺寸(例如,参见填充、镜像……):当然,只有在您的特定问题允许这样做的情况下。
只是在某些情况下你可以不指定一些维度,例如如果你想定义一个神经网络,你可以像这样不定义batch_size
input = tf.placeholder(tf.float32, shape=(None, 28, 28))
如果你要实现你的第一个神经网络,我强烈建议你看看这里。最简单明了的tensorflow教程,来自官网:https://www.tensorflow.org/get_started/mnist/beginners
值得一读:)
我是 TensorFlow 的新手,我必须实现一个包含大量图像作为输入的模型。但是这些图像没有相同的维度,所以当我将它们转换为数组时,它们没有相同的维度。
我想知道如何在没有预定义形状的情况下声明权重。
W = tf.Variable(tf.zeros([?, ?]))
您不能在变量内提供图像。可能您需要的是一个占位符(一种您可以用来在算法的某个点输入数据的变量)。有关详细信息,请参阅此 link:https://www.tensorflow.org/api_docs/python/tf/placeholder
而且在占位符的情况下,您必须指定尺寸。因此,我的建议是使用一些技术将所有图片的大小调整为相同的尺寸(例如,参见填充、镜像……):当然,只有在您的特定问题允许这样做的情况下。
只是在某些情况下你可以不指定一些维度,例如如果你想定义一个神经网络,你可以像这样不定义batch_size
input = tf.placeholder(tf.float32, shape=(None, 28, 28))
如果你要实现你的第一个神经网络,我强烈建议你看看这里。最简单明了的tensorflow教程,来自官网:https://www.tensorflow.org/get_started/mnist/beginners 值得一读:)