【问题标题】:What does the use_multiprocessing input argument in keras mode.fit do?keras mode.fit 中的 use_multiprocessing 输入参数有什么作用?
【发布时间】:2022-10-24 10:04:11
【问题描述】:

我正在使用仅使用 CPU 的 Keras 在 python 中训练 LSTM 自动编码器模型。

我可以看到 fit 函数中有一个名为 use_multiprocessing 的参数。您能否用简单的术语解释一下这个论点究竟做了什么。我阅读了 tensorflow.org 上的解释,但如果我将参数设置为 true,我无法从中理解我的模型将如何受到影响。我正在寻找加快模型训练的方法,我想知道这个参数是否有帮助。

【问题讨论】:

    标签: tensorflow keras model lstm


    【解决方案1】:

    use_multiprocessing(以及workers和max_queue_size)参数适用于批量数据生成。文档中的线索是这样的:“仅用于生成器或 keras.utils.Sequence 输入”[参考 https://keras.io/api/models/model_training_apis/#fit-method]

    如果 use_multiprocessing 为 True,则 keras 将创建多个(数量 = 工作人员)进程线程以同时运行并从您的生成器/序列中准备批次。他们将尝试保持批次队列准备好进行训练,直至达到 max_queue_size。

    如果您的批量数据生成是训练过程中的瓶颈,这可以大大加快速度。

    另请参阅此问题的许多详细信息: How to define max_queue_size, workers and use_multiprocessing in keras fit_generator()?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-06-08
      • 1970-01-01
      • 2020-01-18
      • 2018-05-08
      • 2020-09-10
      • 2022-07-04
      • 1970-01-01
      相关资源
      最近更新 更多