Tiga versi analisis diskriminan: perbedaan dan cara menggunakannya

26

Adakah yang bisa menjelaskan perbedaan dan memberikan contoh spesifik bagaimana menggunakan ketiga analisis ini?

  • LDA - Analisis Diskriminan Linier
  • FDA - Analisis Diskriminan Fisher
  • QDA - Analisis Diskriminan Kuadratik

Saya mencari di mana-mana, tetapi tidak dapat menemukan contoh nyata dengan nilai nyata untuk melihat bagaimana analisis ini digunakan dan data dihitung, hanya banyak rumus yang sulit dipahami tanpa contoh nyata. Ketika saya mencoba untuk memahami itu sulit untuk membedakan mana persamaan / formula milik LDA dan yang ke FDA.

Misalnya katakanlah ada data seperti itu:

x1 x2 class
1  2  a
1  3  a
2  3  a
3  3  a
1  0  b
2  1  b
2  2  b

Dan katakanlah beberapa data pengujian:

x1 x2
2  4
3  5
3  6

Jadi bagaimana cara menggunakan data tersebut dengan ketiga pendekatan ini? Akan lebih baik untuk melihat bagaimana menghitung semuanya dengan tangan, tidak menggunakan beberapa paket matematika yang menghitung semuanya di belakang layar.

PS Saya hanya menemukan tutorial ini: http://people.revoledu.com/kardi/tutorial/LDA/LDA.html#LDA . Ini menunjukkan cara menggunakan LDA.

Andrius
sumber

Jawaban:

23

"Analisis Diskriminan Fisher" hanyalah LDA dalam situasi 2 kelas. Ketika hanya ada 2 kelas perhitungan dengan tangan layak dan analisis langsung terkait dengan Regresi Berganda. LDA adalah perpanjangan langsung dari ide Fisher tentang situasi sejumlah kelas dan menggunakan perangkat aljabar matriks (seperti komposisi eigend) untuk menghitungnya. Jadi, istilah "Analisis Diskriminan Nelayan" dapat dilihat sebagai usang hari ini. "Analisis Diskriminan Linier" harus digunakan sebagai gantinya. Lihat juga . Analisis diskriminan dengan 2+ kelas (multi-kelas) adalah kanonik dengan algoritmanya (mengekstrak dicriminan sebagai variasi kanonik); istilah langka "Analisis Diskriminan Canonical"

Fisher menggunakan apa yang kemudian disebut "fungsi klasifikasi Fisher" untuk mengklasifikasikan objek setelah fungsi diskriminan dihitung. Saat ini, pendekatan Bayes yang lebih umum digunakan dalam prosedur LDA untuk mengklasifikasikan objek.

Untuk permintaan Anda untuk penjelasan tentang LDA, saya dapat mengirimkan jawaban ini kepada saya: ekstraksi dalam LDA , klasifikasi dalam LDA , LDA di antara prosedur terkait . Juga ini , ini , ini pertanyaan dan jawaban.

Sama seperti ANOVA membutuhkan asumsi varians yang sama, LDA memerlukan asumsi matriks varians-kovarians yang sama (antara variabel input) dari kelas. Asumsi ini penting untuk tahap klasifikasi analisis. Jika matriks secara substansial berbeda, pengamatan akan cenderung ditugaskan ke kelas di mana variabilitas lebih besar. Untuk mengatasi masalah tersebut, QDA ditemukan. QDA adalah modifikasi dari LDA yang memungkinkan heterogenitas matriks kovarian kelas di atas.

Jika Anda memiliki heterogenitas (seperti yang terdeteksi misalnya dengan uji M Box) dan Anda tidak memiliki QDA di tangan, Anda masih dapat menggunakan LDA dalam rezim menggunakan matriks kovarians individu (bukan matriks gabungan) dari diskriminan di klasifikasi . Ini sebagian memecahkan masalah, meskipun kurang efektif daripada di QDA, karena - seperti yang baru saja ditunjukkan - ini adalah matriks antara diskriminan dan bukan antara variabel asli (yang matriksnya berbeda).

Biarkan saya menganalisis data contoh Anda sendiri.


Membalas @ zyxue dan komentar

LDA adalah apa yang Anda tetapkan FDA dalam jawaban Anda. LDA pertama mengekstraksi konstruksi linier (disebut diskriminan) yang memaksimalkan antara dalam pemisahan, dan kemudian menggunakan mereka untuk melakukan klasifikasi (gaussian). Jika (seperti yang Anda katakan) LDA tidak terikat dengan tugas untuk mengekstraksi LDA diskriminan tampaknya hanya menjadi penggolong gaussian, tidak ada nama "LDA" yang diperlukan sama sekali.

SwSwBegitu pula kovarian-kovarian dalam kelas itu sama, identitas; hak untuk menggunakannya menjadi mutlak.)

Gaussian classifier (tahap kedua LDA) menggunakan aturan Bayes untuk menetapkan pengamatan ke kelas oleh diskriminan. Hasil yang sama dapat dicapai melalui apa yang disebut fungsi klasifikasi linier Fisher yang memanfaatkan fitur asli secara langsung. Namun, pendekatan Bayes berdasarkan diskriminasi agak sedikit umum karena akan memungkinkan untuk menggunakan matriks kovarian diskriminan kelas yang terpisah juga, selain cara default untuk menggunakan satu, yang dikumpulkan. Juga, itu akan memungkinkan untuk mendasarkan klasifikasi pada subset dari diskriminan.

Ketika hanya ada dua kelas, kedua tahap LDA dapat dijelaskan bersama dalam satu pass tunggal karena "ekstraksi laten" dan "klasifikasi pengamatan" mengurangi kemudian ke tugas yang sama.

ttnphns
sumber
Saya pikir saya ingat belajar dalam pembelajaran mesin saya bahwa LDA 2-kelas gaussian mengasumsikan kepadatan gaussian dan menggunakan aturan Bayesian MPE sedangkan Fisher LDA tidak membuat asumsi gaussian dan mengubah kriteria optimalitas untuk memaksimalkan SNR. Apakah ini sesuai dengan jawaban Anda?
Austin
1
@Jake Tertarik dengan hal ini juga, dalam jawaban ini: stats.stackexchange.com/questions/87975/… , dinyatakan bahwa hasilnya sama. Komentar?
Sedekah
Apakah Anda yakin "" Analisis Diskriminan Fisher "hanyalah LDA dalam situasi 2 kelas"?
zyxue
@ Erxue, 95% yakin, tapi bagaimanapun saya menemukan istilah usang. Silakan lihat catatan kaki saya di stats.stackexchange.com/q/190806/3277 .
ttnphns
@ ttnphns, fyi, menurut youtu.be/hGKt0yy9q_E?t=3010 , FDA dan LDA sering campur aduk dalam literatur. Salah satu cara untuk membedakan keduanya, FDA adalah metode ekstraksi fitur sedangkan LDA dan QDA adalah teknik klasifikasi.
zyxue
1

Saya merasa sulit untuk setuju bahwa FDA adalah LDA untuk dua kelas seperti yang disarankan oleh @ttnphns.

Saya merekomendasikan dua ceramah yang sangat informatif dan indah tentang topik ini oleh Profesor Ali Ghodsi:

  1. LDA & QDA . Selain itu, halaman 108 buku The Elements of Statistics Learning ( pdf ) memiliki deskripsi LDA yang konsisten dengan kuliah.
  2. FDA

Bagi saya, LDA dan QDA sama karena keduanya teknik klasifikasi dengan asumsi Gaussian. Perbedaan utama antara keduanya adalah bahwa LDA mengasumsikan matriks fitur kovarians dari kedua kelas adalah sama, yang menghasilkan batas keputusan linier. Sebaliknya, QDA kurang ketat dan memungkinkan matriks kovarians fitur yang berbeda untuk kelas yang berbeda, yang mengarah ke batas keputusan kuadratik. Lihat gambar berikut dari scikit-pelajari untuk ide bagaimana batas keputusan kuadrat terlihat.

Beberapa komentar tentang sub-plot :

  • Baris atas: ketika matriks kovarians memang sama dalam data, LDA dan QDA mengarah ke batas keputusan yang sama.
  • Baris bawah: ketika matriks kovarians berbeda, LDA mengarah ke kinerja yang buruk karena asumsinya menjadi tidak valid, sementara QDA melakukan klasifikasi jauh lebih baik.

Di sisi lain, FDA adalah spesies yang sangat berbeda, tidak ada hubungannya dengan asumsi Gaussion. Apa yang coba dilakukan FDA adalah menemukan transformasi linear untuk memaksimalkan jarak rata-rata antar kelas sambil meminimalkan varians dalam kelas . Kuliah kedua menjelaskan ide ini dengan indah. Berbeda dengan LDA / QDA, FDA tidak melakukan klasifikasi, meskipun fitur yang diperoleh setelah transformasi ditemukan oleh FDA dapat digunakan untuk klasifikasi, misalnya menggunakan LDA / QDA, atau SVM atau lainnya.

zyxue
sumber
2
Silakan lihat balasan saya atas jawaban Anda dalam jawaban saya. Saya belum menonton video pelajaran yang Anda tautkan, jadi tidak bisa mengatakan apakah saya setuju dengan itu. Saya tidak setuju dengan interpretasi / definisi (dari LDA vs FDA) yang Anda berikan dalam jawabannya. Tapi itu - definisi dari dua istilah - bukan topik yang sangat penting bagi saya. Lebih penting untuk memahami cara kerjanya.
ttnphns
2
Jika dalam pengertian Anda FDA doesn't do classification, although the features obtained after transformation found by FDA could be used for classificationmaka saya akan mengatakan itu yang saya sebut "fase ekstraksi LDA". Tentu saja, fitur yang diekstrak ini (fungsi diskriminan) - Anda dapat menggunakannya sesuka Anda. Dalam klasifikasi LDA standar, mereka digunakan sebagai pengklasifikasi gaussian.
ttnphns
Saya ingin tahu di mana Anda membaca bahwa " LDA pertama mengekstraksi konstruksi linier (disebut diskriminan)" ? Saya pikir ini disebut linear diskriminan karena batas keputusan linear, yang merupakan hasil dari asumsi bahwa fitur matriks kovarians sama untuk kelas yang berbeda. Demikian pula, QDA memiliki batas keputusan kuadratik. Ini juga ditunjukkan pada gambar yang disematkan. Selain video di atas, saya mereferensikan The Elements of Statistical Learning ( pdf . Di halaman 108, ia mulai menggambarkan LDA tanpa menyebutkan ekstraksi fitur.
zyxue
Setelah semua, saya pikir kita berbicara tentang hal yang sama, tetapi itu hanya cara penamaan. Anda berpikir LDA = feature_extraction + klasifikasi, tetapi berdasarkan referensi saya, LDA hanya tentang klasifikasi. Bagian feature_extraction di sini disebut FDA. Yang penting , tidak ada hubungannya dengan jumlah kelas yang terlibat di sini. Baik LDA dan FDA dapat menangani lebih dari dua kelas.
zyxue
Kami dapat tetap berpegang pada definisi yang kami gunakan juga. Bagaimanapun, kita harus mencatat bahwa "konstruksi linear" dan "batas keputusan linear" terkait, dalam konteks DA mereka tentang hal yang sama. Lihatlah foto Anda dengan batas keputusan sebagai garis lurus. Saat Anda mentransformasikan kelas terlalu, elips menjadi bulat fungsi diskriminan akan tepat tegak lurus ke perbatasan. Sebenarnya, hal "utama" di sini adalah fungsi diskriminan, variabel, dimensi, sedangkan batas keputusan adalah batas dalam ruang yang bergantung pada arahnya. Batas Desember adalah "sekunder".
ttnphns