Membedakan antara dua kelompok dalam statistik dan pembelajaran mesin: uji hipotesis vs klasifikasi vs pengelompokan


29

Asumsikan saya memiliki dua kelompok data, berlabel A dan B (masing-masing berisi misalnya 200 sampel dan 1 fitur), dan saya ingin tahu apakah mereka berbeda. Saya bisa:

  • a) melakukan uji statistik (misalnya uji-t) untuk melihat apakah mereka berbeda secara statistik.

  • b) menggunakan pembelajaran mesin yang diawasi (mis. dukungan vektor klasifikasi atau klasifikasi hutan acak). Saya bisa melatih ini pada sebagian data saya dan memverifikasinya sisanya. Jika algoritma pembelajaran mesin mengklasifikasikan sisanya dengan benar setelah itu, saya dapat yakin bahwa sampel dapat dibedakan.

  • c) menggunakan algoritma yang tidak diawasi (misalnya K-Means) dan membiarkannya membagi semua data menjadi dua sampel. Saya kemudian dapat memeriksa apakah dua sampel yang ditemukan ini setuju dengan label saya, A dan B.

Pertanyaan saya adalah:

  1. Bagaimana tiga cara yang berbeda ini tumpang tindih / eksklusif?
  2. Apakah b) dan c) berguna untuk argumen ilmiah apa pun?
  3. Bagaimana saya bisa mendapatkan "signifikansi" untuk perbedaan antara sampel A dan B dari metode b) dan c)?
  4. Apa yang akan berubah jika data memiliki banyak fitur daripada 1 fitur?
  5. Apa yang terjadi jika mengandung jumlah sampel yang berbeda, misalnya 100 vs 300?

3
Saya akan mengatakan bahwa perbedaan antara (a) dan (b) adalah bahwa uji statistik fokus pada apakah ada adalah perbedaan, sedangkan metode klasifikasi fokus pada ukuran perbedaan ini. Saat Anda menggunakan hutan acak, Anda ingin mengetahui akurasi yang divalidasi silang; mungkin 78%. Itu nomor yang Anda minati, dan bukan dalam membuat pernyataan bahwa itu tidak sama dengan 50% .
Amoeba berkata Reinstate Monica

4
Situasi IMHO di mana a / b / c masuk akal berbeda dalam rasio signal-to-noise tipikal, dan itu meningkat dari (a) ke (b) ke (c). Dalam aplikasi khas uji-t, ada noise tinggi; kami ingin menunjukkan bahwa grup tidak sama. Jika kelompok jelas tidak sama (lebih sedikit noise), kita tidak benar-benar membutuhkan tes lagi; alih-alih, kami ingin menghitung seberapa berbedanya kelompok tersebut, dan akurasi klasifikasi out-of-sample dapat membantu di sini. Jika ada lebih sedikit noise dan akurasi klasifikasi ~ 100%, kita dapat bertanya apakah grup sangat berbeda sehingga dapat diambil oleh algoritma pengelompokan.
Amuba kata Reinstate Monica

1
@amoeba, saya berbicara kepada Anda karena Anda telah mengedit judul pertanyaan, dll. Saya akan meminta Anda untuk mempertimbangkannya sekali lagi. "Klasifikasi" dan "pengelompokan": tidak memiliki (satu-satunya) pembelajaran mesin. Tugas-tugas ini muncul dan secara rutin dilakukan dalam analisis statistik / data sebelum m pertama. pelajar lahir. Itu hanya berlaku untuk beberapa teknik baru seperti SVM yang berkembang karena dan dalam ML. Tidak tepat untuk mengaitkan klasifikasi / pengelompokan / pohon dengan ML saja. Namun, ML berbeda dari analisis data statistik dalam hal menggunakan kereta api / tes berat.
ttnphns

@ttnphns Tentu, itu semua benar, tetapi judul aslinya adalah "Membedakan sampel: Pembelajaran Mesin vs. Tes statistik (mis. uji-t)" dan saya hanya ingin menambahkan beberapa ketelitian karena pertanyaannya adalah tentang uji-t vs klasifikasi vs pengelompokan (untuk tujuan ilmiah khusus ini). Saya akan memikirkan kemungkinan perbaikan pada judul.
Amuba mengatakan Reinstate Monica

@ttnphns Saya mengedit judul, lihat apakah Anda lebih menyukainya.
Amoeba berkata Reinstate Monica

Jawaban:


15

Pertanyaan bagus Apa pun bisa baik atau buruk, bermanfaat atau tidak, berdasarkan apa tujuan Anda (dan mungkin pada sifat situasi Anda). Sebagian besar, metode ini dirancang untuk memenuhi tujuan yang berbeda.

  • Tes statistik , seperti uji - memungkinkan Anda untuk menguji hipotesis ilmiah. Mereka sering digunakan untuk tujuan lain (karena orang tidak terbiasa dengan alat lain), tetapi umumnya tidak boleh. Jika Anda memiliki hipotesis a-priori bahwa kedua kelompok memiliki cara yang berbeda pada variabel yang terdistribusi normal, maka uji- t akan membiarkan Anda menguji hipotesis itu dan mengendalikan tingkat kesalahan jangka panjang tipe I Anda (meskipun Anda tidak akan tahu apakah Anda membuat tingkat kesalahan tipe I dalam kasus khusus ini). tt
  • Klasifikasi dalam pembelajaran mesin, seperti SVM, dirancang untuk mengklasifikasikan pola sebagai salah satu dari serangkaian kelas yang dikenal. Situasi khas adalah bahwa Anda memiliki beberapa instance yang diketahui, dan Anda ingin melatih classifier menggunakannya sehingga dapat memberikan klasifikasi paling akurat di masa depan ketika Anda akan memiliki pola lain yang kelas aslinya tidak diketahui. Penekanan di sini adalah pada akurasi sampel ; Anda tidak menguji hipotesis apa pun. Tentu saja Anda berharap bahwa distribusi variabel / fitur prediktor berbeda di antara kelas-kelas, karena jika tidak, tidak ada klasifikasi membantu di masa mendatang, tetapi Anda tidak mencoba menilai keyakinan Anda bahwa sarana Y berbeda dengan X. Anda ingin menebak dengan benar X di masa depan ketika Y dikenal.
  • Algoritma pembelajaran yang tidak diawasi, seperti pengelompokan , dirancang untuk mendeteksi atau memaksakan struktur pada dataset. Ada banyak kemungkinan alasan Anda mungkin ingin melakukan ini. Kadang-kadang Anda mungkin berharap bahwa ada pengelompokan laten yang benar dalam dataset dan ingin melihat apakah hasil pengelompokan akan tampak masuk akal dan dapat digunakan untuk tujuan Anda. Dalam kasus lain, Anda mungkin ingin memaksakan struktur pada dataset untuk mengaktifkan pengurangan data. Either way, Anda tidak mencoba untuk menguji hipotesis tentang apa pun, Anda juga tidak berharap untuk dapat secara akurat memprediksi apa pun di masa depan.

Dengan mengingat hal ini, mari jawab pertanyaan Anda:

  1. Tiga metode berbeda secara mendasar dalam tujuan yang mereka layani.
  2. b dan c bisa berguna dalam argumen ilmiah, itu tergantung pada sifat argumen yang bersangkutan. Sejauh ini jenis penelitian sains yang paling umum dipusatkan pada pengujian hipotesis. Namun, membentuk model prediksi atau mendeteksi pola laten juga memungkinkan, tujuan yang sah.
  3. Anda biasanya tidak akan mencoba untuk mendapatkan 'signifikansi' dari metode b atau c.
  4. Dengan asumsi fitur bersifat kategoris (yang saya kumpulkan adalah apa yang ada dalam pikiran Anda), Anda masih dapat menguji hipotesis menggunakan ANOVA faktorial. Dalam pembelajaran mesin ada subtopik untuk klasifikasi multi-label . Ada juga metode untuk banyak keanggotaan / tumpang tindih cluster, tetapi ini kurang umum dan merupakan masalah yang jauh lebih mudah ditelusuri. Untuk ikhtisar topik, lihat Krumpleman, CS (2010) Tumpang tindih pengelompokan. Disertasi, UT Austin, Teknik Listrik dan Komputer ( pdf ).
  5. Secara umum, ketiga jenis metode memiliki kesulitan yang lebih besar karena jumlah kasus di kategori berbeda.

2
Re # 4: Saya pikir Anda salah mengerti kata "fitur" di OP. Dalam pembelajaran mesin, "fitur" berarti variabel. Jadi "banyak fitur" berarti seseorang akan menggunakan versi multivariat dari uji-t (seperti Hotelling's T), dan bukan ANOVA faktorial.
Amuba mengatakan Reinstate Monica

11

Tidak akan membahas pengelompokan karena sudah ditangani di jawaban lain, tetapi:

Secara umum, masalah pengujian apakah dua sampel berbeda bermakna dikenal sebagai pengujian dua sampel .

tp

Mungkin lebih mudah untuk memikirkan beberapa masalah ini jika Anda membuat tes dua sampel dari classifier, misalnya seperti yang baru-baru ini diusulkan oleh Lopez-Paz dan Oquab (2017) . Prosedurnya adalah sebagai berikut:

  • XYXtrainXtestYtrainYtest
  • XtrainYtrain
  • XtestYtest
  • p^p=12p12p12

Dengan memeriksa classifier yang dipelajari, Anda mungkin juga dapat menafsirkan perbedaan antara distribusi secara semi-bermakna. Dengan mengubah keluarga pengklasifikasi yang Anda pertimbangkan, Anda juga dapat membantu memandu tes untuk mencari beberapa jenis perbedaan.

Perhatikan bahwa penting untuk melakukan split tes kereta: jika tidak, sebuah classifier yang hanya menghafal inputnya akan selalu memiliki diskriminasi yang sempurna. Meningkatkan porsi poin dalam set pelatihan memberi Anda lebih banyak data untuk mempelajari pengklasifikasi yang baik, tetapi lebih sedikit peluang untuk memastikan bahwa akurasi klasifikasi benar-benar berbeda dari kebetulan. Pengorbanan ini adalah sesuatu yang akan bervariasi berdasarkan masalah dan keluarga klasifikasi dan belum dipahami dengan baik.

Lopez-Paz dan Oquab menunjukkan kinerja empiris yang baik dari pendekatan ini pada beberapa masalah. Ramdas et al. (2016) juga menunjukkan bahwa secara teoritis, pendekatan yang terkait erat adalah tingkat-optimal untuk satu masalah sederhana tertentu. Hal yang "tepat" untuk dilakukan dalam pengaturan ini adalah bidang penelitian aktif, tetapi pendekatan ini setidaknya masuk akal di banyak pengaturan jika Anda ingin sedikit lebih banyak fleksibilitas dan interpretasi daripada hanya menerapkan beberapa tes standar yang tidak berlaku.


(+1) Juga, validasi silang bersarang adalah cara yang harus dilakukan, imo. Kemudian uji estimasi kinerja yang Anda dapatkan di loop resampling luar terhadap kinerja model tanpa informasi. Jika secara signifikan lebih tinggi dari yang diharapkan secara kebetulan, maka data Anda agak terdiskriminasi.
Firebug

@ Firebug Apa yang Anda maksud dengan "kinerja model tanpa informasi"? Saya tidak mendapatkan prosedur yang Anda usulkan.
Dougal

2
@ Firebug Peringatan penting tetapi halus adalah bahwa jika akurasi klasifikasi diperkirakan melalui CV maka seseorang tidak dapat menggunakan tes binomial.
Amuba kata Reinstate Monica

2
@ Firebug Poin saya masih tetap: Anda tidak dapat menerapkan segala jenis tes satu sampel untuk AUC dari lipatan yang berbeda dan khususnya dari CV berulang karena perkiraan ini tidak independen. Ini adalah masalah yang terkenal.
Amuba mengatakan Reinstate Monica

2
Pengujian permutasi ulang: Saya telah melakukannya sendiri. Anda menjalankan CV untuk mendapatkan perkiraan kinerja, lalu mengocok label dan menjalankan seluruh pipa CV lagi (dan lakukan pengocokan 100 atau 1000 kali untuk mendapatkan distribusi nol). Ini cenderung memakan banyak waktu. Cc ke @Firebug.
Amoeba berkata Reinstate Monica

3

Hanya pendekatan (a) yang melayani tujuan pengujian hipotesis.

Dalam hal menggunakan algoritma pembelajaran mesin yang diawasi (b), mereka tidak dapat membuktikan atau menyangkal hipotesis tentang perbedaan kelompok. Jika algoritme pembelajaran mesin tidak mengklasifikasikan grup dengan benar, itu mungkin terjadi karena Anda menggunakan algoritme "salah" untuk masalah Anda, atau Anda tidak cukup menyetelnya, dll. Di sisi lain, Anda dapat "menyiksa" data yang benar-benar "acak" selama cukup untuk menghasilkan model overfitting yang membuat prediksi yang baik. Namun masalah lain adalah kapan dan bagaimana Anda tahu bahwa algoritma membuat prediksi "baik"? Hampir tidak pernah Anda menargetkan akurasi klasifikasi 100%, jadi kapan Anda tahu bahwa hasil klasifikasi membuktikan sesuatu?

Algoritma pengelompokan (c) tidak dirancang untuk pembelajaran yang diawasi. Mereka tidak bertujuan membuat ulang label, tetapi untuk mengelompokkan data Anda dalam hal kesamaan. Sekarang, hasilnya tergantung pada algoritma apa yang Anda gunakan dan apa persamaan yang Anda cari. Data Anda mungkin memiliki berbagai jenis kesamaan, Anda mungkin ingin mencari perbedaan antara anak laki-laki dan perempuan, tetapi algoritma tersebut mungkin menemukan kelompok anak-anak miskin dan kaya, atau cerdas dan kurang cerdas, tangan kanan dan kiri dll. Tidak menemukan pengelompokan yang Anda maksud tidak membuktikan bahwa pengelompokan tidak masuk akal, tetapi hanya bahwa ia menemukan pengelompokan "bermakna" lainnya. Seperti pada kasus sebelumnya, hasilnya mungkin tergantung pada algoritma yang digunakan dan parameter. Apakah akan cocok dengan Anda jika satu dari sepuluh algoritma / pengaturan ditemukan "Anda" label? Bagaimana jika itu satu dari seratus? Berapa lama Anda mencari sebelum berhenti? Perhatikan bahwa ketika menggunakan pembelajaran mesin di sebagian besar kasus, Anda tidak akan berhenti setelah menggunakan satu algoritma dengan pengaturan default dan hasilnya mungkin tergantung pada prosedur yang Anda gunakan.


2
Untuk pendekatan (b): Anda dapat membuat tes hipotesis seperti yang tercantum dalam jawaban saya untuk memecahkan masalah mengetahui apakah hasil Anda bermakna (meskipun ini pasti dalam penggunaan pengklasifikasi yang naif untuk masalah ini). Perhatikan bahwa setiap tes hipotesis yang diberikan mungkin juga gagal untuk menolak nol karena itu adalah tes "salah" untuk masalah Anda, dengan cara yang persis sama seperti yang akan terjadi dengan classifier; masalah overfitting sepenuhnya ditangani oleh pemisahan data.
Dougal

@Dougal poin bagus (+1) tetapi argumen utama saya adalah bahwa dengan menggunakan pembelajaran mesin hasilnya tergantung pada bagaimana Anda memilih algoritma, menggunakannya, menguji dan menilai hasilnya; jadi hasil tes tersebut sangat tergantung pada tindakan Anda. Ini berarti bahwa dua ahli statistik yang berpotensi dapat memperoleh hasil yang berbeda saat menggunakan metode ini. Di sisi lain, dengan tes hipotesis tradisional hanya bergantung pada pilihan tes.
Tim

Selain itu, tidak ada satu pun cara "benar" untuk menerapkannya dan Anda dapat dengan mudah memanipulasinya (sengaja atau tidak) untuk mendapatkan hasil yang diharapkan.
Tim

Jika Anda hanya mencoba sejuta hal sampai Anda mendapatkan hasil yang diinginkan, ya. Jika Anda melakukan pemisahan data yang benar termasuk dari analisis Anda sendiri, maka prosedur pengujian ini benar-benar valid. Memiliki lebih banyak opsi memungkinkan Anda memiliki kekuatan yang lebih besar dalam situasi di mana Anda tahu cara mengeksploitasinya, tetapi ya memungkinkan lebih banyak peluang untuk menipu (secara tidak sengaja atau sebaliknya) jika Anda tidak berhati-hati.
Dougal

@Dougal ya, tetapi hasilnya tergantung juga pada prosedur yang digunakan untuk validasi silang dan pemisahan itu sendiri (misalnya ukuran kelompok uji). Jadi pada setiap langkah hasilnya tergantung pada prosedur Anda. Selain itu, itu adalah keputusan Anda ketika Anda berhenti belajar dan berusaha untuk mencapai hasil yang lebih baik (algoritma tunggal dengan pengaturan default, vs algoritma tunggal dan menyetel parameter, vs beberapa algoritma - berapa banyak?). Prosedur ini mungkin memerlukan beberapa koreksi untuk beberapa pengujian (tapi apa sebenarnya?) Untuk menjelaskan prosedur yang digunakan - hasil yang baik pada algoritma tunggal dengan pengaturan default tampaknya
Tim

2
  1. a) hanya menjawab pertanyaan Anda apakah distribusinya berbeda, tetapi tidak bagaimana membedakannya. b) juga akan menemukan nilai terbaik untuk membedakan antara dua distribusi. c) akan berfungsi jika kedua distribusi memiliki beberapa properti tertentu. Misalnya ia akan bekerja dengan distribusi normal tetapi tidak dengan beberapa distribusi modal, karena metode ini dapat membedakan dua mode dari kelompok yang sama, bukan dua kelompok yang berbeda.

  2. c) tidak berguna untuk argumen ilmiah karena dua distribusi modal. b) dapat digunakan untuk membedakan dua distribusi, karena Anda dapat menghitung signifikansi (lihat 3.) Meskipun saya tidak pernah bertemu.

  3. Dengan bootstrap. Anda menghitung model berdasarkan sampel acak 1000 kali. Anda mendapatkan skor, misalnya jumlah minimum kesalahan alfa dan beta. Anda mengurutkan skor naik. Untuk kepercayaan 5% Anda memilih nilai 950. Jika nilai ini lebih rendah dari 50% (untuk jumlah poin yang sama untuk grup A dan B) maka dengan kepercayaan 95% Anda dapat mengabaikan hipotesis nol bahwa distribusinya sama. Masalahnya adalah jika distribusi keduanya normal, memiliki rata-rata yang sama, tetapi memiliki variasi yang berbeda maka Anda tidak akan dapat memahami bahwa distribusinya berbeda dengan teknik ML. Di sisi lain, Anda dapat menemukan tes variasi yang akan dapat membedakan kedua distribusi. Dan bisa jadi sebaliknya ML akan lebih kuat dari tes statistik dan akan dapat membedakan distribusi.

  4. Ketika Anda hanya memiliki satu fitur dalam ML, Anda hanya perlu menemukan satu nilai untuk membedakan distribusi. Dengan dua fitur, batas bisa menjadi sinus dan dalam ruang multi-dimensi itu bisa sangat aneh. Jadi akan jauh lebih sulit untuk menemukan perbatasan yang tepat. Di sisi lain, fitur tambahan membawa informasi tambahan. Jadi secara umum akan memungkinkan untuk membedakan dua distribusi dengan lebih mudah. Jika kedua variabel terdistribusi secara normal maka perbatasan adalah garis.

  5. Sampel yang lebih kecil dapat berperilaku tidak normal karena Teorema Limit Sentral tidak dapat diterapkan. Sampel yang lebih besar mulai berperilaku lebih normal karena Teorema Limit Pusat mulai bekerja. Misalnya rata-rata dari kedua kelompok akan terdistribusi secara normal jika sampelnya cukup besar. Tetapi biasanya bukan 100 vs 300 tetapi 10 pengamatan terhadap 1000 pengamatan. Jadi menurut situs ini , uji-t untuk perbedaan rata-rata akan bekerja terlepas dari distribusi jika jumlah pengamatan lebih besar dari 40 dan tanpa outlier.


0

Pengujian statistik adalah untuk membuat kesimpulan dari data, ini memberi tahu Anda bagaimana hal-hal terkait. Hasilnya adalah sesuatu yang memiliki makna dunia nyata. Misalnya bagaimana merokok dikaitkan dengan kanker paru-paru, baik dari segi arah dan besarnya. Itu masih tidak memberi tahu Anda mengapa hal-hal terjadi. Untuk menjawab mengapa sesuatu terjadi, kita perlu mempertimbangkan juga hubungan timbal balik dengan variabel-variabel lain dan membuat penyesuaian yang sesuai (lihat Pearl, J. (2003) PENYEBAB: MODEL, REASONING, DAN INFERENSI).

Pembelajaran terawasi adalah untuk membuat prediksi, memberi tahu Anda apa yang akan terjadi. Misalnya, mengingat status merokok seseorang, kita dapat memperkirakan apakah dia menderita kanker paru-paru. Dalam kasus-kasus sederhana, ia masih memberi tahu Anda "bagaimana", misalnya dengan melihat cutoff status merokok yang diidentifikasi oleh algoritma. Tetapi model yang lebih kompleks lebih sulit atau tidak mungkin untuk ditafsirkan (pembelajaran mendalam / meningkatkan dengan banyak fitur).

Pembelajaran tanpa pengawasan sering digunakan dalam memfasilitasi kedua hal di atas.

  • Untuk pengujian statistik, dengan menemukan beberapa subkelompok yang mendasari data yang tidak diketahui (pengelompokan), kita dapat menyimpulkan heterogenitas dalam hubungan antar variabel. Misalnya merokok meningkatkan kemungkinan kanker paru-paru untuk subkelompok A tetapi tidak pada subkelompok B.
  • Untuk pembelajaran yang diawasi, kami dapat membuat fitur baru untuk meningkatkan akurasi prediksi dan ketahanan. Misalnya dengan mengidentifikasi subkelompok (pengelompokan) atau kombinasi fitur (pengurangan dimensi) yang berhubungan dengan kemungkinan kanker paru-paru.

Ketika jumlah fitur / variabel semakin besar, perbedaan antara pengujian statistik dan pembelajaran yang diawasi menjadi lebih besar. Pengujian statistik mungkin belum tentu mendapat manfaat dari ini, itu tergantung pada misalnya apakah Anda ingin membuat kesimpulan kausal dengan mengendalikan faktor-faktor lain atau mengidentifikasi heterogenitas dalam asosiasi seperti yang disebutkan di atas. Pembelajaran terawasi akan berkinerja lebih baik jika fitur-fiturnya relevan dan itu akan menjadi lebih seperti kotak hitam.

Ketika jumlah sampel bertambah besar, kita bisa mendapatkan hasil yang lebih tepat untuk pengujian statistik, hasil yang lebih akurat untuk pembelajaran yang diawasi dan hasil yang lebih kuat untuk pembelajaran yang tidak diawasi. Tetapi ini tergantung pada kualitas data. Data berkualitas buruk dapat menimbulkan bias atau noise pada hasilnya.

Terkadang kita ingin tahu "bagaimana" dan "mengapa" untuk menginformasikan tindakan intervensi, misalnya dengan mengidentifikasi bahwa merokok menyebabkan kanker paru-paru, kebijakan dapat dibuat untuk mengatasinya. Terkadang kita ingin tahu "apa" untuk menginformasikan pengambilan keputusan, misalnya mencari tahu siapa yang kemungkinan menderita kanker paru-paru dan memberi mereka perawatan dini. Ada masalah khusus yang diterbitkan di Science tentang prediksi dan batasannya ( http://science.sciencemag.org/content/355/6324/468). “Keberhasilan tampaknya dicapai secara paling konsisten ketika pertanyaan ditangani dalam upaya multidisiplin yang menggabungkan pemahaman manusia tentang konteks dengan kapasitas algoritmik untuk menangani terabyte data.” Menurut pendapat saya, misalnya, pengetahuan yang ditemukan menggunakan pengujian hipotesis dapat membantu pembelajaran yang diawasi dengan memberi tahu kami data / fitur apa yang harus kita kumpulkan di tempat pertama. Di sisi lain, pembelajaran yang diawasi dapat membantu menghasilkan hipotesis dengan menginformasikan variabel mana

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.