AUPRC: ทำไม AUROC เพียงอย่างเดียวจึงไม่เพียงพอสำหรับข้อมูลที่ไม่สมดุล

บทนำ
ในการพัฒนาแบบจำลองพยากรณ์ทางคลินิก การประเมินสมรรถนะของแบบจำลองเป็นขั้นตอนสำคัญเพื่อพิจารณาว่าแบบจำลองนั้นมีประโยชน์ต่อการใช้งานจริงหรือไม่ ตัวชี้วัดที่นิยมใช้กันอย่างแพร่หลายคือ Area Under the Receiver Operating Characteristic Curve (AUROC) ซึ่งใช้ประเมินความสามารถในการจำแนกผู้ที่มีและไม่มีผลลัพธ์ อย่างไรก็ตาม ในกรณีที่ผลลัพธ์ที่สนใจเกิดขึ้นได้น้อยหรือเป็นเหตุการณ์หายาก AUROC อาจให้ภาพที่ดีเกินจริงเกี่ยวกับสมรรถนะของแบบจำลอง
ในสถานการณ์เช่นนี้ Area Under the Precision–Recall Curve (AUPRC) เป็นตัวชี้วัดที่เหมาะสมกว่า เพราะเน้นเฉพาะความสามารถของแบบจำลองในการระบุผู้ที่เกิดผลลัพธ์จริง หรือ positive class ดังนั้น AUPRC จึงมีความสำคัญอย่างยิ่งในข้อมูลที่มีความไม่สมดุลของผลลัพธ์ เช่น การพยากรณ์ภาวะแทรกซ้อนรุนแรงที่พบได้น้อยในห้องฉุกเฉินหรือหอผู้ป่วยวิกฤต

กรอบแนวคิดของ AUPRC
Precision–Recall Curve สร้างจากความสัมพันธ์ระหว่างตัวชี้วัด 2 ค่า ได้แก่
- Recall (Sensitivity) คือ สัดส่วนของผู้ที่มีผลลัพธ์จริงซึ่งแบบจำลองสามารถตรวจพบได้ถูกต้อง
- Precision (Positive Predictive Value) คือ สัดส่วนของผู้ที่แบบจำลองทำนายว่าเป็นบวกแล้วเป็นบวกจริง
AUPRC สรุปความสัมพันธ์ระหว่าง precision และ recall ตลอดทุกค่าของ threshold จึงสะท้อนความสามารถของแบบจำลองในการระบุผู้ป่วยกลุ่มที่เกิดเหตุการณ์ได้โดยตรง

ค่าพื้นฐานของ AUPRC
ลักษณะสำคัญของ AUPRC คือ ค่าพื้นฐานของมันไม่คงที่ แต่ขึ้นอยู่กับ ความชุกของผลลัพธ์ ในข้อมูล
ต่างจาก AUROC ซึ่งแบบจำลองที่ไม่มีความสามารถในการพยากรณ์จะมีค่าใกล้ 0.5 เสมอ แบบจำลองที่ไม่มีข้อมูลเชิงพยากรณ์ใน AUPRC จะมีค่าใกล้กับความชุกของผลลัพธ์นั้นเอง ดังนั้น การตีความ AUPRC จึงต้องพิจารณาร่วมกับ prevalence เสมอ

เหตุใด AUROC จึงอาจทำให้เข้าใจผิดในข้อมูลที่ไม่สมดุล
พิจารณาตัวอย่างทางคลินิกดังนี้
สถานการณ์ทางคลินิก
มีการพัฒนาแบบจำลองเพื่อพยากรณ์ภาวะ septic shock ในห้องฉุกเฉิน
- จำนวนผู้ป่วยทั้งหมด 10,000 ราย
- ผู้ป่วยที่เกิด septic shock จริง 100 ราย
- ความชุกของผลลัพธ์เท่ากับ 1%
นี่เป็นตัวอย่างของข้อมูลที่มีความไม่สมดุลอย่างชัดเจน เพราะผู้ที่ไม่เกิดเหตุการณ์มีจำนวนมากกว่ามาก
ตัวอย่างผลการประเมินแบบจำลอง
แบบจำลอง A
- AUROC = 0.92
- AUPRC = 0.08
เมื่อดูเพียง AUROC อาจสรุปได้ว่าแบบจำลองนี้มีสมรรถนะดีมาก เพราะสามารถแยกผู้ที่เกิดและไม่เกิดผลลัพธ์ได้ดี อย่างไรก็ตาม ข้อสรุปนี้อาจทำให้เข้าใจผิด
ที่มาของความคลาดเคลื่อนในการตีความ
AUROC ประเมินความสามารถในการจำแนกระหว่างผู้ที่เกิดและไม่เกิดผลลัพธ์โดยรวม ในข้อมูลนี้ ผู้ป่วยส่วนใหญ่ 9,900 รายไม่ได้เกิด septic shock ดังนั้น แบบจำลองจะได้รับ “เครดิต” มากจากการจำแนกผู้ที่ไม่เกิดเหตุการณ์ได้ถูกต้อง แม้ว่าจะยังตรวจจับผู้ป่วยที่เกิดเหตุการณ์จริงได้ไม่ดีนักก็ตาม
แต่ในทางคลินิก สิ่งที่สำคัญกว่าคือการระบุผู้ป่วย 100 รายที่เกิด septic shock ให้ได้อย่างแม่นยำ

ตัวอย่างการทำนายในระดับ threshold
สมมติว่าเมื่อกำหนด threshold หนึ่ง แบบจำลอง A ทำนายว่ามีผู้ป่วยความเสี่ยงสูง 200 ราย โดยในจำนวนนี้
- เป็นผู้ป่วยที่เกิด septic shock จริง 20 ราย
- เป็นผลบวกลวง 180 ราย
จึงคำนวณได้ว่า
ผลลัพธ์นี้หมายความว่าแบบจำลองตรวจพบผู้ป่วยจริงได้เพียง 20% และในบรรดาผู้ที่ถูกทำนายว่าเสี่ยงสูง มีเพียง 10% เท่านั้นที่เป็นผู้ป่วยจริง
ในเชิงคลินิก แบบจำลองลักษณะนี้จะก่อให้เกิดสัญญาณเตือนเกินความจำเป็นจำนวนมาก ขณะเดียวกันก็พลาดผู้ป่วยจริงส่วนใหญ่

AUPRC ช่วยสะท้อนข้อจำกัดนี้อย่างไร
ในข้อมูลนี้ ค่าพื้นฐานของ AUPRC เท่ากับความชุกของผลลัพธ์ คือ
ส่วนค่าที่ได้จากแบบจำลอง A คือ
แม้ค่า 0.08 จะสูงกว่าค่าพื้นฐาน 0.01 แต่ยังถือว่าต่ำในเชิงคลินิก เพราะแสดงว่าแบบจำลองยังมีข้อจำกัดมากในการระบุผู้ป่วยที่เกิดเหตุการณ์จริงอย่างแม่นยำ
กล่าวอีกนัยหนึ่ง แบบจำลองนี้ดูดีเมื่อประเมินด้วย AUROC แต่เมื่อพิจารณาด้วย AUPRC จะพบว่าความสามารถในการใช้จริงเพื่อค้นหาผู้ป่วยกลุ่มเสี่ยงยังไม่ดีพอ
ตัวอย่างแบบจำลองที่ดีขึ้น
แบบจำลอง B
- AUROC = 0.91
- AUPRC = 0.40
แม้ค่า AUROC จะใกล้เคียงกับแบบจำลอง A แต่ AUPRC สูงขึ้นอย่างชัดเจน
เมื่อเทียบกับค่าพื้นฐาน 0.01 ค่า AUPRC เท่ากับ 0.40 หมายถึงแบบจำลองมีสมรรถนะดีกว่าการเดาสุ่มประมาณ 40 เท่า สะท้อนว่าแบบจำลองสามารถระบุผู้ป่วยที่เกิดเหตุการณ์จริงได้ดีขึ้น และลดผลบวกลวงลงได้มากกว่าเดิม
ในเชิงคลินิก แบบจำลอง B จึงมีประโยชน์มากกว่า แม้ค่า AUROC จะไม่ได้แตกต่างจากแบบจำลอง A มากนัก
ความแตกต่างระหว่าง AUROC และ AUPRC
AUROC และ AUPRC ตอบคำถามคนละแบบ
- AUROC ตอบว่า แบบจำลองสามารถแยกผู้ที่มีและไม่มีผลลัพธ์ออกจากกันได้ดีเพียงใด
- AUPRC ตอบว่า เมื่อแบบจำลองทำนายว่าผู้ป่วยเป็นกลุ่มเสี่ยงสูง คำทำนายนั้นเชื่อถือได้มากเพียงใด และสามารถตรวจพบผู้ป่วยจริงได้มากน้อยเพียงใด
ในข้อมูลที่ผลลัพธ์เกิดได้น้อย AUPRC จึงสะท้อนประโยชน์ทางคลินิกได้ตรงกว่า

ข้อเสนอแนะในการรายงานผล
เมื่อรายงาน AUPRC ในงานวิจัย ควรรายงานองค์ประกอบต่อไปนี้ร่วมกัน
- ค่า AUPRC ที่ได้
- ความชุกของผลลัพธ์ เพื่อใช้เป็นค่าพื้นฐานในการตีความ
- ช่วงความเชื่อมั่น หากมี
- ค่าที่ผ่านการ internal validation เช่น optimism-corrected AUPRC จาก bootstrapping หรือ cross-validation
การรายงานองค์ประกอบเหล่านี้จะช่วยให้การตีความมีความโปร่งใสและน่าเชื่อถือมากขึ้น
บทสรุป
AUPRC เป็นตัวชี้วัดที่มีความสำคัญมากในการประเมินแบบจำลองพยากรณ์เมื่อข้อมูลมีความไม่สมดุลของผลลัพธ์ โดยเฉพาะในกรณีที่เหตุการณ์ที่สนใจเกิดขึ้นได้น้อย แม้ AUROC จะยังมีประโยชน์ในการประเมิน discrimination โดยรวม แต่ก็อาจให้ภาพที่ดีเกินจริงได้ในข้อมูลลักษณะนี้
ในทางตรงกันข้าม AUPRC ช่วยสะท้อนโดยตรงว่าแบบจำลองสามารถระบุผู้ป่วยที่เกิดเหตุการณ์จริงได้ดีเพียงใด ดังนั้น สำหรับผลลัพธ์หายาก การตีความสมรรถนะของแบบจำลองควรพิจารณา AUPRC ร่วมกับ AUROC และเปรียบเทียบกับค่าความชุกของผลลัพธ์เสมอ
ประเด็นสำคัญ
- AUPRC เน้นการประเมินสมรรถนะในกลุ่มที่เกิดผลลัพธ์
- ค่าพื้นฐานของ AUPRC เท่ากับความชุกของผลลัพธ์
- AUROC อาจดูสูงแม้แบบจำลองยังระบุผู้ป่วยจริงได้ไม่ดี
- AUPRC ต่ำแม้ AUROC สูง เป็นสัญญาณว่าแบบจำลองอาจยังใช้จริงได้จำกัด
- ในข้อมูลที่ผลลัพธ์หายาก ควรพิจารณา AUPRC ควบคู่กับ AUROC เสมอ