Ketika melakukan validasi silang 5 kali lipat (misalnya), biasanya menghitung kurva ROC terpisah untuk masing-masing dari 5 lipatan dan sering kali kurva ROC rata-rata dengan std. dev. ditampilkan sebagai ketebalan kurva.
Namun, untuk LOO cross-validation, di mana hanya ada satu titik data pengujian di setiap lipatan, tampaknya tidak masuk akal untuk menghitung "kurva" ROC untuk titik data tunggal ini.
Saya telah mengambil semua titik data pengujian saya (bersama dengan nilai-p yang dihitung secara terpisah) dan menggabungkannya ke dalam satu set besar untuk menghitung satu kurva ROC, tetapi apakah ini hal yang secara statistik halal untuk dilakukan?
Apa cara yang tepat untuk menerapkan analisis ROC ketika jumlah titik data dalam setiap lipatan adalah satu (seperti dalam kasus validasi silang LOO)?
sumber
Jawaban:
Jika classifier menampilkan probabilitas, maka menggabungkan semua output titik uji untuk kurva ROC tunggal adalah tepat. Jika tidak, maka skala output dari classifier dengan cara yang akan membuatnya langsung sebanding di seluruh classifier. Misalnya, Anda menggunakan Analisis Diskriminan Linier. Latih classifier dan kemudian letakkan data pelatihan melalui classifier. Pelajari dua bobot: parameter skala (standar deviasi dari output classifier, setelah mengurangkan rata-rata kelas), dan parameter shift (rata-rata dari kelas pertama). Gunakan parameter ini untuk menormalkan output mentah dari setiap classifier LDA melaluiσ μ r n=(r−μ)/σ , dan kemudian Anda bisa membuat kurva ROC dari himpunan output yang dinormalisasi. Ini memiliki peringatan bahwa Anda memperkirakan lebih banyak parameter, dan dengan demikian hasilnya mungkin sedikit menyimpang daripada jika Anda membuat kurva ROC berdasarkan pada set tes terpisah.
Jika tidak mungkin untuk menormalkan output classifier atau mengubahnya menjadi probabilitas, maka analisis ROC berdasarkan LOO-CV tidak tepat.
sumber