多标签模型评价方法

每一个事物可能对应多个标签,例如一个人的身份可以是学生、老师、歌手等多重身份。

1、基于相似度的评价指标

1.1 hamming_loss

metrics.hamming_loss(np.array([[0, 1], [1, 1]]), np.zeros((2, 2)))

1.2 jaccard_similarity_score

metrics.jaccard_similarity_score(np.array([[0, 1], [1, 1]]), np.ones((2, 2)))

2、基于排序的评价指标(ranking metrics)

2.1 Coverage error

真实label的二分类指示矩阵为
在这里插入图片描述
每个label相关的分值为
在这里插入图片描述
Coverage的定义为
在这里插入图片描述
在这里插入图片描述 表示概率大于fij的元素的个数。
y_true = np.array([[1, 0, 0], [0, 0, 1]])
y_score = np.array([[0.75, 0.5, 1], [1, 0.2, 0.1]])
metrics.coverage_error(y_true, y_score)

2.2 Label ranking average precision

在这里插入图片描述
在这里插入图片描述 为0范数,在这里插入图片描述表示向量中非0元素的个数。
metrics.label_ranking_average_precision_score(y_true, y_score)

2.3 Ranking loss

正确类别的得分小于错误类别的损失。
在这里插入图片描述
metrics.label_ranking_loss(y_true, y_score)

你可能感兴趣的:(模型评估与模型选择)