Bagaimana LDA Bekerja - Amazon SageMaker

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Bagaimana LDA Bekerja

Amazon SageMaker LDA adalah algoritma pembelajaran tanpa pengawasan yang mencoba menggambarkan serangkaian pengamatan sebagai campuran dari berbagai kategori. Kategori-kategori ini sendiri merupakan distribusi probabilitas atas fitur. LDA adalah model probabilitas generatif, yang berarti mencoba menyediakan model untuk distribusi output dan input berdasarkan variabel laten. Ini bertentangan dengan model diskriminatif, yang mencoba mempelajari bagaimana input memetakan ke output.

Anda dapat menggunakan LDA untuk berbagai tugas, mulai dari pengelompokan pelanggan berdasarkan pembelian produk hingga analisis harmonik otomatis dalam musik. Namun, ini paling sering dikaitkan dengan pemodelan topik dalam korpus teks. Pengamatan disebut sebagai dokumen. Set fitur disebut sebagai kosakata. Sebuah fitur disebut sebagai kata. Dan kategori yang dihasilkan disebut sebagai topik.

catatan

Lemmatisasi secara signifikan meningkatkan kinerja dan akurasi algoritma. Pertimbangkan pra-pemrosesan data teks input apa pun. Untuk informasi lebih lanjut, lihat Stemming dan lemmatisasi.

Model LDA didefinisikan oleh dua parameter:

  • α—Perkiraan sebelumnya tentang probabilitas topik (dengan kata lain, frekuensi rata-rata setiap topik dalam dokumen tertentu terjadi).

  • β—kumpulan topik k di mana setiap topik diberi distribusi probabilitas atas kosakata yang digunakan dalam korpus dokumen, juga disebut “distribusi topik-kata.”

LDA adalah model bag-of-words "", yang berarti bahwa urutan kata tidak masalah. LDA adalah model generatif di mana setiap dokumen dihasilkan word-by-word dengan memilih campuran topik θ Dirichlet (α).

Untuk setiap kata dalam dokumen:

  • Pilih topik z ∼ Multinomial (θ)

  • Pilih distribusi topik-kata yang sesuai β_z.

  • Gambarlah sebuah kata w ∼ Multinomial (β_z).

Saat melatih model, tujuannya adalah untuk menemukan parameter α dan β, yang memaksimalkan probabilitas bahwa korpus teks dihasilkan oleh model.

Metode yang paling populer untuk memperkirakan model LDA menggunakan teknik Gibbs sampling atau Expectation Maximization (EM). Amazon SageMaker LDA menggunakan dekomposisi spektral tensor. Ini memberikan beberapa keuntungan:

  • Jaminan teoritis pada hasil. Metode EM standar dijamin hanya menyatu dengan optima lokal, yang seringkali berkualitas buruk.

  • Memalukan diparalelkan. Pekerjaan dapat dibagi secara sepele atas dokumen input baik dalam pelatihan maupun inferensi. Pendekatan EM-Method dan Gibbs Sampling dapat diparalelkan, tetapi tidak semudah itu.

  • Cepat. Meskipun metode EM memiliki biaya iterasi yang rendah, metode ini cenderung memperlambat tingkat konvergensi. Gibbs Sampling juga tunduk pada tingkat konvergensi yang lambat dan juga membutuhkan sejumlah besar sampel.

Pada tingkat tinggi, algoritma dekomposisi tensor mengikuti proses ini:

  1. Tujuannya adalah untuk menghitung dekomposisi spektral tensor V x V x V, yang merangkum momen dokumen dalam korpus kita. V adalah ukuran kosakata (dengan kata lain, jumlah kata yang berbeda dalam semua dokumen). Komponen spektral tensor ini adalah parameter LDA α dan β, yang memaksimalkan kemungkinan keseluruhan korpus dokumen. Namun, karena ukuran kosakata cenderung besar, tensor V x V x V ini sangat besar untuk disimpan dalam memori.

  2. Sebaliknya, ia menggunakan matriks momen V x V, yang merupakan analog dua dimensi tensor dari langkah 1, untuk menemukan matriks pemutih dimensi V x k. Matriks ini dapat digunakan untuk mengubah matriks momen V x V menjadi matriks identitas k x k. k adalah jumlah topik dalam model.

  3. Matriks pemutih yang sama ini kemudian dapat digunakan untuk menemukan tensor k x k x k yang lebih kecil. Ketika didekomposisi secara spektral, tensor ini memiliki komponen yang memiliki hubungan sederhana dengan komponen tensor V x V x V.

  4. Bolak-balik Kuadrat Terkecil digunakan untuk menguraikan tensor k x k x k yang lebih kecil. Ini memberikan peningkatan besar dalam konsumsi dan kecepatan memori. Parameter α dan β dapat ditemukan dengan “tidak memutihkan” keluaran ini dalam dekomposisi spektral.

Setelah parameter model LDA ditemukan, Anda dapat menemukan campuran topik untuk setiap dokumen. Anda menggunakan penurunan gradien stokastik untuk memaksimalkan fungsi kemungkinan mengamati campuran topik tertentu yang sesuai dengan data ini.

Kualitas topik dapat ditingkatkan dengan meningkatkan jumlah topik yang harus dicari dalam pelatihan dan kemudian menyaring topik berkualitas buruk. Ini sebenarnya dilakukan secara otomatis di SageMaker LDA: 25% lebih banyak topik dihitung dan hanya topik dengan prioritas Dirichlet terkait terbesar yang dikembalikan. Untuk melakukan pemfilteran dan analisis topik lebih lanjut, Anda dapat meningkatkan jumlah topik dan memodifikasi model LDA yang dihasilkan sebagai berikut:

> import mxnet as mx > alpha, beta = mx.ndarray.load(‘model.tar.gz’) > # modify alpha and beta > mx.nd.save(‘new_model.tar.gz’, [new_alpha, new_beta]) > # upload to S3 and create new SageMaker model using the console

Untuk informasi selengkapnya tentang algoritma untuk LDA dan SageMaker implementasinya, lihat berikut ini:

  • Animashree Anandkumar, Rong Ge, Daniel Hsu, Sham M Kakade, dan Matus Telgarsky. Dekomposisi Tensor untuk Mempelajari Model Variabel Laten, Jurnal Penelitian Machine Learning, 15:2773 —2832, 2014.

  • David M Blei, Andrew Y Ng, dan Michael I Jordan. Alokasi Dirichlet Laten. Jurnal Penelitian Machine Learning, 3 (Jan) :993—1022, 2003.

  • Thomas L Griffiths dan Mark Steyvers. Menemukan Topik Ilmiah. Prosiding National Academy of Sciences, 101 (suppl 1) :5228—5235, 2004.

  • Tamara G Kolda dan Brett W Bader. Dekomposisi dan Aplikasi Tensor. Ulasan SIAM, 51 (3) :455—500, 2009.