如何为keras(深度学习库)编写分类精度损失函数?
How to write a categorization accuracy loss function for keras (deep learning library)?
如何为keras(深度学习库)编写分类精度损失函数?
分类准确率损失是预测错误的百分比,即#wrong/#data points。
是否可以为此编写自定义损失函数?
谢谢。
编辑
虽然 Keras 允许您使用自定义损失函数,但我不再相信使用准确性作为损失是有意义的。首先,网络的最后一层通常是 soft-max,因此您可以获得 class 概率的向量,而不是最有可能 class 的向量。其次,我担心由于精度不够平滑,梯度计算会出现问题。
旧 POST
Keras 为您提供了使用自定义损失函数的可能性。要获得精度损失,您可以从已经实现的 examples 中获取灵感。对于二进制 classification,我会建议以下实现
def mean_accuracy_error(y_true, y_pred):
return K.mean(K.abs(K.sign(y_true - y_pred)), axis=-1)
如何为keras(深度学习库)编写分类精度损失函数?
分类准确率损失是预测错误的百分比,即#wrong/#data points。
是否可以为此编写自定义损失函数?
谢谢。
编辑
虽然 Keras 允许您使用自定义损失函数,但我不再相信使用准确性作为损失是有意义的。首先,网络的最后一层通常是 soft-max,因此您可以获得 class 概率的向量,而不是最有可能 class 的向量。其次,我担心由于精度不够平滑,梯度计算会出现问题。
旧 POST
Keras 为您提供了使用自定义损失函数的可能性。要获得精度损失,您可以从已经实现的 examples 中获取灵感。对于二进制 classification,我会建议以下实现
def mean_accuracy_error(y_true, y_pred):
return K.mean(K.abs(K.sign(y_true - y_pred)), axis=-1)