Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Non-negative matrix factorization wikipedia , lookup
Four-vector wikipedia , lookup
Cayley–Hamilton theorem wikipedia , lookup
Jordan normal form wikipedia , lookup
Matrix multiplication wikipedia , lookup
Orthogonal matrix wikipedia , lookup
Matrix calculus wikipedia , lookup
Perron–Frobenius theorem wikipedia , lookup
Introduction to Information Retrieval Introduction to Information Retrieval CS276: Information Retrieval and Web Search Christopher Manning and Pandu Nayak Lecture 13: Latent Semantic Indexing Introduction to Information Retrieval Ch. 18 Today’s topic Latent Semantic Indexing Term-document matrices are very large But the number of topics that people talk about is small (in some sense) Clothes, movies, politics, … Can we represent the term-document space by a lower dimensional latent space? Introduction to Information Retrieval Linear Algebra Background Sec. 18.1 Introduction to Information Retrieval Eigenvalues & Eigenvectors Eigenvectors (for a square mm matrix S) Example (right) eigenvector eigenvalue How many eigenvalues are there at most? only has a non-zero solution if This is a mth order equation in λ which can have at most m distinct solutions (roots of the characteristic polynomial) – can be complex even though S is real. Sec. 18.1 Introduction to Information Retrieval Matrix-vector multiplication é30 0 0ù ê ú S = ê 0 20 0ú êë 0 0 1úû has eigenvalues 30, 20, 1 with corresponding eigenvectors 1 v1 0 0 0 v2 1 0 0 v3 0 1 On each eigenvector, S acts as a multiple of the identity matrix: but as a different multiple on each. æ 2 ö ç ÷ 4 Any vector (say x= ç ÷) ç ÷ the eigenvectors: è 6 ø can be viewed as a combination of x = 2v1 + 4v2 + 6v3 Introduction to Information Retrieval Sec. 18.1 Matrix-vector multiplication Thus a matrix-vector multiplication such as Sx (S, x as in the previous slide) can be rewritten in terms of the eigenvalues/vectors: Sx = S(2v1 + 4v 2 + 6v 3 ) Sx = 2Sv1 + 4Sv 2 + 6Sv 3 = 2l1v1 + 4 l2v 2 + 6 l 3 v 3 Sx = 60v1 + 80v 2 + 6v 3 Even though x is an arbitrary vector, the action of S on x is determined by the eigenvalues/vectors. Sec. 18.1 Introduction to Information Retrieval Matrix-vector multiplication Suggestion: the effect of “small” eigenvalues is small. If we ignored the smallest eigenvalue (1), then instead of æ 60ö ç ÷ ç 80÷ ç ÷ è6ø we would get æ 60ö ç ÷ ç 80÷ ç ÷ è0ø These vectors are similar (in cosine similarity, etc.) Sec. 18.1 Introduction to Information Retrieval Eigenvalues & Eigenvectors For symmetric matrices, eigenvectors for distinct eigenvalues are orthogonal Sv{1,2} = l{1,2}v{1,2}, and l1 ¹ l2 Þ v1 ·v2 = 0 All eigenvalues of a real symmetric matrix are real. for complex l, if S - l I = 0 and S = ST Þ l Î Â All eigenvalues of a positive semidefinite matrix are non-negative "w Î Â , w Sw ³ 0, then if Sv = lv Þ l ³ 0 n T Sec. 18.1 Introduction to Information Retrieval Example Let Then é 2 1 ù S =ê ú ë 1 2 û Real, symmetric. 1 2 S I 2 1 | S I | (2 ) 2 1 0. The eigenvalues are 1 and 3 (nonnegative, real). The eigenvectors are orthogonal (and real): æ 1 öæ 1 ö ç ÷ç ÷ è -1 ø è 1 ø Plug in these values and solve for eigenvectors. Sec. 18.1 Introduction to Information Retrieval Eigen/diagonal Decomposition Let be a square matrix with m linearly independent eigenvectors (a “non-defective” matrix) Theorem: Exists an eigen decomposition diagonal (cf. matrix diagonalization theorem) Columns of U are the eigenvectors of S Diagonal elements of are eigenvalues of Unique for distinct eigenvalues Sec. 18.1 Introduction to Information Retrieval Diagonal decomposition: why/how Let U have the eigenvectors as columns: Then, SU can be written é ù é ê ú ê SU = S ê v1 ... vn ú = ê l1v1 ... ln vn ê ú ê ë û ë é ù ê ú U = ê v1 ... vn ú ê ú ë û ù ù é ùé l1 ú ú ê úê ... ú ú = ê v1 ... vn úê ú ú ê úê l n ú û ë ûêë û Thus SU=U, or U–1SU= And S=UU–1. Introduction to Information Retrieval Sec. 18.1 Diagonal decomposition - example Recall é 2 1 ù S =ê ú; l1 =1, l2 = 3. ë 1 2 û é 1 1 ù æ 1 ö æ 1 ö The eigenvectors ç ÷ and ç ÷ form U = ê -1 1 ú ë û è -1 ø è 1 ø é 1 / 2 -1/ 2 ù -1 Recall Inverting, we have U = ê ú –1 =1. UU ë 1/ 2 1/ 2 û é 1 1 ùé 1 0 ùé 1/ 2 -1/ 2 ù Then, S=UU–1 = ê úê ú úê ë -1 1 ûë 0 3 ûë 1/ 2 1 / 2 û Sec. 18.1 Introduction to Information Retrieval Example continued Let’s divide U (and multiply U–1) by 2 é ùé é ù ù 1/ 2 1 / 2 ú 1 0 ê 1/ 2 -1/ 2 ú ê Then, S= ê ú êë -1/ 2 1 / 2 úûë 0 3 ûêë 1/ 2 1 / 2 úû Q Why? Stay tuned … (Q-1= QT ) Introduction to Information Retrieval Symmetric Eigen Decomposition If is a symmetric matrix: Theorem: There exists a (unique) eigen decomposition S = QLQT where Q is orthogonal: Q-1= QT Columns of Q are normalized eigenvectors Columns are orthogonal. (everything is real) Sec. 18.1 Sec. 18.1 Introduction to Information Retrieval Exercise Examine the symmetric eigen decomposition, if any, for each of the following matrices: 0 1 1 0 0 1 1 0 1 2 2 3 2 2 2 4 Introduction to Information Retrieval Time out! I came to this class to learn about text retrieval and mining, not to have my linear algebra past dredged up again … But if you want to dredge, Strang’s Applied Mathematics is a good place to start. What do these matrices have to do with text? Recall M N term-document matrices … But everything so far needs square matrices – so … Introduction to Information Retrieval Similarity Clustering We can compute the similarity between two document vector representations xi and xj by xixjT Let X = [x1 … xN] Then XXT is a matrix of similarities XXT is symmetric So XXT = QΛQT So we can decompose this similarity space into a set of orthonormal basis vectors (given in Q) scaled by the eigenvalues in Λ This leads to PCA (Principal Components Analysis) 17 Sec. 18.2 Introduction to Information Retrieval Singular Value Decomposition For an M N matrix A of rank r there exists a factorization (Singular Value Decomposition = SVD) as follows: T A =USV MM (Not proven here.) MN V is NN Sec. 18.2 Introduction to Information Retrieval Singular Value Decomposition A =USV MM T MN V is NN AAT = QΛQT AAT = (UΣVT)(UΣVT)T = (UΣVT)(VΣUT) = UΣ2UT The columns of U are orthogonal eigenvectors of AAT. The columns of V are orthogonal eigenvectors of ATA. Eigenvalues 1 … r of AAT are the eigenvalues of ATA. s i = li S = diag (s 1...s r ) Singular values Introduction to Information Retrieval Singular Value Decomposition Illustration of SVD dimensions and sparseness Sec. 18.2 Sec. 18.2 Introduction to Information Retrieval SVD example é ê 1 -1 ê Let A = ê 0 1 ê êë 1 0 Thus M=3, N=2. é ê 0 ê 1/ 2 ê ê 1/ 2 ë 2/ 6 -1 / 6 1/ 6 ù ú ú ú ú úû Its SVD is é ùê 1/ 3 ú ê 1 / 3 úê úê -1 / 3 úê û ë 1 0 0 3 0 0 ù ú úé 1 / 2 úê úêë 1 / 2 ú û ù 1/ 2 ú -1 / 2 úû Typically, the singular values arranged in decreasing order. Sec. 18.3 Introduction to Information Retrieval Low-rank Approximation SVD can be used to compute optimal low-rank approximations. Approximation problem: Find Ak of rank k such that Ak = min A- X X:rank( X )=k F Ak and X are both mn matrices. Typically, want k << r. Frobenius norm Sec. 18.3 Introduction to Information Retrieval Low-rank Approximation Solution via SVD Ak =U diag(s 1,..., s k , 0,..., 0) V T set smallest r-k singular values to zero k Ak = å s u v k i=1 T i i i column notation: sum of rank 1 matrices Introduction to Information Retrieval Sec. 18.3 Reduced SVD If we retain only k singular values, and set the rest to 0, then we don’t need the matrix parts in color Then Σ is k×k, U is M×k, VT is k×N, and Ak is M×N This is referred to as the reduced SVD It is the convenient (space-saving) and usual form for computational applications It’s what Matlab gives you k Sec. 18.3 Introduction to Information Retrieval Approximation error How good (bad) is this approximation? It’s the best possible, measured by the Frobenius norm of the error: min X:rank( X )=k A- X F = A - Ak F = s k+1 where the i are ordered such that i i+1. Suggests why Frobenius error drops as k increases. Introduction to Information Retrieval Sec. 18.3 SVD Low-rank approximation Whereas the term-doc matrix A may have M=50000, N=10 million (and rank close to 50000) We can construct an approximation A100 with rank 100. Of all rank 100 matrices, it would have the lowest Frobenius error. Great … but why would we?? Answer: Latent Semantic Indexing C. Eckart, G. Young, The approximation of a matrix by another of lower rank. Psychometrika, 1, 211-218, 1936. Introduction to Information Retrieval Latent Semantic Indexing via the SVD Introduction to Information Retrieval Sec. 18.4 What it is From term-doc matrix A, we compute the approximation Ak. There is a row for each term and a column for each doc in Ak Thus docs live in a space of k<<r dimensions These dimensions are not the original axes But why? Introduction to Information Retrieval Vector Space Model: Pros Automatic selection of index terms Partial matching of queries and documents (dealing with the case where no document contains all search terms) Ranking according to similarity score (dealing with large result sets) Term weighting schemes (improves retrieval performance) Various extensions Document clustering Relevance feedback (modifying query vector) Geometric foundation Introduction to Information Retrieval Problems with Lexical Semantics Ambiguity and association in natural language Polysemy: Words often have a multitude of meanings and different types of usage (more severe in very heterogeneous collections). The vector space model is unable to discriminate between different meanings of the same word. Introduction to Information Retrieval Problems with Lexical Semantics Synonymy: Different terms may have an identical or a similar meaning (weaker: words indicating the same topic). No associations between words are made in the vector space representation. Introduction to Information Retrieval Polysemy and Context Document similarity on single word level: polysemy and context ring jupiter ••• … planet ... … meaning 1 space voyager saturn ... meaning 2 car company ••• contribution to similarity, if used in 1st meaning, but not if in 2nd dodge ford Introduction to Information Retrieval Sec. 18.4 Latent Semantic Indexing (LSI) Perform a low-rank approximation of documentterm matrix (typical rank 100–300) General idea Map documents (and terms) to a low-dimensional representation. Design a mapping such that the low-dimensional space reflects semantic associations (latent semantic space). Compute document similarity based on the inner product in this latent semantic space Introduction to Information Retrieval Sec. 18.4 Goals of LSI LSI takes documents that are semantically similar (= talk about the same topics), but are not similar in the vector space (because they use different words) and re-represents them in a reduced vector space in which they have higher similarity. Similar terms map to similar location in low dimensional space Noise reduction by dimension reduction Sec. 18.4 Introduction to Information Retrieval Latent Semantic Analysis Latent semantic space: illustrating example courtesy of Susan Dumais Sec. 18.4 Introduction to Information Retrieval Performing the maps Each row and column of A gets mapped into the kdimensional LSI space, by the SVD. Claim – this is not only the mapping with the best (Frobenius error) approximation to A, but in fact improves retrieval. A query q is also mapped into this space, by -1 k qk = q Uk S T Query NOT a sparse vector. Introduction to Information Retrieval LSA Example A simple example term-document matrix (binary) 37 Introduction to Information Retrieval LSA Example Example of C = UΣVT: The matrix U 38 Introduction to Information Retrieval LSA Example Example of C = UΣVT: The matrix Σ 39 Introduction to Information Retrieval LSA Example Example of C = UΣVT: The matrix VT 40 Introduction to Information Retrieval LSA Example: Reducing the dimension 41 Introduction to Information Retrieval Original matrix C vs. reduced C2 = UΣ2VT 42 Introduction to Information Retrieval Why the reduced dimension matrix is better Similarity of d2 and d3 in the original space: 0. Similarity of d2 and d3 in the reduced space: 0.52 ∗ 0.28 + 0.36 ∗ 0.16 + 0.72 ∗ 0.36 + 0.12 ∗ 0.20 + −0.39 ∗ −0.08 ≈ 0.52 Typically, LSA increases recall and hurts precision 43 Introduction to Information Retrieval Sec. 18.4 Empirical evidence Experiments on TREC 1/2/3 – Dumais Lanczos SVD code (available on netlib) due to Berry used in these experiments Running times of ~ one day on tens of thousands of docs [still an obstacle to use!] Dimensions – various values 250-350 reported. Reducing k improves recall. (Under 200 reported unsatisfactory) Generally expect recall to improve – what about precision? Sec. 18.4 Introduction to Information Retrieval Empirical evidence Precision at or above median TREC precision Top scorer on almost 20% of TREC topics Slightly better on average than straight vector spaces Effect of dimensionality: Dimensions 250 300 346 Precision 0.367 0.371 0.374 Introduction to Information Retrieval Sec. 18.4 Failure modes Negated phrases TREC topics sometimes negate certain query/terms phrases – precludes simple automatic conversion of topics to latent semantic space. Boolean queries As usual, freetext/vector space syntax of LSI queries precludes (say) “Find any doc having to do with the following 5 companies” See Dumais for more. Introduction to Information Retrieval Sec. 18.4 But why is this clustering? We’ve talked about docs, queries, retrieval and precision here. What does this have to do with clustering? Intuition: Dimension reduction through LSI brings together “related” axes in the vector space. Introduction to Information Retrieval Simplistic picture Topic 1 Topic 2 Topic 3 Introduction to Information Retrieval Some wild extrapolation The “dimensionality” of a corpus is the number of distinct topics represented in it. More mathematical wild extrapolation: if A has a rank k approximation of low Frobenius error, then there are no more than k distinct topics in the corpus. Introduction to Information Retrieval LSI has many other applications In many settings in pattern recognition and retrieval, we have a feature-object matrix. For text, the terms are features and the docs are objects. Could be opinions and users … This matrix may be redundant in dimensionality. Can work with low-rank approximation. If entries are missing (e.g., users’ opinions), can recover if dimensionality is low. Powerful general analytical technique Close, principled analog to clustering methods. Introduction to Information Retrieval Resources IIR 18 Scott Deerwester, Susan Dumais, George Furnas, Thomas Landauer, Richard Harshman. 1990. Indexing by latent semantic analysis. JASIS 41(6):391—407.