Analisis semantik laten (LSA) (juga disebut pengindeksan semantik laten) menerapkan teknik yang dikenal sebagai dekomposisi nilai tunggal untuk mengurangi sparsitas dalam matriks istilah dokumen. Hal ini mengurangi masalah yang diakibatkan oleh polisemi dan sinonimi—yaitu, satu kata dengan banyak arti atau beberapa kata dengan satu arti yang sama.
Pada dasarnya, sparsitas data menunjukkan ketika sebagian besar nilai data dalam kumpulan data tertentu adalah nol (dengan kata lain, kosong). Hal ini sering terjadi ketika membuat matriks istilah dokumen, di mana setiap kata merupakan baris dan dimensi ruang vektor yang terpisah, karena dokumen sering kali tidak memiliki sebagian besar kata yang mungkin lebih sering muncul di dokumen lain. Tentu saja, teknik prapemrosesan data teks, seperti penghapusan stopword atau stemming dan lematisasi, dapat membantu mengurangi ukuran matriks. LSA menawarkan pendekatan yang lebih bertarget untuk mengurangi sparsitas dan dimensi.
LSA dimulai dengan matriks istilah dokumen, yang menampilkan berapa kali setiap kata muncul di setiap dokumen. Dari sini, LSA menghasilkan matriks dokumen-dokumen dan matriks istilah-istilah. Jika dimensi matriks dokumen-istilah didefinisikan sebagai d dokumen dikali w kata, maka matriks dokumen-dokumen adalah d dikali d dan matriks istilah-istilah w dikali w. Setiap nilai dalam matriks dokumen-dokumen menunjukkan jumlah kata yang dimiliki oleh setiap dokumen. Setiap nilai dalam matriks istilah-istilah menunjukkan jumlah dokumen yang memiliki dua istilah yang sama.9
Dengan menggunakan dua matriks tambahan ini, algoritme LSA melakukan dekomposisi nilai singular pada matriks istilah dokumen awal, menghasilkan matriks khusus vektor eigen yang baru. Matriks khusus ini memecah hubungan dokumen-istilah asli menjadi faktor-faktor independen secara linier. Karena banyak dari faktor-faktor ini mendekati nol, nilai ini diperlakukan sebagai nol dan dikeluarkan dari matriks. Hal ini mengurangi dimensi model.10
Setelah dimensi model dikurangi melalui dekomposisi nilai tunggal, algoritme LSA membandingkan dokumen dalam ruang dimensi yang lebih rendah menggunakan kesamaan kosinus. Kesamaan kosinus menandakan pengukuran sudut antara dua vektor dalam ruang vektor. Ini mungkin nilai antara -1 dan 1. Semakin tinggi skor kosinus, semakin mirip dua item yang dipertimbangkan. Kesamaan cosinus diwakili oleh rumus ini, di mana x dan y menunjukkan dua vektor item dalam ruang vektor:11