我正在通过Keras上的重建来构建CNN-LSTM编码器 - 解码器异常检测器,遵循Malhotra et al的方向,但是与CNN编码器不同,我仍然打算使用损耗(物镜) )函数定义为:
其中X是L步的时间序列的样本,并且x(i)是第i个实矢量,x'(i)是重构的。总训练集是s_N。
我做了损失功能,但我觉得它表现不佳,所以我呼吁你和你的知识,看看这是我的错误来源还是我可能需要在其他地方找到:
def mirror_loss(y_true,y_pred):
diff = tf.square(tf.norm(tf.substract(y_true, y_pred), axis = 1))
return K.sum(diff, axis = -1)
我不得不同时使用tensorflow和keras.backend,因为我无法在keras.backend上找到“规范”。