Average Precision (AP) เป็นพื้นที่ภายใต้ Precision-Recall Curve (AUC ของ PR-curve) หรือไม่
แก้ไข:
นี่คือความคิดเห็นเกี่ยวกับความแตกต่างใน PR AUC และ AP
AUC นั้นได้มาจากการประมาณค่าความแม่นยำสี่เหลี่ยมคางหมู อีกทางเลือกหนึ่งและมักจะเทียบเท่ากับตัวชี้วัดคือ Average Precision (AP) ซึ่งส่งคืนเป็น info.ap นี่คือค่าเฉลี่ยของความแม่นยำที่ได้รับทุกครั้งที่มีการเรียกคืนตัวอย่างบวกใหม่ มันเป็นเช่นเดียวกับ AUC หากความแม่นยำถูกแก้ไขโดยส่วนคงที่และเป็นคำจำกัดความที่ใช้โดย TREC บ่อยที่สุด
http://www.vlfeat.org/overview/plots-rank.html
นอกจากนี้ผลลัพธ์ aucและaverage_precision_scoreไม่เหมือนกันใน scikit-Learn นี่เป็นเรื่องแปลกเพราะในเอกสารที่เรามี:
คำนวณความแม่นยำเฉลี่ย (AP) จากคะแนนการทำนายคะแนนนี้สอดคล้องกับพื้นที่ใต้กราฟความแม่นยำในการจำ
นี่คือรหัส:
# 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')
สำหรับ classifer ของฉันฉันมีสิ่งที่ชอบ:
Area Under PR Curve(AP): 0.65
AP 0.676101781304
AP 0.676101781304
AP 0.676101781304
AP 0.676101781304