我现在在Keras 2.2.2上,我正在尝试用zca_whitening
和ImageDataGenerator
生成训练数据的增强。但是,当我尝试安装生成器(使用zca_whitening
时这是必需的)时,python
进程会占用越来越多的内存(100GB+),直到它被系统杀死。
这个小例子可能导致泄漏:
import numpy as np
from keras.preprocessing.image import ImageDataGenerator
def cause_leak():
idg = ImageDataGenerator(zca_whitening = True)
random_sample = np.random.random((1, 250, 250, 3))
idg.fit(random_sample)
cause_leak()
更新:昨天,这在Keras存储库中被标记为bug。
最佳答案
如本issue所述,这不是内存泄漏,因为在矩阵上计算奇异值分解(250*250*3),即187000个元素是内存密集型元素。不幸的是,到目前为止,还没有立即解决这个问题,因为问题在于所提到的西格玛矩阵的计算。
关于python - Keras ImageDataGenerator Fit导致内存泄漏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52137047/