ข้อดีของ ROC curves


15

ข้อดีของ ROC curves คืออะไร?

ตัวอย่างเช่นฉันจำแนกภาพบางส่วนซึ่งเป็นปัญหาการจำแนกเลขฐานสอง ฉันแยกคุณสมบัติประมาณ 500 รายการและใช้อัลกอริทึมการเลือกคุณลักษณะเพื่อเลือกชุดคุณลักษณะแล้วฉันใช้ SVM สำหรับการจัดหมวดหมู่ ในกรณีนี้ฉันจะขอ ROC โค้งได้อย่างไร? ฉันควรเปลี่ยนค่าขีด จำกัด ของอัลกอริทึมการเลือกคุณลักษณะของฉันและรับความไวและความจำเพาะของเอาต์พุตเพื่อวาดเส้นโค้ง ROC หรือไม่

ในกรณีของฉันวัตถุประสงค์ของการสร้างเส้นโค้ง ROC คืออะไร


2
"การแนะนำการวิเคราะห์ ROC"โดย Tom Fawcett ช่วยให้ฉันเข้าใจเส้นโค้ง ROC ได้ดีขึ้น คุณอาจสนุกกับมันหากคุณกำลังมองหาวรรณกรรมเพิ่มเติมในหัวข้อ
Alexander

โอเค แต่คุณจะทำอย่างไรเพื่อเปรียบเทียบตัวแยกประเภทสองตัว หากพวกเขาใช้เกณฑ์เพื่อให้ความเฉพาะเจาะจงและความไวตรงกับอย่างใกล้ชิดมากฉันไม่คิดว่ามันเป็นเรื่องง่ายที่จะ ccompare โดยไม่ต้องดูที่บทกวีเพิ่มเติมใน ROC
Michael R. Chernick

มันไม่ค่อยเหมาะที่จะพัฒนาตัวแยกประเภทและข้อผิดพลาดการจัดหมวดหมู่เป็นกฎการให้คะแนนที่ไม่เหมาะสม มีวิธีกำลังแรงสูงหลายวิธีในการเปรียบเทียบคุณภาพของการทำนายที่แท้จริงและพวกมันใช้งานง่ายกว่าเส้นโค้ง ROC ดูตัวอย่างนี้
Frank Harrell

คำตอบ:


13

อัลกอริธึมการจำแนกเลขฐานสองจำนวนมากคำนวณการจัดประเภทของคะแนนการจำแนก (บางครั้ง แต่ไม่เสมอไปนี่คือความน่าจะเป็นที่จะอยู่ในสถานะเป้าหมาย) และพวกมันจำแนกตามว่าคะแนนนั้นสูงกว่าเกณฑ์ที่กำหนดหรือไม่ การดูเส้นโค้ง ROC ช่วยให้คุณเห็นการแลกเปลี่ยนระหว่างความไวและความเฉพาะเจาะจงสำหรับเกณฑ์ที่เป็นไปได้ทั้งหมดแทนที่จะเป็นเพียงค่าที่เลือกโดยเทคนิคการสร้างแบบจำลอง วัตถุประสงค์การจำแนกประเภทที่แตกต่างกันอาจทำให้จุดหนึ่งบนเส้นโค้งเหมาะสมกว่าสำหรับงานหนึ่งและอีกอันหนึ่งเหมาะสมกว่าสำหรับงานที่แตกต่างกันดังนั้นการดูที่เส้นโค้ง ROC เป็นวิธีการประเมินรูปแบบที่เป็นอิสระจากตัวเลือกของเกณฑ์


ขอบคุณสำหรับการตอบกลับ. มันมีประโยชน์จริงๆ จากเส้นโค้ง ROC นั้นมีการกำหนดเกณฑ์หรือไม่ และในกรณีของฉันฉันจะได้รับจุดในพื้นที่ ROC สำหรับความไว = 100% หรือความจำเพาะ = 100% เพราะฉันเปลี่ยนเกณฑ์ของอัลกอริทึมการเลือกคุณลักษณะ
user570593

1
เส้นโค้ง ROC แสดงให้คุณเห็นความไวและความเฉพาะเจาะจงตามเกณฑ์ที่เป็นไปได้ทั้งหมดดังนั้นหากคุณพบจุดที่แสดงถึงการแลกเปลี่ยนที่ถูกต้องคุณสามารถเลือกเกณฑ์ที่ตรงกับจุดนั้นบนเส้นโค้ง
ไมเคิลแมคโกแวน

มีวิธีอัตโนมัติในการเลือกการแลกเปลี่ยนที่ถูกต้องหรือฉันควรเลือกการแลกเปลี่ยนด้วยตัวเอง? และในกรณีของฉันฉันจะได้รับจุดในพื้นที่ ROC สำหรับความไว = 100% หรือความจำเพาะ = 100% เพราะฉันเปลี่ยนเกณฑ์ของอัลกอริทึมการเลือกคุณลักษณะ
user570593

2
หากคุณมีเกณฑ์ที่กำหนดไว้อย่างดี (เช่นการเพิ่มความแม่นยำสูงสุด) สิ่งนี้อาจเป็นไปโดยอัตโนมัติ แต่การแลกเปลี่ยนที่ดีสำหรับปัญหาหนึ่งอาจเป็นอีกปัญหาหนึ่ง
ไมเคิลแมคโกแวน

2
ความไวหรือความเฉพาะเจาะจง 100% สามารถรับได้เล็กน้อยโดยการตั้งค่าขีด จำกัด ของคุณที่ค่าต่ำสุดหรือค่าสูงสุด ... นั่นคือสิ่งที่คุณต้องการจริงหรือ
ไมเคิลแมคโกแวน

11

เส้นโค้งของ ROC ไม่ได้ให้ข้อมูลอะไรเลยใน 99% ของกรณีที่ฉันเคยเห็นในช่วงไม่กี่ปีที่ผ่านมา ดูเหมือนว่าพวกเขาจะคิดว่านักสถิติหลายคนและผู้ปฏิบัติงานการเรียนรู้ด้วยเครื่องจักรมีความรับผิดชอบมากขึ้น และตรวจสอบให้แน่ใจว่าปัญหาของคุณเป็นปัญหาการจำแนกและไม่ใช่ปัญหาการประเมินความเสี่ยง หัวใจสำคัญของปัญหากับเส้นโค้ง ROC คือพวกเขาเชิญผู้ใช้ให้ใช้จุดตัดสำหรับตัวแปรต่อเนื่องและพวกเขาใช้ความน่าจะเป็นย้อนหลังเช่นความน่าจะเป็นของเหตุการณ์ที่อยู่ในลำดับเวลาย้อนกลับ (ความไวและความจำเพาะ) เส้นโค้ง ROC ไม่สามารถใช้เพื่อค้นหาการแลกเปลี่ยนที่เหมาะสมยกเว้นในกรณีพิเศษที่ผู้ใช้กฎการตัดสินใจสละสิทธิ์การสูญเสีย (ต้นทุน; ยูทิลิตี้) ฟังก์ชั่นให้กับนักวิเคราะห์


ฉันไม่เห็นด้วยกับแฟรงค์ ฉันคิดว่าการใช้ AUC ของ ROC มักจะมีปัญหา แต่ในเชิงคุณภาพฉันคิดว่ามันจะมีประโยชน์ในการเปรียบเทียบอัลกอริทึม เพียงแค่ดูจากความเฉพาะเจาะจงและความอ่อนไหวที่จุดเดียวไม่ได้ให้ข้อมูล นอกจากนี้ฉันไม่แน่ใจว่าคำตอบของเขาตอบคำถามจริงๆเพราะ OP ต้องการทราบในกรณีของเขาว่าทำไมมันถึงตกอยู่ในคดีที่ไม่ได้ให้ข้อมูล 99% หรือ 1% ที่เป็น inforamtive
Michael R. Chernick

R2

R2

1
@ Frankankarrell แต่คุณจะเปรียบเทียบอัลกอริธึมสองวิธีอย่างไรเมื่อไม่ตรงกับความเจาะจงและความไวมาก
Michael R. Chernick

7
R2χ2R2

1

หลังจากสร้างเส้นโค้ง ROC แล้วสามารถคำนวณ AUC (พื้นที่ใต้เส้นโค้ง) ได้ AUC นั้นมีความแม่นยำของการทดสอบในหลาย ๆ เกณฑ์ AUC = 1 หมายถึงการทดสอบนั้นสมบูรณ์แบบ AUC = .5 หมายถึงมีโอกาสทำการจำแนกเลขฐานสอง

หากมีหลายรุ่น AUC จะให้การวัดเดี่ยวเพื่อเปรียบเทียบกับรุ่นต่างๆ มีการแลกเปลี่ยนกับมาตรการเดียวเสมอ แต่ AUC เป็นจุดเริ่มต้นที่ดี


1
YcDxy

0

AUC ไม่ได้เปรียบเทียบชั้นเรียนจริงเทียบกับที่คาดการณ์ไว้ มันไม่ได้ดูที่คลาสที่ถูกทำนาย แต่คะแนนการทำนายหรือความน่าจะเป็น คุณสามารถทำนายผลการเรียนได้โดยใช้การตัดคะแนนนี้ตัวอย่างทุกตัวอย่างที่ได้คะแนนต่ำกว่า 0.5 จะถูกจัดประเภทเป็นลบ แต่ร็อคมาก่อนที่จะเกิดขึ้น มันทำงานร่วมกับคะแนน / ระดับความน่าจะเป็น

ใช้คะแนนเหล่านี้และเรียงลำดับตัวอย่างทั้งหมดตามคะแนนนั้น ตอนนี้เมื่อใดก็ตามที่คุณพบตัวอย่างที่เป็นบวก ROC-curve จะเพิ่มขึ้น (ตามแนวแกน y) เมื่อใดก็ตามที่คุณพบตัวอย่างเชิงลบคุณจะย้ายไปทางขวา (ตามแนวแกน x) หากคะแนนนั้นแตกต่างกันสำหรับทั้งสองคลาสตัวอย่างบวกจะมาก่อน (ปกติ) นั่นหมายความว่าคุณทำตามขั้นตอนได้มากกว่าทางด้านขวา ยิ่งกว่านั้นรายการตัวอย่างเชิงลบจะมาดังนั้นคุณจึงย้ายไปทางซ้าย เมื่อคุณผ่านรายการตัวอย่างทั้งหมดคุณจะไปถึงพิกัด (1,1) ซึ่งสอดคล้องกับ 100% ของบวกและ 100% ของตัวอย่างลบ

หากคะแนนแยกค่าบวกออกจากตัวอย่างลบอย่างสมบูรณ์คุณจะเลื่อนจาก (x = 0, y = 0) ไปที่ (1,0) จากนั้นไปที่ (1, 1) ดังนั้นพื้นที่ใต้เส้นโค้งคือ 1

หากคะแนนของคุณมีการกระจายตัวแบบเดียวกันสำหรับตัวอย่างบวกและลบความน่าจะเป็นที่จะหาตัวอย่างบวกหรือลบในรายการที่เรียงลำดับมีค่าเท่ากันดังนั้นความน่าจะเป็นที่จะเลื่อนขึ้นหรือซ้ายใน ROC-curve มีค่าเท่ากัน นั่นคือสาเหตุที่คุณเคลื่อนที่ไปตามแนวทแยงมุมเนื่องจากคุณต้องเลื่อนไปทางซ้ายและขึ้นและไปทางซ้ายเรื่อย ๆ ... ซึ่งให้ค่า AROC ประมาณ 0.5

ในกรณีของชุดข้อมูลที่ไม่สมดุลขั้นตอนต่างกัน ดังนั้นคุณทำขั้นตอนเล็ก ๆ ทางซ้าย (ถ้าคุณมีตัวอย่างเชิงลบมากขึ้น) นั่นคือเหตุผลที่คะแนนมากหรือน้อยขึ้นอยู่กับความไม่สมดุล

ด้วยเส้นโค้ง ROC คุณสามารถเห็นภาพว่าตัวอย่างของคุณถูกแยกออกจากกันอย่างไรและพื้นที่ใต้เส้นโค้งอาจเป็นตัวชี้วัดที่ดีมากในการวัดประสิทธิภาพของอัลกอริทึมการจำแนกแบบไบนารีหรือตัวแปรใด ๆ ที่อาจใช้ในการแยกชั้นเรียน

ป้อนคำอธิบายรูปภาพที่นี่

รูปภาพแสดงการแจกแจงแบบเดียวกันกับขนาดตัวอย่างที่แตกต่างกัน พื้นที่สีดำแสดงตำแหน่งที่คาดว่า ROC-curves ของการสุ่มผสมของตัวอย่างบวกและลบจะถูกคาดหวัง


กราฟเหล่านี้ไม่ได้ให้ข้อมูลเชิงลึกและมีอัตราส่วนหมึกสูงต่อข้อมูล IMHO ติดกับคะแนนความแม่นยำที่เหมาะสม: fharrell.com/post/class-damage fharrell.com/post/addvalue
Frank Harrell

มีข้อมูลเพิ่มเติมในกราฟเหล่านี้มากกว่าคะแนนความถูกต้องมิติเดียว คะแนนเดียวกันอาจมาจากการแจกแจงที่แตกต่างกันมากมาย คุณมีการรับรู้ล่วงหน้าหรือไม่? คุณมีตัวอย่างบวกหลายคลาสที่มีพฤติกรรมแตกต่างกันหรือไม่? ผลลัพธ์ของคุณมีนัยสำคัญทางสถิติหรือไม่ คำถามทั้งหมดนั้นสามารถตอบได้อย่างชัดเจนโดยดูจากกราฟเหล่านั้นและไม่สามารถตอบด้วยคะแนนความแม่นยำเพียงอย่างเดียว
Sören

ฉันตั้งคำถามอย่างจริงจังว่าผู้บริโภคและนักวิเคราะห์จะได้รับข้อมูลเชิงลึกจากส่วนโค้งเหล่านี้ซึ่งอยู่ใกล้กับสัญชาตญาณโดยแสดงเส้นโค้งการปรับเทียบที่มีฮิสโตแกรมความละเอียดสูงแสดงค่าที่คาดการณ์ไว้ และแต่ละจุดบนกราฟ ROC นั้นเป็นคะแนนความแม่นยำที่ไม่เหมาะสม
Frank Harrell

ผู้เริ่มต้นมักจะมีเวลายากที่จะเข้าใจเส้นโค้งเหล่านี้ ดังนั้นฉันจึงไม่แนะนำให้แสดงต่อผู้บริโภคเพื่อโฆษณาผลิตภัณฑ์ของคุณ ฉันคิดว่าคุณต้องการบางสิ่งที่เรียบง่ายกว่า เส้นโค้งเป็นมากกว่าจุดแต่ละจุด
Sören
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.