Zrozumienie dekompozycji pojedynczej wartości w kontekście LSI


9

Moje pytanie dotyczy generalnie pojedynczej dekompozycji wartości (SVD), a zwłaszcza Latent Semantic Indexing (LSI).

Powiedzmy, że mam który zawiera częstotliwości 5 słów dla 7 dokumentów.Aword×document

A =  matrix(data=c(2,0,8,6,0,3,1,
                   1,6,0,1,7,0,1,
                   5,0,7,4,0,5,6,
                   7,0,8,5,0,8,5,
                   0,10,0,0,7,0,0), ncol=7, byrow=TRUE)
rownames(A) <- c('doctor','car','nurse','hospital','wheel')

Uzyskać faktoryzacji macierzy do za pomocą SVD: .AA=UDVT

s = svd(A)
D = diag(s$d) # singular value matrix
S = diag(s$d^0.5 ) # diag matrix with square roots of singular values.

W 1 i 2 stwierdzono, że:

WordSim=US podaje macierz podobieństwa wyrazów , gdzie wiersze reprezentują różne słowa. WordSim

WordSim = s$u %*% S

DocSim=SVT daje macierz podobieństwa dokumentu, w której kolumny reprezentują różne dokumenty.DocSim

DocSim = S %*% t(s$v)

Pytania:

  1. Algebraicznie, dlaczego macierze podobieństwa wyrazów i dokumentów i ? Czy istnieje intuicyjne wyjaśnienie?WordSimDocSimS
  2. Czy na podstawie podanego przykładu R możemy dokonać jakichkolwiek intuicyjnych obserwacji liczby / podobieństwa słów, po prostu patrząc na i (bez użycia podobieństwa cosinus lub współczynnika korelacji między wierszami / kolumnami)?WordSimDocSim

wprowadź opis zdjęcia tutaj


Niewiele wiem o LSI, ale SVD macierzy jest rdzeniem liniowej redukcji wymiarowości, metod mapowania, takich jak główne składniki, biploty, analiza korespondencji. Głównymi „prawami” SVD jest to, że = rzut rzędów na główne osie; i = rzut kolumn na główne osie. W pewnym sensie są to wartości „podobieństwa” między punktami (rzędami lub kolumnami) a osiami głównymi. To, czy można to potraktować jako podobieństwo między samymi punktami, zależy od kontekstu. AV=UDAAU=VDA
ttnphns

Ach .. W Wikipedii widzę, że LSI to tylko analiza korespondencji (CA). Tak lepiej CA jest dwójką specjalnie przygotowanej tabeli danych. Wyżej wymienione rzuty lub współrzędne - używasz ich do kreślenia punktów rzędów i kolumn w przestrzeni głównych osi. Bliskość między punktami wiersz-wiersz, kolumna-kolumna i kolumna-wiersz odnoszą się do ich podobieństwa. Jednak układ wykresu zależy od tego, w jaki sposób rozkładasz bezwładność (wariancję) na wiersz i punkty kol.
ttnphns

@ttnphns. Dziękuję, czy możesz podać odniesienie do: „ = rzut rzędów A na główne osie; i = rzut kolumn A na główne osie”? Myślę, że to dla mnie wyjaśni. Przez osie główne, czy masz na myśli wektory własne odpowiadające najwyższym m liczbie pojedynczej w ? Natknąłem się również: „W przypadku PCA nie musimy obliczać lewych wektorów pojedynczych”, ale nie możemy w pełni zrozumieć, dlaczego tak się dzieje. AV=UDAU=VDD
Zhubarb

2
Twoje pytanie można poprawić, edytując je, aby poprawnie odzwierciedlało to, co stwierdza ten dokument. Na str. 22 definiuje jako zawierające pierwiastki kwadratowe z , „ograniczone” do największych. Dlatego nie są zaangażowane ani ani , ani nie mają interpretacji jako „macierze podobieństwa”. Odpowiednimi macierzami są zamiast tego i . Można ich użyć do odtworzenia przybliżeniaSDUDDVUSSVA=UDVU(S2)V=(US)(SV).
whuber

1
Zakładam, że D=svd(A)$dw R zwraca pierwiastki kwadratowe niezerowych wartości własnych, stąd użyłem . Nie mam problemu z aspektem zmniejszania wymiarów i rozumiem, że można opisać przybliżenie A rangi niższej rangi podczas ich opisu. Znalazłem odpowiedź na ten link częściowo odpowiada na moje pytanie. UD
Zhubarb

Odpowiedzi:


2

Faktoryzacja macierzy za pomocą SVD rozkłada macierz wejściową na trzy części:

  • Lewe osobliwe wektory U. Pierwsza kolumna tej macierzy określa, na której osi rzędy macierzy wejściowej najbardziej się różnią. W twoim przypadku pierwsza kolumna mówi, które słowa różnią się najbardziej razem.
  • Wartości szczególne D. To są skalowania. Są względem siebie względne. Jeśli pierwsza wartośćD jest dwa razy większy niż drugi, co oznacza, że ​​pierwszy wektor liczby pojedynczej (w U i VT) wyjaśniają dwa razy większą zmienność niż sekundowy wektor osobliwy.
  • Właściwe wektory pojedyncze VT. Pierwszy rząd tej macierzy określa, na której osi kolumny macierzy wejściowej najbardziej się różnią. W twoim przypadku pierwszy wiersz informuje, które dokumenty różnią się najbardziej razem.

Kiedy słowa lub dokumenty różnią się razem , oznacza to, że są one podobne. Na przykład, jeśli słowo „lekarz” występuje częściej w dokumencie, słowo „pielęgniarka i szpital” również występuje częściej. Jest to pokazane przez pierwszy skalowany lewy wektor osobliwy, pierwszą kolumnęWordSimMożna zweryfikować ten wynik, patrząc na dane wejściowe. Zwróć uwagę, że w przypadku wystąpienia pielęgniarki pojawia się również szpital, a gdy nie występuje, szpital również nie występuje.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.