称重Keras的训练数据

时间:2018-02-17 18:27:47

标签: python keras keras-2

问题

我想用可变相关数据训练keras2神经网络(theano后端)。这意味着一些样本不如其他样本重要。他们对培训的影响要小于其他人。但是,我无法完全省略它们(我有一个时间序列进入Conv1D层)。

问题

我如何告诉keras在训练期间对某些训练数据样本的权重低于其他样本?

我正考虑定义一个以y_truey_predy_weight作为第三个参数的https://docs.gradle.org/current/userguide/signing_plugin.html。类似的东西:

def mean_squared_error_weighted(y_true, y_pred, y_weight):
    return y_weight * K.mean(K.square(y_pred - y_true), axis=-1)

但是我怎么能让keras知道第三个论点?

1 个答案:

答案 0 :(得分:3)

keras模型的fit函数接受一个可选参数sample_weight,它完全符合您的要求。更具体地说,来自keras文档:

  

sample_weight :训练样本的可选Numpy权重数组,用于加权损失函数(仅限训练期间)。