Comprensione della decomposizione del valore singolare nel contesto di LSI


9

La mia domanda è generalmente sulla decomposizione del valore singolare (SVD), e in particolare sull'indicizzazione semantica latente (LSI).

Di ', ho che contiene frequenze di 5 parole per 7 documenti.UNword×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')

Ho la fattorizzazione matrice usando SVD: .A = U D V TUNUN=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.

In 1 e 2 , si afferma che:

indica la matrice di somiglianza delle parole, in cui le righe di W o r d S i m rappresentano parole diverse. WordSiom=USWordSiom

WordSim = s$u %*% S

fornisce lamatrice di somiglianzadel documento incui le colonne di D o c S i m rappresentano documenti diversi.DocSiom=SVTDocSiom

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

Domande:

  1. Algebricamente, perché sono e D o C S i m S parola / document matrici di similarità? C'è una spiegazione intuitiva?WordSiomDocSiomS
  2. Sulla base dell'esempio R fornito, possiamo fare osservazioni intuitive sul conteggio delle parole / sulla somiglianza guardando semplicemente e D o c S i m (senza usare la somiglianza del coseno o il coefficiente di correlazione tra righe / colonne)?WordSiomDocSiom

inserisci qui la descrizione dell'immagine


So molto poco di LSI, ma SVD di una matrice è al centro della riduzione della dimensionalità lineare, metodi di mappatura, come componenti principali, biplot, analisi delle corrispondenze. Le "leggi" principali di SVD sono che = proiezione di file di A sugli assi principali; e A U = V D = proiezione di colonne di A sugli assi principali. In un certo senso, si tratta di valori di "somiglianza" tra i punti (righe o colonne) e gli assi principali. Se possa essere trattato come una somiglianza tra i punti stessi dipende dal contesto, penso. UNV=UDUNUN'U=VD'UN
ttnphns,

Ah .. vedo in wikipedia che LSI è solo l' analisi della corrispondenza (CA). Così va meglio. CA è il biplot di una tabella di dati appositamente preparata. Le proiezioni o coordinate sopra menzionate: le usi per tracciare punti di riga e colonna nello spazio degli assi principali. La vicinanza tra i punti di riga, riga e riga indica la loro somiglianza. Tuttavia, il layout sulla trama dipende da come si distribuisce l'inerzia (varianza) sulla riga e sui punti col.
ttnphns,

@ttnphns. Grazie, puoi fornire un riferimento su: " = proiezione delle file di A sugli assi principali e A U = V D = proiezione delle colonne di A sugli assi principali"? Penso che ciò mi chiarirà le cose. Per assi principali, intendi i vettori di autovelo corrispondenti ai primi m valori singolari in D ? Mi sono anche imbattuto: "Per PCA, non abbiamo bisogno di calcolare i singoli vettori sinistri", ma non possiamo comprendere del tutto il perché. UNV=UDUN'U=VD'D
Zhubarb,

2
La tua domanda potrebbe essere migliorata modificandola per riflettere correttamente ciò che afferma quel documento. A pag. 22 definisce come contenente le radici quadrate di D , "limitate" a quelle più grandi. Pertanto né U DD V ' sono coinvolti, né hanno interpretazioni come "matrici di somiglianza". Le matrici rilevanti sono invece U S e S V . Possono essere usati per ricostruire un'approssimazione di A = U D V U ( S 2 ) V SDUDDV'USSV'UN=UDV'U(S2)V'=(US)(SV').
whuber

1
Ho assunto D=svd(A)$drendimenti R radici quadrate dei non zero eigen valori, quindi sono utilizzati . Non ho un problema con l'aspetto di riduzione della dimensionalità e capisco che si può formare un'approssimazione di rango inferiore di A mentre descrivono. Ho trovato la risposta su questo link risponde parzialmente alla mia domanda. UD
Zhubarb,

Risposte:


2

La fattorizzazione a matrice mediante SVD decompone la matrice di input in tre parti:

  • I vettori singolari sinistra . La prima colonna di questa matrice specifica su quale asse le file della matrice di input variano di più. Nel tuo caso, la prima colonna ti dice quali parole variano di più insieme.U
  • I valori singolari . Questi sono ridimensionamenti. Questi sono l'uno rispetto all'altro. Se il primo valore di D è due volte più grande del secondo, significa che il primo vettore singolare (in U e V T ) spiega il doppio della variazione del vettore singolare dei secondi.DDUVT
  • I vettori singolari giuste . La prima riga di questa matrice specifica su quale asse le colonne della matrice di input variano di più. Nel tuo caso, la prima riga ti dice quali documenti variano di più insieme.VT

Quando parole o documenti variano insieme , indica che sono simili. Ad esempio, se la parola medico compare più spesso in un documento, anche la parola infermiere e ospedale si presentano più. Ciò è mostrato dal primo vettore singolare sinistro scalato, la prima colonna di . Puoi validare questo risultato guardando i dati di input. Si noti che quando si verifica un'infermiera, si verifica anche l'ospedale e quando non si verifica, anche l'ospedale non si verifica.WordSiom

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.