在转移学习中,我认为我的model.fit_generator陷入了无限循环。我不知道这是我的Colab笔记本链接https://colab.research.google.com/drive/1o9GNCQdMeh4HZdiZ5QAjiDDkixn-OsXx
答案 0 :(得分:0)
如果按以下方式更新最后一行,则大约需要40秒,共5个纪元。
来自
model.fit_generator(train_generator, epochs=5, validation_data=valid_generator)
到
model.fit_generator(train_generator, epochs=5, steps_per_epoch=len(train_generator), validation_data=valid_generator, validation_steps=len(valid_generator))
请检查有关对model.fit的输入是生成器的预期描述。因此,当“ steps_per_epoch”为“无”时,纪元将运行,直到输入数据集用尽。因此,如果您的数据集是无限重复的数据集,则生成器将无限运行。
steps_per_epoch:整数或无。总步骤数(批次 样本),然后再声明一个纪元并开始下一个纪元 时代。使用输入张量(例如TensorFlow数据)进行训练时 张量,默认值None等于您的样本数量 数据集除以批处理大小;如果无法确定,则为1。 如果x是tf.data数据集,并且'steps_per_epoch'为None,则该纪元 将一直运行到输入数据集耗尽为止。通过时 无限重复的数据集,必须指定steps_per_epoch 论据。数组输入不支持此参数。