以A、B、C三類爲例,步驟如下:
1、 測試集共m個樣本,分別計算每個樣本與對比集的cos距離(對比集由A、B、C三類構成),根據結果構建概率矩陣P[m*3],再基於one-hot構建標籤矩陣L[m*3];
2、 P的每一列即各樣本屬於該列對應類別的概率,則可以計算每個類別的ROC曲線和auc值;
3、 計算整體ROC曲線和auc值
(1) 方法一:macro,對n條ROC曲線取平均,即可得到最終的ROC曲線
分析:該方法不考慮類別不均衡的影響;
(2) 方法二:micro,參考下面
計算總的TP rate和FP rate,然後計算ROC曲線和auc值。
(3) 方法三:weighted,通過每個類別的TP數所佔比例進行加權平均;
備註:目前sklearn.metrics.roc_auc_score(僅支持macro 和 weighted)