Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用具有最大队列大小的keras fit_生成器,工人和使用多处理_Python_Tensorflow_Keras - Fatal编程技术网

Python 使用具有最大队列大小的keras fit_生成器,工人和使用多处理

Python 使用具有最大队列大小的keras fit_生成器,工人和使用多处理,python,tensorflow,keras,Python,Tensorflow,Keras,我不知道如何使用中的max\u queue\u size、worker和使用多处理 有人能举一个例子说明如果你有,你会如何使用它们吗 1xGPU(Nvidia Quadro p1000) 具有12个逻辑处理器的6核CPU 以下是基于对这三个领域的不科学猜测,我是如何使用它的 classifier.fit_generator(training_set, steps_per_epoch = 8000,

我不知道如何使用中的
max\u queue\u size
worker
使用多处理

有人能举一个例子说明如果你有,你会如何使用它们吗

  • 1xGPU(Nvidia Quadro p1000)
  • 具有12个逻辑处理器的6核CPU
以下是基于对这三个领域的不科学猜测,我是如何使用它的

classifier.fit_generator(training_set,
                         steps_per_epoch = 8000,
                         epochs = 25,
                         validation_data = test_set,
                         validation_steps = 2000/32,
                         max_queue_size = 10,
                         use_multiprocessing = False,
                        workers=1)

MAX\u QUEUE\u SIZE-->如果在监视GPU使用情况时,GPU处于空闲状态(等待批处理),请增加此参数。理想情况下,GPU应该尽可能少地等待CPU获取数据。等待批处理意味着GPU内存消耗不是处于一个恒定的峰值,比如说95%)。举个例子:当你监控GPU内存使用情况时,你会看到很大的峰值(5%的使用率,95%的使用率,5%的使用率,95%的使用率)。95%和5%使用率之间的时间差实际上是GPU空闲时的时间。如果您发现这样的使用差异,请增加此队列大小

使用多处理-->可能会在Windows上产生错误(对我来说,这并没有发生,但我在其他帖子中看到,由于多处理问题,它可能会冻结),在基于Linux的系统上运行良好。如果要使用多个进程将数据提取到CPU,请将此设置为true。e、 g

 ..,use_multiprocessing = True, workers = 4)

根据我的经验,这些参数一起工作;i、 如果你想在速度方面提高你的表现,你可以尝试提高所有这些

感谢您的详细回答,我如何计算最大队列大小和工作人员的数量?是否有一个基于我的电脑规格的公式。不,不是真的。你只需要一步一步地增加数字。没有规则规定,如果您的I7带有1080TI,则必须执行步骤1、2等。