我刚刚开始学习python和TensorFlow,并正在尝试各种神经网络和MNIST数据。我想做的一个实验是查看训练集的大小如何影响性能。当前,训练集中似乎有55000个输入/输出对。我想以某种方式将培训限制为仅使用前1000个左右,但不知道如何实现。

我当前的训练功能如下:

def do_training():
    print("Train entry")
    for i in range(2000):

        batch_of_training_inputs, batch_of_training_labels = mnist.train.next_batch(100)

        sess.run(train_step, feed_dict={generic_image_data_struct: batch_of_training_inputs, target_for_output_struct: batch_of_training_labels })


是否有类似...

mnist.train.next_batch(100, BUT_ONLY_FROM_FIRST(1000))


仅供参考,我用以下代码获得帮助:

from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets('MNIST_data', one_hot=True)

最佳答案

您可以做的一件简单的事情就是增加验证数据集的大小。 MNIST包含60,000张图像,因此,如果您只想训练1,000张,则可以执行以下操作:

mnist = input_data.read_data_sets(train_dir, one_hot=True, validation_size=59000)

关于python - 限制MNIST训练数据的大小,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57167645/

10-12 18:46