深度学习:原理简明教程10-深度学习:评估函数
欢迎转载,作者:Ling,注明出处:深度学习:原理简明教程10-深度学习:评估函数
评估函数(metrics):主要用于训练或者测试时,评估模型的好坏。
1)评估时机。正确做法应该在每个epoch结束后进行评估,比如precision,recall,F1这些值,而有些框架如keras是在每个mini-batch就进行评估,好消息是未来会引入global metrics,在每个epoch评估。
2)keras框架的评估函数不全,目前在改进,scikit learn的全。
常见的评估函数有:
1)和损失函数相同的函数:这部分函数在深度学习:原理简明教程09-深度学习:损失函数已经介绍过,这里不再详述:
mean_squared_error
mean_absolute_error
mean_absolute_percentage_error
mean_squared_logarithmic_error
squared_hinge
hinge
categorical_hinge
logcosh
binary_crossentropy
categorical_crossentropy
sparse_categorical_crossentropy
kullback_leibler_divergence
poisson
cosine_proximity
2)和损失函数不同的函数:
binary_accuracy
categorical_accuracy
sparse_categorical_accuracy
top_k_categorical_accuracy
sparse_top_k_categorical_accuracy
3)Global的metrics以后补:(等keras后续版本发布再补上)
实际上用得多的还有:
precision
recall
f-score
AUC
binary_accuracy:
公式:
categorical_accuracy:
公式:
特点:
输入的是one-hot
sparse_categorical_accuracy:
公式:
特点:
sparse主要指y非one-hot,是id
top_k_categorical_accuracy:
公式:
sparse_top_k_categorical_accuracy:
公式:
特点:
sparse主要指y非one-hot,是id
补充两个材料:可以用其补充keras metrics
1)https://github.com/fchollet/keras/issues/8607
2)http://scikit-learn.org/stable/modules/classes.html#module-sklearn.metrics
留言