TensorFlow教程图像少于预期的训练模型

时间:2020-04-06 16:42:29

标签: python tensorflow keras

挑战指的是TensorFlow教程,例如:

(1)https://www.tensorflow.org/tutorials/keras/classification

或(2)https://www.tensorflow.org/tutorials/images/cnn

在(1)中,有段“为模型提供数据” https://www.tensorflow.org/tutorials/keras/classification#feed_the_model,其中输出在每个时期60000 / 60000中表示。

在(2)中,有“编译并训练模型” https://www.tensorflow.org/tutorials/images/cnn#compile_and_train_the_model,其中输出为50000 / 50000

在两种情况下,它都与训练数据集中的图像数量相对应。

当我在Google Colab中运行这些教程时:

(1)https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/tutorials/keras/classification.ipynb

(2)https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/tutorials/images/cnn.ipynb

开箱即用,未经任何修改,我只能获得(1)的1875 / 1875和(2)的1563 / 1563

背后还有魔术吗? 也许是已知问题?

谢谢!

1 个答案:

答案 0 :(得分:0)

似乎我已经完成了这项挑战。 当您查看for { conn, err := li.Accept() if err != nil { log.Fatalln(err) } go func() { defer conn.Close() scanner := bufio.NewScanner(conn) for scanner.Scan() { ln := scanner.Text() io.WriteString(conn, ln+"\n") } }() } 时,将看到有关model.fit()的说明,如下所示:

batch_size

它在(1)和(2)教程中都找到了确认:

(1)batch_size: Integer or `None`. If unspecified, `batch_size` will default to 32.

(2)60000 / 32 = 1875(向上舍入)

因此,50000 / 32 = 1563在这些教程中显示的是批号的进度,而不是我最初认为的图像编号