Python Tensorflow优化器-传递到最小化()的多个损失值?

Python Tensorflow优化器-传递到最小化()的多个损失值?,python,tensorflow,neural-network,gradient-descent,Python,Tensorflow,Neural Network,Gradient Descent,我第一次在MNIST数据集上使用Tensorflow时,遇到了一个非常简单的错误,在将错误值传递给优化器之前,我忘记了获取错误值的平均值 换句话说,不是 loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=y, labels=y_)) 我不小心用了 loss = tf.nn.softmax_cross_entropy_with_logits(logits=y, labels=y_) 然而,在训练网络时,不取

我第一次在MNIST数据集上使用Tensorflow时,遇到了一个非常简单的错误,在将错误值传递给优化器之前,我忘记了获取错误值的平均值

换句话说,不是

loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(logits=y, labels=y_))
我不小心用了

loss = tf.nn.softmax_cross_entropy_with_logits(logits=y, labels=y_)

然而,在训练网络时,不取错误值的平均值或总和不会引发错误。这让我思考:是否真的有人需要将多个损失值传递给优化器?当我将一个大小不为[1]的张量传入minimize()时发生了什么?

它们正在相加。这是使用反向模式AD进行区分的TensorFlow的副产品,它要求损耗为标量

,因此如果传递张量,基本上就是最小化张量中所有值的总和?;;;;;;;;;;;;;;;;;;;;对