AUC-ROC อยู่ระหว่าง 0-0.5 หรือไม่


คำตอบ:


19

ตัวทำนายที่สมบูรณ์แบบให้คะแนน AUC-ROC ที่ 1 ซึ่งเป็นตัวทำนายที่ทำให้การเดาแบบสุ่มมีคะแนน AUC-ROC 0.5

หากคุณได้รับคะแนนเป็น 0 นั่นหมายความว่าตัวจําแนกไม่ถูกต้องสมบูรณ์มันเป็นการทำนายตัวเลือกที่ไม่ถูกต้อง 100% ของเวลา หากคุณเพิ่งเปลี่ยนการทำนายของตัวจําแนกนี้เป็นตัวเลือกที่ตรงกันข้ามจะสามารถทำนายได้อย่างสมบูรณ์และมีคะแนน AUC-ROC เท่ากับ 1

ดังนั้นในทางปฏิบัติหากคุณได้รับคะแนน AUC-ROC ระหว่าง 0 ถึง 0.5 คุณอาจมีข้อผิดพลาดในวิธีที่คุณระบุเป้าหมายตัวจําแนกของคุณหรือคุณอาจมีอัลกอริทึมการฝึกอบรมที่ไม่ดี หากคุณได้รับคะแนน 0.2 แสดงว่าข้อมูลมีข้อมูลเพียงพอที่จะได้รับคะแนน 0.8 แต่มีบางอย่างผิดพลาด


ฉันคิดว่าคำตอบนี้ข้ามความเป็นไปได้ที่แบบจำลองนั้นมีความเหมาะสมมากเกินไปตัวอย่างเช่นการได้รับ AUC ที่ 0.8 จากข้อมูลการฝึกอบรม แต่ AUC ที่ 0.35 จากข้อมูลโฮลด์
Sycorax พูดว่า Reinstate Monica

1
@Sycorax: อืมฉันสามารถดูว่า overfitting เห็นได้ชัดว่าสามารถขับ AUC ไปที่ระดับโอกาส (ถ้าคุณอยู่ห่างจากแบบจำลองที่แท้จริงที่การคาดการณ์ของคุณเป็นเพียงขยะ) แต่มันจะไปอย่างไร (อย่างมีนัยสำคัญ) ด้านล่างโอกาส ?
Ruben van Bergen

1
คุณจะมี AUC ต่ำกว่า 0.5 เมื่อใดก็ตามที่การจัดอันดับในบางชุดใกล้เคียงกับการย้อนหลังมากกว่าที่ถูกต้อง ไม่แตกต่างจากการให้ข้อมูลมากเกินไปในบริบทอื่น ๆ
Sycorax พูดว่า Reinstate Monica เมื่อ

14

พวกเขาสามารถทำได้หากระบบที่คุณกำลังวิเคราะห์ทำงานต่ำกว่าระดับโอกาส คุณสามารถสร้างลักษณนามได้ง่าย ๆ ด้วย 0 AUC โดยให้มันตอบตรงข้ามกับความจริงเสมอ

ในทางปฏิบัติแน่นอนคุณฝึกตัวจําแนกของคุณกับข้อมูลบางอย่างดังนั้นค่าที่น้อยกว่า 0.5 มากโดยทั่วไปจะบ่งบอกถึงข้อผิดพลาดในอัลกอริทึมฉลากข้อมูลหรือตัวเลือกข้อมูลการรถไฟ / การทดสอบ ตัวอย่างเช่นหากคุณเปลี่ยนป้ายชื่อคลาสในข้อมูลรถไฟของคุณโดยไม่ได้ตั้งใจ AUC ที่คุณคาดหวังจะเป็น 1 ลบด้วย "AUC" ที่แท้จริง "(รับป้ายกำกับที่ถูกต้อง) AUC อาจเป็น <0.5 หากคุณแบ่งข้อมูลของคุณออกเป็นส่วนย่อยของรถไฟและทดสอบด้วยวิธีที่รูปแบบที่จะจำแนกนั้นแตกต่างกันอย่างเป็นระบบ สิ่งนี้อาจเกิดขึ้น (ตัวอย่าง) ถ้ามีหนึ่งคลาสที่พบได้ทั่วไปในรถไฟเทียบกับชุดทดสอบหรือถ้ารูปแบบในแต่ละชุดมีการดักที่แตกต่างกันอย่างเป็นระบบที่คุณไม่ได้แก้ไข

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


1

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

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

นี่คือตัวอย่างการจำลอง โปรดสังเกตว่าตัวทำนายนั้นเป็นเพียงตัวแปรสุ่มที่ไม่มีความสัมพันธ์กับเป้าหมาย นอกจากนี้โปรดสังเกตว่า AUC เฉลี่ยอยู่ที่ประมาณ 0.3

library(MLmetrics)
aucs <- list()
for (sim in seq_len(100)){
  n <- 100
  df <- data.frame(x=rnorm(n),
               y=c(rep(0, n/2), rep(1, n/2)))

  predictions <- list()
  for(i in seq_len(n)){
    train <- df[-i,]
    test <- df[i,]

    glm_fit <- glm(y ~ x, family = 'binomial', data = train)
    predictions[[i]] <- predict(glm_fit, newdata = test, type = 'response')
  }
  predictions <- unlist(predictions)
  aucs[[sim]] <- MLmetrics::AUC(predictions, df$y)
}
aucs <- unlist(aucs)
plot(aucs); abline(h=mean(aucs), col='red')

ผล

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

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

นี่คือเอกสารสองสามฉบับที่สัมผัสกับปัญหานี้ แต่ฉันแน่ใจว่าคนอื่นทำได้เช่นกัน

Jamalabadi et al 2016 https://onlinelibrary.wiley.com/doi/full/10.1002/hbm.23140

Snoek et al 2019 https://www.ncbi.nlm.nih.gov/pubmed/30268846


นี่ควรเป็นคำตอบที่ยอมรับได้!
TDC
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.