Tensorflow:不同的提取带来不同的结果

时间:2017-01-18 09:49:25

标签: machine-learning tensorflow

我正在玩Tensorflow并且有一件事我似乎无法理解:fetches参数对Session.run()的作用。 来自doc

  

要获取操作的输出,请使用run()执行图形   调用Session对象并传入张量进行检索。

我所理解的是该参数用于从运行步骤中读取某些值。不过,我看到不同的fetches会带来不同的结果

....´
loss = tf.reduce_mean(
tf.nn.softmax_cross_entropy_with_logits(preactivations_output, tf_train_labels))

optimizer = tf.train.GradientDescentOptimizer(0.5).minimize(loss)
...
train_prediction = tf.nn.softmax(preactivations_output)
...
# This produces a model with 89% accuracy
_, l, predictions = session.run(
  [optimizer, loss, train_prediction], feed_dict=feed_dict)
# This produces a model with 10% accuracy
l, predictions = session.run(
  [loss, train_prediction], feed_dict=feed_dict)

所以现在我想知道fetches参数用于什么,因为它似乎影响了训练的运行方式。我没有从文档中真正理解它......

0 个答案:

没有答案