卷积神经网络丢失

时间:2018-03-03 15:12:31

标签: tensorflow

计算损失函数时。我可以手动计算损失,如

Loss = tf.reduce_mean(tf.square(np.array(Prediction) - np.array(Y)))

然后使用Adam Optimizer优化此损失

1 个答案:

答案 0 :(得分:1)

没有。 张量流损失函数通常接受张量作为输入并且还输出张量。所以np.array()不起作用。

对于CNN,你通常会遇到诸如交叉熵,softmax corss-entropy,sigmoid cross-entropy等损失函数。这些函数已经内置在tf.losses模块中。所以你可以直接使用它们。 您尝试应用的损失函数看起来像均方损失。这也是在tf.losses中构建的。 tf.losses.mean_squared_error。

话虽如此,我还使用手工编码公式实现了一些损失函数,如交叉熵,如: -tf.reduce_mean(tf.reduce_sum(targets * logProb))。只要输入目标 logProb 计算为张量而不是numpy数组,这同样可以正常工作。