Saya mencoba menilai kinerja algoritma klasifikasi pembelajaran mesin yang diawasi. Pengamatan jatuh ke dalam kelas nominal (2 untuk saat ini, namun saya ingin menggeneralisasi ini ke masalah multi-kelas), yang diambil dari populasi 99 subjek.
Salah satu pertanyaan yang ingin saya jawab adalah, jika algoritme menunjukkan perbedaan signifikan dalam akurasi klasifikasi antara kelas input. Untuk kasus klasifikasi biner saya membandingkan akurasi rata-rata antara kelas-kelas di seluruh mata pelajaran menggunakan uji Wilcoxon berpasangan (karena distribusi yang mendasari adalah tidak normal). Untuk menggeneralisasi prosedur ini ke masalah multi-kelas saya berniat untuk menggunakan tes Friedman .
Namun, nilai p yang diperoleh oleh kedua prosedur dalam kasus biner IV sangat bervariasi, dengan uji Wilcoxon menghasilkan p < .001
sedangkan p = .25
untuk uji Friedman. Ini membuat saya percaya bahwa saya memiliki kesalahpahaman mendasar tentang struktur tes Friedman.
Apakah tidak tepat untuk menggunakan uji Friedman dalam kasus ini untuk membandingkan hasil pengukuran akurasi berulang di semua mata pelajaran?
Kode R saya untuk mendapatkan hasil tersebut ( subject
adalah pengidentifikasi subjek, acc
ketepatan DV dan expected
kelas pengamatan IV):
> head(subject.accuracy, n=10)
subject expected acc
1 10 none 0.97826087
2 10 high 0.55319149
3 101 none 1.00000000
4 101 high 0.68085106
5 103 none 0.97826087
6 103 high 1.00000000
7 104 none 1.00000000
8 104 high 0.08510638
9 105 none 0.95121951
10 105 high 1.00000000
> ddply(subject.accuracy, .(expected), summarise, mean.acc = mean(acc), se.acc = sd(acc)/sqrt(length(acc)))
expected mean.acc se.acc
1 none 0.9750619 0.00317064
2 high 0.7571259 0.03491149
> wilcox.test(acc ~ expected, subject.accuracy, paired=T)
Wilcoxon signed rank test with continuity correction
data: acc by expected
V = 3125.5, p-value = 0.0003101
alternative hypothesis: true location shift is not equal to 0
> friedman.test(acc ~ expected | subject, subject.accuracy)
Friedman rank sum test
data: acc and expected and subject
Friedman chi-squared = 1.3011, df = 1, p-value = 0.254
wilcox.test
melakukan tes peringkat yang ditandatangani membandingkan keakuratan dalam dua kondisi, karena Anda tidak pernah memberi tahu variabel pasangan. Paling tidak ini adalah cara yang tidak aman untuk menjalankan tes, karena ini bergantung pada urutan baris dalam data input.