在以下代码中,None
用于声明占位符的大小。
x_data = tf.placeholder(tf.int32, [None, max_sequence_length])
y_output = tf.placeholder(tf.int32, [None])
据我所知,此None
用于指定变量批量维度。但是,在每个代码中,我们都有一个显示批量大小的变量,例如:
batch_size = 250
那么,在这种情况下是否有理由使用None
而不是简单地将占位符声明为?
x_data = tf.placeholder(tf.int32, [batch_size, max_sequence_length])
y_output = tf.placeholder(tf.int32, [batch_size])
答案 0 :(得分:3)
网络的输入不会限制为固定大小的批次,您可以稍后重复使用学习的网络来预测单个实例或任意长批次(例如,预测所有测试样品一次)。
换句话说,它在培训期间做的不多,因为无论如何,批次在转换期间通常具有固定的大小,但它使网络在测试时更有用。