Saya menyelidiki berbagai teknik yang digunakan dalam pengelompokan dokumen dan saya ingin menghapus beberapa keraguan tentang PCA (analisis komponen utama) dan LSA (analisis semantik laten).
Hal pertama - apa perbedaan di antara mereka? Saya tahu bahwa di PCA, dekomposisi SVD diterapkan ke matriks term-kovarians, sedangkan di LSA itu adalah matriks dokumen-jangka. Apakah ada hal lain?
Kedua - apa peran mereka dalam prosedur pengelompokan dokumen? Dari apa yang telah saya baca sejauh ini, saya menyimpulkan bahwa tujuan mereka adalah pengurangan dimensi, pengurangan kebisingan dan menggabungkan hubungan antara istilah-istilah ke dalam representasi. Setelah mengeksekusi PCA atau LSA, algoritma tradisional seperti k-means atau metode aglomerasi diterapkan pada ruang istilah yang dikurangi dan ukuran kesamaan yang umum, seperti jarak cosinus digunakan. Harap perbaiki saya jika saya salah.
Ketiga - apakah penting jika vektor istilah TF / IDF dinormalisasi sebelum menerapkan PCA / LSA atau tidak? Dan haruskah mereka dinormalisasi lagi setelah itu?
Keempat - katakanlah saya telah melakukan beberapa pengelompokan pada ruang istilah dikurangi oleh LSA / PCA. Sekarang, bagaimana saya harus menetapkan label ke kluster hasil? Karena dimensi tidak sesuai dengan kata-kata yang sebenarnya, itu agak masalah yang sulit. Satu-satunya ide yang muncul di benak saya adalah menghitung centroid untuk setiap cluster menggunakan vektor istilah asli dan memilih istilah dengan bobot tertinggi, tetapi itu tidak terdengar sangat efisien. Apakah ada solusi spesifik untuk masalah ini? Saya tidak dapat menemukan apa pun.
Saya akan sangat berterima kasih untuk mengklarifikasi masalah ini.
sumber
Jawaban:
sumber
LSI dihitung pada matriks istilah-dokumen, sedangkan PCA dihitung pada matriks kovarians, yang berarti LSI mencoba menemukan subruang linier terbaik untuk menggambarkan kumpulan data, sedangkan PCA mencoba menemukan subruang linear paralel terbaik.
sumber
Hanya beberapa ekstensi untuk jawaban russellpierce.
1) Pada dasarnya LSA adalah PCA yang diterapkan pada data teks. Ketika menggunakan SVD untuk PCA, itu tidak diterapkan ke matriks kovarians tetapi matriks fitur-sampel secara langsung, yang hanya merupakan matriks istilah-dokumen dalam LSA. Perbedaannya adalah PCA sering memerlukan normalisasi fitur-bijaksana untuk data sedangkan LSA tidak.
Ada kuliah yang bagus dari Andrew Ng yang menggambarkan koneksi antara PCA dan LSA.
2/3) Karena data dokumen memiliki panjang yang bervariasi, biasanya akan sangat membantu untuk menormalkan besaran. Di sini normalisasi sampel-bijaksana harus digunakan bukan normalisasi fitur-bijaksana. Dalam praktiknya saya merasa terbantu untuk menormalkan sebelum dan sesudah LSI.
Jika metrik algoritma pengelompokan tidak bergantung pada besarnya (katakan jarak cosinus) maka langkah normalisasi terakhir dapat dihilangkan.
4) Menurutnya ini secara umum merupakan masalah yang sulit untuk mendapatkan label yang bermakna dari cluster. Beberapa orang mengekstrak istilah / frasa yang memaksimalkan perbedaan distribusi antara corpus dan cluster. Cara lain adalah dengan menggunakan pengelompokan semi-diawasi dengan label yang telah ditentukan.
sumber