【发布时间】:2021-02-02 14:59:49
【问题描述】:
我有一个模型,它的输出层是Dense(2),所以我的输出是一个包含 2 个浮点数的列表。
我在Keras documentation上找到了一个类似的例子
>>> y_true = [[0., 1.], [0., 0.]]
>>> y_pred = [[1., 1.], [1., 0.]]
>>> # Using 'auto'/'sum_over_batch_size' reduction type.
>>> mse = tf.keras.losses.MeanSquaredError()
>>> mse(y_true, y_pred).numpy()
0.5
根据示例的输出,我认为它会像这样计算 MSE
first_MSE = mse(y_true[0], y_pred[0])
second_MSE = mse(y_true[1], y_pred[1])
mse = (first_MSE + second_MSE) / 2
按照上面的例子,我得到 0.5。幕后真的是这样吗?
【问题讨论】:
-
拥有
Dense(2)并不意味着你有两个输出。您有一个形状为(2,)的输出 -
@Frightera 你说得对,我改了。