Python 在Keras fit_generator()中,如果最大尺寸大于1,是否需要多个工人?
在Keras中,当使用Python 在Keras fit_generator()中,如果最大尺寸大于1,是否需要多个工人?,python,machine-learning,deep-learning,keras,Python,Machine Learning,Deep Learning,Keras,在Keras中,当使用fit_generator()时,可以指定max_q_size,它基本上在后台预取生成器结果以保存滞后。要使其有效工作,您需要有多个工作进程(至少一个用于培训,一个用于预取)。用单个进程连续填充队列,然后将其拉出似乎并没有增加多少好处,开销甚至可能导致性能下降 从文档中: max\u q\u size:生成器队列的最大大小 nb\u worker:要启动的最大进程数 pickle\u safe:如果为True,则使用基于进程的线程。请注意,由于此实现依赖于多处理,因此不应将
fit_generator()
时,可以指定max_q_siz
e,它基本上在后台预取生成器结果以保存滞后。要使其有效工作,您需要有多个工作进程(至少一个用于培训,一个用于预取)。用单个进程连续填充队列,然后将其拉出似乎并没有增加多少好处,开销甚至可能导致性能下降
从文档中:
max\u q\u size:生成器队列的最大大小
nb\u worker:要启动的最大进程数
pickle\u safe:如果为True,则使用基于进程的线程。请注意,由于此实现依赖于多处理,因此不应将不可拾取的参数传递给生成器,因为它们无法轻松传递给子进程
您是否需要将nb_worker
显式设置为2或更大(默认值为1),或者在您的模型训练时,是否已经有至少一个额外的worker填充队列以获得大于1的生成器队列的好处
此外,如果您使用多个工人,是否需要将pickle\u safe
设置为True