加权准确率WA,未加权平均召回率UAR和未加权UF1
1.加权准确率WA,未加权平均召回率UAR和未加权UF1
from sklearn.metrics import classification_report
from sklearn.metrics import precision_recall_curve, average_precision_score,roc_curve, auc, precision_score, recall_score, f1_score, confusion_matrix, accuracy_score
import torch
from torchmetrics import MetricTracker, F1Score, Accuracy, Recall, Precision, Specificity, ConfusionMatrix
import warnings
warnings.filterwarnings("ignore")
pred_list = [2, 0, 4, 1, 4, 2, 4, 2, 2, 0, 4, 1, 4, 2, 2, 0, 4, 1, 4, 2, 4, 2]
target_list = [1, 1, 4, 1, 3, 1, 2, 1, 1, 1, 4, 1, 3, 1, 1, 1, 4, 1, 3, 1, 2, 1]
print(classification_report(target_list, pred_list))
test_acc_en = Accuracy(task="multiclass",num_classes=5, threshold=1. / 5, average="weighted")
test_rcl_en = Recall(task="multiclass",num_classes=5, threshold=1. / 5, average="macro")
test_f1_en = F1Score(task="multiclass", num_classes=5, threshold=1. / 5, average="macro")
preds = torch.tensor(pred_list)
target = torch.tensor(target_list)
print("sklearn vs torchmetrics: ")
print("Accuracy-W_ACC")
print(accuracy_score(y_true=target_list, y_pred=pred_list))
print(test_acc_en(preds, target))