วิธีคำนวณความแม่นยำที่สมดุลใน python โดยใช้ sklearn
ความแม่นยำที่สมดุล เป็นตัวชี้วัดที่เราสามารถใช้เพื่อประเมินประสิทธิภาพของ แบบจำลองการจำแนกประเภท
มีการคำนวณดังนี้:
ความแม่นยำที่สมดุล = (ความไว + ความเฉพาะเจาะจง) / 2
ทอง:
- ความไว : “อัตราบวกที่แท้จริง” – เปอร์เซ็นต์ของกรณีและปัญหาเชิงบวกที่แบบจำลองสามารถตรวจจับได้
- ความจำเพาะ : “อัตราเชิงลบที่แท้จริง” – เปอร์เซ็นต์ของกรณีและปัญหาเชิงลบที่แบบจำลองสามารถตรวจพบได้
หน่วยวัดนี้มีประโยชน์อย่างยิ่งเมื่อทั้งสองคลาสไม่สมดุล กล่าวคือ คลาสหนึ่งปรากฏมากกว่าคลาสอื่นมาก
ตัวอย่างเช่น สมมติว่านักวิเคราะห์กีฬาใช้ แบบจำลองการถดถอยลอจิสติกส์ เพื่อคาดการณ์ว่าผู้เล่นบาสเกตบอลระดับวิทยาลัยจำนวน 400 คนจะถูกคัดเลือกเข้าสู่ NBA หรือไม่
เมทริกซ์ความสับสนต่อไปนี้สรุปการคาดการณ์ที่ทำโดยแบบจำลอง:

ในการคำนวณความแม่นยำที่สมดุลของแบบจำลอง เราจะคำนวณความไวและความจำเพาะก่อน:
- ความไว : “อัตราบวกที่แท้จริง” = 15 / (15 + 5) = 0.75
- ความจำเพาะ : “อัตราติดลบที่แท้จริง” = 375 / (375 + 5) = 0.9868
จากนั้นเราสามารถคำนวณความแม่นยำที่สมดุลได้ดังนี้:
- ความแม่นยำที่สมดุล = (ความไว + ความเฉพาะเจาะจง) / 2
- ความแม่นยำที่สมดุล = (0.75 + 9868) / 2
- ความแม่นยำที่สมดุล = 0.8684
ความแม่นยำที่สมดุลของแบบจำลองกลายเป็น 0.8684 .
ตัวอย่างต่อไปนี้แสดงวิธีคำนวณความแม่นยำที่สมดุลสำหรับสถานการณ์เฉพาะนี้โดยใช้ฟังก์ชัน Balanced_accuracy_score() จากไลบรารี sklearn ใน Python
ตัวอย่าง: การคำนวณความแม่นยำที่สมดุลใน Python
รหัสต่อไปนี้แสดงวิธีการกำหนดอาร์เรย์ของคลาสที่คาดการณ์และอาร์เรย์ของคลาสจริง จากนั้นคำนวณความแม่นยำที่สมดุลของโมเดลใน Python:
import numpy as np from sklearn. metrics import balanced_accuracy_score #define array of actual classes actual = np. repeat ([1, 0], repeats=[20, 380]) #define array of predicted classes pred = np. repeat ([1, 0, 1, 0], repeats=[15, 5, 5, 375]) #calculate balanced accuracy score balanced_accuracy_score(actual, pred) 0.868421052631579
ความแม่นยำที่สมดุลคือ 0.8684 ซึ่งตรงกับค่าที่เราคำนวณด้วยตนเองก่อนหน้านี้
หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มสำหรับฟังก์ชัน Balanced_accuracy_score() ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
ข้อมูลเบื้องต้นเกี่ยวกับความแม่นยำที่สมดุล
วิธีการดำเนินการถดถอยโลจิสติกใน Python
วิธีคำนวณคะแนน F1 ใน Python