Apakah ada algoritma yang menggabungkan klasifikasi dan regresi?

25

Saya bertanya-tanya apakah ada algoritma yang bisa melakukan klasifikasi dan regresi pada saat yang sama. Sebagai contoh, saya ingin membiarkan algoritma mempelajari classifier, dan pada saat yang sama dalam setiap label, ia juga mempelajari target yang berkelanjutan. Jadi, untuk setiap contoh pelatihan, ia memiliki label kategoris dan nilai kontinu.

Saya bisa melatih classifier terlebih dahulu, dan kemudian melatih seorang regressor di dalam setiap label, tetapi saya hanya berpikir bahwa jika ada algoritma yang bisa melakukan keduanya, itu akan luar biasa.

Shudong
sumber
Lihatlah Partisi Rekursif
Rekursiif
@Tim, [finite-fixture-model] (tag yang Anda gunakan di sini) tidak memiliki kutipan. Mau menyediakannya?
Amoeba berkata Reinstate Monica
Shudong, maksud Anda "klasifikasi" atau maksud Anda "pengelompokan"? Anda bertanya tentang klasifikasi tetapi kemudian menerima jawaban Tim yaitu tentang pengelompokan.
Amoeba berkata Reinstate Monica
@amoeba selesai, itu tidak sempurna, mungkin seseorang, suatu hari nanti akan meningkatkan kutipan.
Tim
@amoeba yang saya maksud klasifikasi. Jawaban tim adalah sesuatu yang dekat. Tidak ada jawaban lain. Mungkin saya harus menunggu sebentar?
Shudong

Jawaban:

35

Masalah yang Anda gambarkan dapat diselesaikan dengan regresi kelas laten , atau regresi cluster-wise , atau ekstensi ekstensi dari model linier umum yang semua anggota keluarga yang lebih luas dari model campuran hingga , atau model kelas laten .

Ini bukan kombinasi klasifikasi (supervised learning) dan regresi per se , tetapi lebih pada pengelompokan (belajar tanpa pengawasan) dan regresi. Pendekatan dasar dapat diperluas sehingga Anda memprediksi keanggotaan kelas menggunakan variabel yang bersamaan, apa yang membuatnya lebih dekat dengan apa yang Anda cari. Bahkan, menggunakan model kelas laten untuk klasifikasi dideskripsikan oleh Vermunt dan Magidson (2003) yang merekomendasikannya untuk tujuan tersebut.

Regresi kelas laten

Pendekatan ini pada dasarnya adalah model campuran terbatas (atau analisis kelas laten ) dalam bentuk

f(yx,ψ)=k=1Kπkfk(yx,ϑk)

di mana adalah vektor semua parameter dan adalah komponen campuran yang oleh , dan setiap komponen muncul dengan proporsi laten . Jadi idenya adalah bahwa distribusi data Anda adalah campuran komponen , masing-masing yang dapat dijelaskan oleh model regresi muncul dengan probabilitas . Model campuran hingga sangat fleksibel dalam pemilihan komponen dan dapat diperluas ke bentuk lain dan campuran dari berbagai kelas model (misalnya campuran analisis faktor).ψ=(π,ϑ)fkϑkπkKfkπkfk

Memprediksi probabilitas keanggotaan kelas berdasarkan variabel yang bersamaan

Model regresi kelas laten sederhana dapat diperluas untuk memasukkan variabel bersamaan yang memprediksi keanggotaan kelas (Dayton dan Macready, 1998; lihat juga: Linzer dan Lewis, 2011; Grun dan Leisch, 2008; McCutcheon, 1987; Hagenaars dan McCutcheon, 2009) , dalam hal demikian model menjadi

f(yx,w,ψ)=k=1Kπk(w,α)fk(yx,ϑk)

di mana lagi adalah vektor dari semua parameter, tetapi kami juga menyertakan variabel dan fungsi (mis. logistik) yang digunakan untuk memprediksi proporsi laten berdasarkan variabel yang bersamaan. Jadi, pertama-tama Anda dapat memprediksi probabilitas keanggotaan kelas dan memperkirakan regresi cluster-wise dalam satu model tunggal.ψwπk(w,α)

Pro dan kontra

Apa yang baik tentang itu, adalah bahwa itu adalah teknik pengelompokan berbasis model , apa artinya Anda menyesuaikan model dengan data Anda, dan model tersebut dapat dibandingkan dengan menggunakan metode yang berbeda untuk perbandingan model (tes rasio kemungkinan, BIC, AIC dll. ), sehingga pilihan model akhir tidak subyektif seperti dengan analisis cluster pada umumnya. Membawa masalah menjadi dua masalah independen pengelompokan dan kemudian menerapkan regresi dapat menyebabkan hasil yang bias dan memperkirakan semuanya dalam satu model tunggal memungkinkan Anda untuk menggunakan data Anda lebih efisien.

Kelemahannya adalah Anda perlu membuat sejumlah asumsi tentang model Anda dan memikirkannya, jadi itu bukan metode kotak hitam yang hanya akan mengambil data dan mengembalikan beberapa hasil tanpa mengganggu Anda tentang hal itu. Dengan data yang bising dan model yang rumit, Anda juga dapat mengalami masalah pengidentifikasian model. Juga karena model seperti itu tidak begitu populer, tidak ada yang diimplementasikan secara luas (Anda dapat memeriksa paket R yang hebat flexmixdan poLCA, sejauh yang saya tahu itu juga diimplementasikan dalam SAS dan Mplus sampai batas tertentu), apa yang membuat Anda bergantung pada perangkat lunak.

Contoh

Di bawah ini Anda dapat melihat contoh model tersebut dari flexmixperpustakaan (Leisch, 2004; Grun dan Leisch, 2008) campuran sketsa campuran dua model regresi untuk data yang dibuat-buat.

library("flexmix")
data("NPreg")
m1 <- flexmix(yn ~ x + I(x^2), data = NPreg, k = 2)
summary(m1)
## 
## Call:
## flexmix(formula = yn ~ x + I(x^2), data = NPreg, k = 2)
## 
##        prior size post>0 ratio
## Comp.1 0.506  100    141 0.709
## Comp.2 0.494  100    145 0.690
## 
## 'log Lik.' -642.5452 (df=9)
## AIC: 1303.09   BIC: 1332.775 
parameters(m1, component = 1)
##                      Comp.1
## coef.(Intercept) 14.7171662
## coef.x            9.8458171
## coef.I(x^2)      -0.9682602
## sigma             3.4808332
parameters(m1, component = 2)
##                       Comp.2
## coef.(Intercept) -0.20910955
## coef.x            4.81646040
## coef.I(x^2)       0.03629501
## sigma             3.47505076

Divisualisasikan pada plot berikut (bentuk titik adalah kelas yang benar, warna adalah klasifikasi).

Contoh regresi kelas laten

Referensi dan sumber daya tambahan

Untuk perincian lebih lanjut, Anda dapat memeriksa buku dan kertas berikut:

Wedel, M. dan DeSarbo, WS (1995). Pendekatan Kemungkinan Campuran untuk Model Linear Umum. Jurnal Klasifikasi, 12 , 21–55.

Wedel, M. dan Kamakura, WA (2001). Segmentasi Pasar - Yayasan Konseptual dan Metodologi. Penerbit Akademik Kluwer.

Leisch, F. (2004). Flexmix: Kerangka umum untuk model campuran hingga dan regresi kaca laten dalam R. Journal of Statistical Software, 11 (8) , 1-18.

Grun, B. dan Leisch, F. (2008). FlexMix versi 2: campuran hingga dengan variabel bersamaan dan parameter yang bervariasi dan konstan. Jurnal Perangkat Lunak Statistik, 28 (1) , 1-35.

McLachlan, G. dan Peel, D. (2000). Model Campuran Hingga. John Wiley & Sons.

Dayton, CM dan Macready, GB (1988). Model Kelas Laten Bersamaan-Variabel. Jurnal Asosiasi Statistik Amerika, 83 (401), 173-178.

Linzer, DA dan Lewis, JB (2011). poLCA: Paket R untuk analisis kelas laten variabel politis. Jurnal Perangkat Lunak Statistik, 42 (10), 1-29.

McCutcheon, AL (1987). Analisis Kelas Laten. Sage.

Hagenaars JA dan McCutcheon, AL (2009). Analisis Kelas Laten Terapan. Cambridge University Press.

Vermunt, JK, dan Magidson, J. (2003). Model kelas laten untuk klasifikasi. Statistik Komputasi & Analisis Data, 41 (3), 531-537.

Grün, B. dan Leisch, F. (2007). Aplikasi campuran model regresi yang terbatas. sketsa paket flexmix.

Grün, B., & Leisch, F. (2007). Menyesuaikan campuran terbatas regresi linier umum dalam R. Statistik Komputasi & Analisis Data, 51 (11), 5247-5252.

Tim
sumber