【问题标题】:Tensorflow epochs are too slowTensorflow 时期太慢了
【发布时间】:2020-09-18 13:40:29
【问题描述】:

我正在尝试使用 python 界面开始使用 tensorflow。我正在构建一个图像分类系统,解释为Here。但是在运行代码的时候,epochs耗时太长,1个epoch差不多2分钟,如果增加步数,epoch运行时间成倍增长。
我的系统配置是: p>

和软件配置是:

  • Python 3.7
  • 蜘蛛4
  • 张量流 2.2.0

我发现了类似的线程Here,但就我而言,基本操作已经足够快了。

如何提高张量流的性能

【问题讨论】:

  • 您需要 Nvidia GPU 来加速训练。到今天为止,没有办法解决。
  • 每个 epoch 两分钟听起来对平台来说是合理的,我不会称之为“慢”
  • @Dr.史努比从给定的链接阅读文档,每个时期只有 15 个步骤......因此它非常慢
  • 比较点是什么?文章没有说明它使用哪个平台来获得每个 epoch 8 秒,因此声称每个 epoch 15 步必须快是不正确的。

标签: python tensorflow machine-learning


【解决方案1】:

遗憾的是,TensorFlow 和 PyTorch 都只使用 Cuda 作为 GPU 加速的后端,它们不支持任何 Mac'a GPU - Intel 或 AMD。这意味着您的 TensorFlow 代码只能在 CPU 上运行。

【讨论】:

    【解决方案2】:

    根据文档,fit_generator 函数可能的参数如下

    fit_generator(
        generator, steps_per_epoch=None, epochs=1, verbose=1, callbacks=None,
        validation_data=None, validation_steps=None, validation_freq=1,
        class_weight=None, max_queue_size=10, workers=1, use_multiprocessing=False,
        shuffle=True, initial_epoch=0
    )
    

    您可以尝试设置use_multiprocessing=True 或设置workers 以使用最大数量的worker 来加快进程。 Here关于参数的一些细节

    如果这对你来说仍然太慢,恐怕你需要一个 GPU

    注意:您可以使用 Google Collab 并在 CPU/GPU/TPU 机器之间切换。

    【讨论】:

      猜你喜欢
      • 2018-02-05
      • 1970-01-01
      • 2023-03-27
      • 2013-03-10
      • 2014-06-07
      • 2016-05-31
      • 2011-07-07
      • 2015-08-23
      • 2012-07-05
      相关资源
      最近更新 更多