Độ chính xác trung bình (AP) có nằm dưới Đường cong chính xác (AUC của đường cong PR) không?
CHỈNH SỬA:
đây là một số nhận xét về sự khác biệt trong PR AUC và AP.
AUC thu được bằng phép nội suy hình thang của độ chính xác. Một số liệu thay thế và thường gần như tương đương là Độ chính xác trung bình (AP), được trả về dưới dạng info.ap. Đây là trung bình của độ chính xác thu được mỗi khi thu hồi mẫu dương tính mới. Nó giống như AUC nếu độ chính xác được nội suy bởi các phân đoạn không đổi và là định nghĩa được TREC sử dụng thường xuyên nhất.
http://www.vlfeat.org/overview/plots-rank.html
Hơn nữa, kết quả auc và Average_precision_score không giống nhau trong scikit-learn. Điều này là lạ, bởi vì trong tài liệu chúng tôi có:
Tính độ chính xác trung bình (AP) từ điểm dự đoán Điểm này tương ứng với khu vực dưới đường cong thu hồi chính xác.
đây là mã:
# Compute Precision-Recall and plot curve
precision, recall, thresholds = precision_recall_curve(y_test, clf.predict_proba(X_test)[:,1])
area = auc(recall, precision)
print "Area Under PR Curve(AP): %0.2f" % area #should be same as AP?
print 'AP', average_precision_score(y_test, y_pred, average='weighted')
print 'AP', average_precision_score(y_test, y_pred, average='macro')
print 'AP', average_precision_score(y_test, y_pred, average='micro')
print 'AP', average_precision_score(y_test, y_pred, average='samples')
Đối với lớp của tôi, tôi có một cái gì đó như:
Area Under PR Curve(AP): 0.65
AP 0.676101781304
AP 0.676101781304
AP 0.676101781304
AP 0.676101781304