gpt4 book ai didi

python - Keras - 大型图像和蒙版数据集生成器

转载 作者:太空宇宙 更新时间:2023-11-03 14:09:33 25 4
gpt4 key购买 nike

我正在尝试构建一个模型,该模型的输入和输出( mask )都有图像。由于数据集的大小和我有限的内存,我尝试使用 the Generator Approach introduced in the Keras Documentation :

# Provide the same seed and keyword arguments to the fit and flow methods
seed = 1

image_generator = image_datagen.flow_from_directory(
'data/images',
class_mode=None,
seed=seed)

mask_generator = mask_datagen.flow_from_directory(
'data/masks',
class_mode=None,
seed=seed)

# combine generators into one which yields image and masks
train_generator = zip(image_generator, mask_generator)

model.fit_generator(
train_generator,
samples_per_epoch=2000,
nb_epoch=50)

除了代码到达这一行时,一切似乎都正常:

train_generator = zip(image_generator, mask_generator)

似乎压缩两个列表的过程显式地使它们生成它们的内容并且系统开始消耗大量 RAM 直到它耗尽内存。

使用生成器的目的是避免在这段代码恰恰相反时用完 RAM。

有什么办法可以解决这个问题吗?

最佳答案

您可以使用 itertools.izip() 返回迭代器而不是列表。

itertools.izip(*iterables)

Make an iterator that aggregates elements from each of the iterables. Like zip() except that it returns an iterator instead of a list. Used for lock-step iteration over several iterables at a time.

关于python - Keras - 大型图像和蒙版数据集生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40024619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com