大型图像数据集的内存管理
memory management for large image dataset
我正在尝试使用大型图像数据集训练图像分类模型,但我无法使用完整数据集进行训练,因为我在将其加载到内存时遇到问题。
这个问题有解决方案吗?
好的!您是否考虑过使用生成器训练模型?您可以在文档中找到有关该主题的更多信息:
https://www.tensorflow.org/api_docs/python/tf/keras/Model#fit
请注意,您可以将生成器传递给 fit
方法。我认为这是最好的方法。
另一种有点幼稚的方法是在可以装入内存的批次上迭代训练模型,François Chollet 在以下问题中证实了这一点:
https://github.com/keras-team/keras/issues/4446
(“是的,连续调用 fit 将逐步训练模型。”)
也可以考虑使用train_on_batch方法:
https://www.tensorflow.org/api_docs/python/tf/keras/Model#train_on_batch
我正在尝试使用大型图像数据集训练图像分类模型,但我无法使用完整数据集进行训练,因为我在将其加载到内存时遇到问题。 这个问题有解决方案吗?
好的!您是否考虑过使用生成器训练模型?您可以在文档中找到有关该主题的更多信息:
https://www.tensorflow.org/api_docs/python/tf/keras/Model#fit
请注意,您可以将生成器传递给 fit
方法。我认为这是最好的方法。
另一种有点幼稚的方法是在可以装入内存的批次上迭代训练模型,François Chollet 在以下问题中证实了这一点: https://github.com/keras-team/keras/issues/4446 (“是的,连续调用 fit 将逐步训练模型。”)
也可以考虑使用train_on_batch方法: https://www.tensorflow.org/api_docs/python/tf/keras/Model#train_on_batch