fob*_*122 5 python machine-learning keras
我想创建一个自定义丢失函数,其权重项根据我所处的时代而更新.
例如:假设我有一个具有beta权重的损失函数,其中beta在前20个时期内增加...
def custom_loss(x, x_pred):
loss1 = objectives.binary_crossentropy(x, x_pred)
loss2 = objectives.mse(x, x_pred)
return (beta*current_epoch/20) * loss1 + loss2
Run Code Online (Sandbox Code Playgroud)
我怎么能在keras损失函数中实现这样的东西?
小智 0
查看他们的文档,他们提到您可以使用 theano/Tf 符号函数为每个数据点返回一个标量。所以你可以做这样的事情
loss = tf.contrib.losses.softmax_cross_entropy(x, x_pred) *
(beta * current_epoch / 20 ) +
tf.contrib.losses.mean_squared_error
Run Code Online (Sandbox Code Playgroud)
您必须将 x 和 x_pred 作为 x 和 x_pred 作为 tf.placeholders 传递我认为对于模型创建,您可以使用 keras 但您必须再次使用 sess.run() 运行计算图
| 归档时间: |
|
| 查看次数: |
621 次 |
| 最近记录: |