【问题标题】:Custom Keras/TensorFlow loss function penalising output change自定义 Keras/TensorFlow 损失函数惩罚输出变化
【发布时间】:2020-09-01 20:49:08
【问题描述】:

我的目标是时间序列,我正在寻找一个成本函数来惩罚预测的变化,因此对于 N 的批量大小和具有 k 的模型输出,在损失函数中 y_pred 将是 N x k

所以我正在寻找一种在损失函数中引入惩罚的方法,例如:

K.sum(K.abs(np.diff(y_pred)) * alpha)

其中 alpha 是自定义输入 1 x k 每个目标每次更改的成本。我正在寻找一种使用Keras.backend 进行这种np.diff 的方法,这可能吗?或者也许有一种方法可以将这些张量转换为np.arrays,做我所有的恶作剧然后再回到张量?

【问题讨论】:

    标签: python numpy tensorflow keras neural-network


    【解决方案1】:

    你可以试试这个:

    y_pred[:,1:] - y_pred[:,:-1]

    numpy 相当于 diff,axis = 1,在损失函数中有效。

    【讨论】:

      猜你喜欢
      • 2021-01-14
      • 2020-11-14
      • 2019-03-12
      • 1970-01-01
      • 2018-10-28
      • 2017-12-29
      • 2020-07-18
      • 2020-10-21
      • 1970-01-01
      相关资源
      最近更新 更多