mas*_*som 4 python mse keras recurrent-neural-network
我想验证我的损失函数,因为我读到 keras 中的 mse 损失函数存在问题。考虑 keras 中的 lstm 模型将 3d 时间序列预测为多目标 (y1, y2, y3)。假设一批输出序列的形状为 (10, 31, 1),下面的损失函数是否会取预测输出和真实输出之间的平方差,然后取 310 个样本的平均值,从而得到单个损失值?如果 3 个输出连接为 (10, 31, 3),此操作将如何发生
def mse(y_true, y_pred):
return keras.backend.mean(keras.backend.square(y_pred - y_true), axis=1)
Run Code Online (Sandbox Code Playgroud)
如果你想得到单个损失值,则不需要设置axis。
import keras.backend as K
def mse(y_true, y_pred):
return K.mean(K.square(y_pred - y_true))
y_true = K.random_normal(shape=(10,31,3))
y_pred = K.random_normal(shape=(10,31,3))
loss = mse(y_true, y_pred)
print(K.eval(loss))
# print
2.0196152
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2000 次 |
| 最近记录: |