根据CPU上的批量大小,哈希桶大小,内存等调整Tensorflow Estimators?

问题描述 投票:0回答:1

我们正在测试各种估计器,例如LinearEstimator,DNNClassifier等。现在我们仅限于使用CPU进行培训,我们正在测试参数和杠杆,例如

  • CPU:8~32 cpu
  • 内存:16~48 GB
  • 批/缓冲区大小(dataset.batch(n)):n = 128~512
  • 哈希bucket_size:10,000~500,000
  • 线程数:Tensorflow默认值,应为逻辑核心数
  • 优化器:GradientDescent,FtrlOptimizer

结果:每秒全局步数* batch_size大约20~50

因此,我们通过Tensorboard每秒的全局步长* bucket_size大约20~50,并且增加的CPU和内存有其限制。

无论Optimizer及其配置如何,我们都会看到类似的结果。

我们做错了什么,还有其他我们可以使用的杠杆吗?您可以优化模型训练方法的数量是否存在限制,我们是否应该继续使用GPU并利用其矩阵乘法效率?

tensorflow tensorboard tensorflow-estimator
1个回答
0
投票

您可以尝试使用Dataset API优化输入管道。考虑将您的数据转换为tfrecords,它可以带来实质性的改进。如果您有多个CPU,则可以设置群集。但这一切都在很大程度上取决于你拥有的数据。看看吧

https://www.tensorflow.org/guide/performance/datasets

https://www.tensorflow.org/guide/performance/overview

© www.soinside.com 2019 - 2024. All rights reserved.