最小化(成本)操作需要很长时间

我有以下代码来计算tensorflow中LSTM的成本。 当我执行代码时,优化器步骤需要花费大量时间,大约25分钟。

cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=pred, labels=y_class))
optimizer = tf.train.RMSPropOptimizer(learning_rate=lr).minimize(cost)

为什么会发生? 这是否取决于我的权重,偏差,LSTM中隐藏层的数量? 我正在GTX 840M上训练网络


GPU中的RNN速度较慢是很正常的。 根据这里给出的答案(https://datascience.stackexchange.com/questions/19220/choosing-between-cpu-and-gpu-for-training-a-neural-network)有时它比CPU更差取决于你的GPU模型。

RNN训练时间取决于权重参数的数量(取决于输入和隐藏单元的数量)。 因此,如果可能的话,你可以尝试减少这些数字。

此外,正如这个答案(如何加速tensorflow的训练速度?)所建议的,

  • 用不同的批量大小培训。
  • 使用采样的softmax而不是常规的softmax。
  • 此外,您可以阅读百度关于优化RNN性能的文章(http://svail.github.io/rnn_perf/),以便您更好地理解。

    希望这可以帮助。

    链接地址: http://www.djcxy.com/p/5513.html

    上一篇: minimize(cost) operation takes a lot of time

    下一篇: TensorFlow: Neural Network accuracy always 100% on train and test sets