arxiv: v1 [cs.lg] 26 Jul 2017

Size: px
Start display at page:

Download "arxiv: v1 [cs.lg] 26 Jul 2017"

Transcription

1 Updating Singular Value Decomposition for Rank One Matrix Perturbation Ratnik Gandhi, Amoli Rajgor School of Engineering & Applied Science, Ahmedabad University, Ahmedabad , India arxiv: v [cslg] 26 Jul 207 Abstract An efficient Singular Value Decomposition (SVD) algorithm is an important tool for distributed and streaming computation in big data problems It is observed that update of singular vectors of a rank- perturbed matrix is similar to a Cauchy matrix-vector product With this observation, in this paper, we present an efficient method for updating Singular Value Decomposition of rank- perturbed matrix in O(n 2 log( ɛ )) time The method uses Fast Multipole Method (FMM) for updating singular vectors in O(n log( ɛ )) time, where ɛ is the precision of computation Keywords: Multipole Method Introduction Updating SVD, Rank- perturbation, Cauchy matrix, Fast SVD is a matrix decomposition technique having wide range of applications, such as image/video compression, real time recommendation system, text mining (Latent Semantic Indexing (LSI)), signal processing, pattern recognition, etc Computation of SVD is rather simpler in case of centralized system where entire data matrix is available at a single location It is more complex when the matrix is distributed over a network of devices Further, increase in complexity is attributed to the real-time arrival of new data Processing of data addresses: ratnikgandhi@ahdunieduin (Ratnik Gandhi), amolirajgor@ietahdunieduin (Amoli Rajgor)

2 over distributed stream-oriented systems require efficient algorithms that generate results and update them in real-time In streaming environment the data is continuously updated and thus the output of any operation performed over the data must be updated accordingly In this paper, a special case of SVD updating algorithm is presented where the updates to the existing data are of rank- Organization of the paper is as follows: Section 3 motivates the problem of updating SVD for a rank- perturbation and presents a characterization to look at the problem from matrix-vector product point of view An existing algorithm for computing fast matrix-vector product using interpolation is discussed in Section 4 Section 5 introduces Fast Multipole Method (FMM) In Section 6 we present an improved algorithm based on FMM for rank- SVD update that runs in O(n 2 log ɛ ) time, where real ɛ > 0 is a desired accuracy parameter Experimental results of the presented algorithms are given in Section 7 For completeness we have explained in details matrix factorization (Appendix A), solution to Sylvester Matrix (Appendix B), FAST algorithm for Cauchy matrix vector product (Appendix C) and Fast Multipole Method (Appendix D) at the end of this paper 2 Related Work In a series of work Gu and others [, 2, 3, 4] present work on rank-one approximate SVD update Apart from the low-rank SVD update, focus of their work is to discuss numerical computations and related accuracies in significant details This leads to accurate computation of singular values, singular vectors and Cauchy matrix-vector product Our work differs from this work as follows: we use matrix factorization that is explicitly based on solution of Sylvester equation [5] to reach Eq (20) that computes updated singular vectors (see Section 32) Subsequently, we reach an equation, Eq (24) (similar to equation (33) in [2]) Further, we show that with this new matrix decomposition we reach the computational complexity O(n 2 log ɛ ) for updating rank- SVD 2

3 3 SVD of Rank-One Perturbed Matrices Let SVD of a m n matrix A = UΣV Where, U R m m, Σ R m n and V R n n, where, without loss of generality, we assume, m n Let there be a rank-one update ab to matrix A given by, Â = A + ab () and let Û ˆΣ ˆV denote the new(updated) SVD, where a R m, b R n, Thus, ÂÂ = Û ˆΣˆΣ Û (2) An algorithm for updating SVD of a rank- perturbed matrix is given in Bunch and Nielsen [6] The algorithm updates singular values using characteristic polynomial and computes the updated singular vectors explicitly using the updated singular values From (), ÂÂ = (UΣV + ab )(UΣV + ab ) = UΣV V Σ U + UΣV }{{ } b a + a } b V Σ {{ U } +a }{{} b b b b β ÂÂ = UΣΣ U + ba + a b + βaa (3) Where, b = UΣV b, b = b V Σ U and β = b b From (3) it is clear that the problem of rank- update () is modified to problem of three rank- updates (that is further converted to two rank- updates in (4)) From (2) and (3) we get, a Û } ˆΣˆΣ {{ } Û = U ΣΣ }{{ } U + ba + a b + βaa ˆD D Û ˆDÛ = UDU + ρ a a +ρ 2 b b (4) }{{} Ũ DŨ We consider the model and characterization as in [5] A detailed factorization of this matrix is given in Appendix A 3

4 Refer Appendix Appendix A Eq (A6) for more details Similar computation for right singular vectors is required The following computation is to be done for each rank- update, ie, the procedure below will repeat four times, two times each for updating left and right singular vectors From (4) we have, where ā = U a From (6) we have, From (8) and (6) we get, Ũ DŨ = UDU + ρ a a (5) = U (D + ρ āā ) U, }{{} (6) B B := D + ρ āā (7) B = C D C (Schur-decomposition) (8) Ũ DŨ = U( C }{{} Ũ D C )U }{{} (9) Ũ After adding the rank- perturbation to UDU in (5), the updated singular vector matrix is given by matrix-matrix product Ũ = U C (0) Stange [5], extending the work of [6], presents an efficient way of updating SVD by exploring the underlying structure of the matrix-matrix computations of (0) 3 Updating Singular Values An approach for computing singular values is through eigenvalues Given a matrix Ŝ = S + ρuu, its eigenvalues d can be computed in O(n 2 ) numerical operations by solving characteristic polynomial of (S + ρuu )x = dx, where S = diag(d i ) Golub [7] has shown that the above characteristic polynomial has following form 4

5 w( d) n u 2 i = + ρ () d i d i= Note that in the equation above d is an unknown and thus, though the polynomial function is structurally similar to Eq (24), we can not use FMM for solving it Recall, in order to compute singular values ˆD of updated matrix  we need to update D twice as there are two symmetric rank- updates, ie, for Ũ DŨ = UDU + ρ a a we will update B = D + ρ āā Eq (6) and similarly for Û ˆDÛ = Ũ DŨ + ρ 2 b b we will update B = D + ρ 2 b b At times, while computing eigen-system, some of the eigenvalues and eigenvectors are known (This happens when there is some prior knowledge available about the eigenvalues or when the eigenvalues are approximated by using methods such as power iteration) In such cases efficient SVD update method should focus on updating unknown eigen values and eigen vectors Matrix Deflation is the process of eliminating known eigenvalue from the matrix Bunch, Nielsen and Sorensen [8] extended Golub s work by bringing the notion of deflation They presented a computationally efficient method for computing singular values by deflating the system for cases: () when some values of ā and b are zero, (2) ā = and b = and (3) B and B has eigenvalues with repetition (multiplicity more than one) After deflation, the singular values of the updated matrix ˆD can be obtained by Eq () 32 Updating Singular Vectors In order to update singular vectors the matrix-matrix product of (0) is required A naive method for matrix multiplication has complexity O(n 3 ) We 5

6 exploit matrix factorization in Stange [5] that shows the structure of matrix C to be Cauchy From (7) and (8) we get, C D C = D + ρ āā D C C D = ρ āā C (2) Equation (2) is Sylvester equation with solution, (I n D + ( D) I n ) vec C = vec( ρ āā C) (3) Simplifying LHS of (3) for C we get, ā C = Where, C = [ of the form, (µ λ ) (µ n λ ) ā c (µ λ n ) (µ n λ n ) ā c n ] (4) c c n and from RHS of (3), c i R n are columns ā n Simplifying (5) further we get, c i = ρ ā µ i λ ā n µ i λ n ā c i (5) c i = ρ ā µ i λ ā n µ i λ n [ c i = ρ (ā c i + ā 2 c i2 ) ] ā ā 2 c i ā λ µ i ā n λ n µ i c i2 6

7 Thus, denoting ˆα as ρ (ā c i + ā 2 c i2 ) we get, [ c i = ˆα ā λ µ i Placing (6) in (5) and we have, ˆα ā λ µ i ā n λ n µ i Therefore for each element of c i, = ˆαρ ā µ i λ ā n µ i λ n ] ā n λ (6) n µ i n k= ā 2 k λ k µ i ˆα āj ā j n ā 2 k = ˆαρ λ j µ i µ i λ j λ k µ i k= ( ) n ā 2 k 0 = ˆα + ρ λ k µ i k= }{{} =0 (7) Equation inside the bracket of (7) is the characteristic equation () used for finding updated eigenvalues µ i of D by using eigenvalues of D ie λ As µ i are the zeros of this equation Placing λ k and µ i will make the term in the bracket (7) zero Due to independence of the choice of scalar ˆα, any value of ˆα can be used to scale the matrix C In order to make the final matrix orthogonal, each column of C is scaled by inverse of Euclidean norm of the respective column (8) From Eq (6) matrix notation for C can be written as {}} { ā λ µ λ µ n C = ā n λ n µ λ n µ n }{{} [ ] C= c c n C c c n (8) Where, c i is the Euclidean norm of c i From (8) it is evident that the C matrix is similar to Cauchy matrix and C is the scaled version of Cauchy matrix C In 7

8 order to update singular vectors we need to calculate matrix-matrix product as given in (0) From (8) and (0) we get, ā U C = U ā n λ µ λ µ n λ n µ λ n µ n c c n U C c [ ] = û û n C c n Where, û i = u i ā i and i =,, n c U C = U C c n c U C = U 2 c n [ ] Where, U = û û n and U 2 = U C (9) (20) 32 Trummer s Problem: Cauchy Matrix-Vector Product In (9) there are n vectors in U which are multiplied with Cauchy matrix C The problem of multiplying a Cauchy matrix with a vector is called Trummer s problem As there are n vectors in (9), matrix-matrix product in it can be represented as n matrix-vector products, ie, it is same as solving Trummer s problem n times Section 4 describes an algorithm given in [9] which efficiently computes such matrix-vector product in O(n log 2 (n)) time 4 FAST: Method based on Polynomial Interpolation and FFT Consider the the matrix - (Cauchy) matrix product U 2 = U C of Section 32 This product can be written as 8

9 U 2 = U 2 = [ ] û û n C (2) u u n λ µ λ µ n (22) u n u nn λ n µ λ n µ n The dot product of each row vector of U and the coulmn vector of the Cauchy matrix can be represented in terms of a function of eigenvalues µ i, i =,, n, f(µ ) = = f(µ ) = Hence in general, f(x) = [ ] u u n u u n + + λ µ λ n µ n u j λ j µ j= n j= λ µ λ n µ (23) u j λ j x (24) Equation (24) can be shown as the ratio of two polynomials f(x) = h(x) g(x), h(x) = g(x) h(x) = j= n j= n where, g(x) = (λ j x) (25) u j λ j x n n u j (λ j x) λ j x j= j= (26) (27) The FAST algorithm [9] represents the a matrix-vector product as (24) and (25) It then finds solutions to this problem by the use of interpolation The FAST algorithm of Gerasoulis [9] has been reproduce in Appendix C 9

10 5 Matrix-vector product using FMM The FAST algorithm in [9] has complexity O(n log 2 n) It computes the function f(x) using FFT and interpolation We observe that these two methods are two major procedures that contributes to the overall complexity of FAST algorithm To reduce this complexity we present an algorithm that uses FMM for finding Cauchy matrix-vector product that updates the SVD of rank- perturbed matrix with time complexity O(n 2 log( ɛ )) Recall from Section 32, update of singular vectors require matrix-(cauchy) matrix product U 2 = U C, This product is represented as the function below f(µ i ) = n j= We use FMM to compute this function u j µ i λ j 5 Fast Multipole Method (FMM) An algorithm for computing potential and force of n particles in a system is given in Greengard and Rokhlin [0] This algorithm enables fast computation of forces in an n-body problem by computing interactions among points in terms of far-field and local expansions It starts with clustering particles in groups such that the inter-cluster and intra-cluster distance between points make them wellseparated Forces between the clusters are computed using Multipole expansion Dutt et al [] describes the idea of FMM for particles in one dimension and presents an algorithm for evaluating sums of the form, f(x) = N α k φ(x x k ) (28) k= Where, {α,, α N } is a set of complex numbers and φ(x) can be a function that is singular at x = 0 and smooth every where Based on the choice of function, (28) can be used to evaluate sum of different forms for example: f(x) = N k= α k x x k (29) 0

11 where, φ(x) = x Dutt et al [] presents an algorithm for computing summation (29) using FMM that runs in O(n log( ɛ )) 52 Summation using FMM Consider well separated points {x, x 2,, x N } and {y,, y M } in R such that for points x 0, y 0 R and r > 0, r R x i x 0 < r i =,, N y i y 0 < r i =,, M and x 0 y 0 > 4r For a function defined as f : R C such that f(x) = N k= α k x x k (30) where, {α,, α k } is a set of complex numbers Given f(x), the task is to find f(y ),, f(y M ) 6 Rank-One SVD update In this section, we present Algorithm 6 that uses FMM and updates Singular Value Decomposition in O(n 2 log( ɛ )) time 6 Algorithm: Update SVD of rank- modified matrix using FMM INPUT A R m n = UΣV T, a R m and b R n OUTPUT U n, Σ n, and V n STEP Compute b = UΣV T b, ã = V Σ T U T a, β = b T b, α = a T a, D u = ΣΣ T and D v = Σ T Σ STEP 2 Compute the Schur decomposition of [ a b ] [ Q u = a b ] β 0 = Q u ρ 0 0 ρ 2 Q T u and

12 STEP 3 Compute the Schur decomposition of [ b ã ] [ Q v = a 2 b 2 ] α 0 = Q v ρ 0 0 ρ 2 Q T v STEP 4 Compute updated left singular vector Ũ and D by calling the procedure RankOneUpdate(U, a, D, ρ ) - Algorithm 62 STEP 5 Compute left singular vector of Â, ie, U n and D n by calling the procedure RankOneUpdate(Ũ, b D, ρ 2 ) STEP 6 Compute updated right singular vector Ṽ and D v by calling the procedure RankOneUpdate(V, a 2, D v, ρ 3 ) STEP 7 Compute right singular vector of  ie V n and D vn by calling the procedure RankOneUpdate(Ṽ, b 2, Dv, ρ 4 ) STEP 8 Find singular values by computing square root of the updated eigenvalues Σ n = D n Note that the Schur decomposition of Steps 2 and 3 are computed over constant size matrices and thus the decomposition will take constant time 62 Algorithm: RankOneUpdate INPUT U, a, D, ρ OUTPUT Ũ, D STEP Compute ā = U T a STEP 2 Compute µ as zeros of the equation w(µ) = + ρ λ µ λ µ n STEP 3 Compute C = λ n µ STEP 4 Compute U = U STEP 5 Compute C = ā ā ā n λ n µ n ā n 2 n i= λ µ λ µ n λ n µ λ n µ n ā 2 i λ i µ and

13 STEP 6 Compute U 2 = U C as n matrix-vector product Where each row-column dot product is represented as a function for each µ i f(µ i ) = n j= U 2 = FMM(λ, µ, U ) - (Appendix D) u j µ i λ j STEP 7 Form Ũ by dividing each column of U 2 by norm of respective column of C 63 Complexity for Rank-One SVD update Theorem Given a matrix A R m n such that m n and precision of computation parameter ɛ > 0, the complexity of computing SVD of a rank- update of A with Algorithm 6 is O(n 2 log( ɛ )) Proof Follows from Algorithm 6 and Table Section Complexity Operation 3 O(n 2 ) Compute Û ˆΣˆΣ Û and ˆV ˆΣ ˆΣ ˆV 3 O(n 2 ) Update singular values solving w(t) = + ρ n z 2 j λ = 0 j t j= 5 O(n log( ɛ )) Update singular vectors as Ũ = U C using FMM O(n 2 log( ɛ )) Total Complexity Table : Rank- SVD update Complexity 7 Numerical Results All the computations for the algorithm were performed on MATLAB over a machine with Intel i5, quad-core, 7 GHz, 64-bit processor with 8 GB RAM 3

14 Matrices used in these experiments are square and generated randomly with values ranging from [, 9] The sample size varies from 2 2 to For computing the matrix vector product we use FMM Algorithm (instead of FAST Algorithm) with machine precision ɛ =5 0 In order to update singular vectors we need to perform two rank- updates (A6) For each such rank- update we use FMM Û ˆDÛ T = UDU T + ρ a a T T +ρ 2 b b (3) }{{} Ũ DŨ T Figure shows the time taken by FAST Algorithm and FMM Algorithm to compute the first rank- update Figure : (A6) Run-time for rank- update Figure 2: Extrapolated run-time for rank- update (A6) 7 Choice of ɛ In earlier computations we fixed the machine precision parameter ɛ for FMM based on the order of the Chebyshev polynomials, ie, ɛ = 5 p, where p is the order of Chebyshev polynomial As we increase the order of polynomials - we expect reduction in the error and increase in updated vectors accuracy This increase in accuracy comes with the cost of higher computational time To show this we fix the input matrix dimension to and generate values of these matrices randomly in the range [0,] Figure 3 shows the error between updated singular vectors generated by Algorithm 6 and exact computation 4

15 of singular vector updates machine precision p = 20 The results in figure justifies our choice of fixed Figure 3: Error with varying p Error is computed using the equation (32) [5], where  is the perturbed matrix, Û ˆΣ ˆV T is the approximation computed using FMM-SVDU and max ˆσ is the directly computed maximum eigenvalue of  T Â Û ˆΣ ˆV Error = max max ˆσ (32) Table 2 shows the accuracy of rank- SVD update using FMM- SVDU for varying sample size Figure 4 shows plot of the accuracy of FMM-SVDU with varying sample size 5

16 Table 2: rank- SVD update accuracy No Dimension Error n n (Eqn 32) Figure 4: Accuracy of FMM-SVDU 6

17 8 Conclusion In this paper we considered the problem of updating Singular Value Decomposition of a rank- perturbed matrix We presented an efficient algorithm for updating SVD of rank- perturbed matrix that uses the Fast Multipole method for improving Cauchy matrix- vector product computational efficiency An interesting and natural extension of this work is to consider updates of rank-k References References [] M Gu, Studies in numerical linear algebra, PhD thesis, Yale University (993) [2] M Gu, S C Eisenstat, A stable and fast algorithm for updating the singular value decomposition, Tech Rep YALEU/DCS/RR-966, Dept of Computer Science, Yale University (993) [3] M Gu, S C Eisenstat, A stable and efficient algorithm for the rank-one modification of the symmetric eigenproblem, SIAM journal on Matrix Analysis and Applications 5 (4) (994) [4] M Gu, S C Eisenstat, Downdating the singular value decomposition, SIAM Journal on Matrix Analysis and Applications 6 (3) (995) [5] P Stange, On the efficient update of the singular value decomposition, PAMM 8 () (2008) [6] J R Bunch, C P Nielsen, Updating the singular value decomposition, Numerische Mathematik 3 (2) (978) 29 [7] G H Golub, Some modified matrix eigenvalue problems, Siam Review 5 (2) (973)

18 [8] J R Bunch, C P Nielsen, D C Sorensen, Rank-one modification of the symmetric eigenproblem, Numerische Mathematik 3 () (978) 3 48 [9] A Gerasoulis, A fast algorithm for the multiplication of generalized Hilbert matrices with vectors, Mathematics of Computation 50 (8) (988) [0] L Greengard, V Rokhlin, A fast algorithm for particle simulations, Journal of computational physics 73 (2) (987) [] A Dutt, M Gu, V Rokhlin, Fast algorithms for polynomial interpolation, integration, and differentiation, SIAM Journal on Numerical Analysis 33 (5) (996) Appendix A Matrix Factorization We consider the matrix factorization in [5] Let SVD of a m n matrix A = UΣV Where, U R m m, Σ R m n and V R n n Here it is assumed that m n Let there be a rank-one update ab to matrix A Eq (A) and let Û ˆΣ ˆV denote the new(updated) SVD, where a R m, b R n  = A + ab (A)  = Û ˆΣ ˆV (A2) In order to find SVD of this updated matrix  we need to compute  and   because left singular vector Û of  is orthonormal eigenvector of  and right singular vector ˆV of  is orthonormal eigenvector of   Â = (Û ˆΣ ˆV )(Û ˆΣ ˆV ) (A3) = Û ˆΣ ˆV ˆV ˆΣ Û Â = Û ˆΣˆΣ Û Where, ˆV ˆV = I (A4) 8

19 ÂÂ = (UΣV + ab )(UΣV + ab ) = (UΣV + ab )(V Σ U + ba ) = UΣV V Σ U + UΣV }{{ } b a + a } b V Σ {{ U } +a }{{} b b b b β ÂÂ = UΣΣ U + ba + a b + βaa Where, V V = I (A5) Where, b = UΣV b, b = b V Σ U and β = b b From Eq (A5) it is clear that the problem of rank- update Eq (A) is modified to problem of three rank- updates that is further converted to two rank- updates in Eq (A6) Equating Eq (A4) and Eq (A5) we get, a Û } ˆΣˆΣ {{ } Û = U ΣΣ }{{ } U + ba + a b + βaa ˆD D Û ˆDÛ = UDU + ba + a b + βaa = UDU + βaa + ba + a b = UDU + (βa + b)a + a b [ = UDU + βa + b a ] a b Û ˆDÛ [ = UDU + a b ] β 0 a b Û ˆDÛ [ = UDU + a b ] Q ρ 0 0 ρ 2 Q a b Where, β 0 = Q ρ 0 0 ρ 2 Q (Schur-decomposition) 9

20 Û ˆDÛ [ = UDU + Û ˆDÛ [ = UDU + Ũ DŨ ] Q a b }{{ [ } ] a b ρ 0 0 ρ 2 ] a b ρ 0 0 ρ 2 Q a ] b } [ {{ } a b a b Û ˆDÛ = UDU + ρ a a +ρ 2 b b (A6) }{{} Similarly for computing right singular vectors do the following   = (UΣV + ab ) (UΣV + ab ) = (V Σ U + ba )(UΣV + ab )   = V Σ U UΣV + V } Σ {{ U a } b + b } a UΣV {{ } +b }{{} a a ã ã α ( ˆV ˆΣ Û )(Û ˆΣ ˆV ) = V Σ ΣV + ãb + bã + αbb Where, U U = I ˆV ˆΣ ˆΣ ˆV = V Σ ΣV + ρ 3 a 2 a 2 + ρ 4 b 2 b 2 (A7) b The following computation is to be done for each rank- update in Eq (A6) and Eq (A7) ie the below procedure will repeat four times, two times each for updating left and right singular vectors From Eq (A6) we have, Ũ DŨ = UDU + ρ a a (A8) = UDU + ρ (UU a )(UU a ) = UDU + ρ (Uā)(Uā) Where, ā = U a = UDU + ρ (Uāā U ) Ũ DŨ = U (D + ρ āā ) U }{{} B From Eq (A9) we have, (A9) B := D + ρ āā (A0) B = C D C (Schur-decomposition) (A) Placing Eq (A) in Eq (A9) we get, 20

21 Ũ DŨ = U( C }{{} Ũ D C )U }{{} (A2) Ũ After the rank- update to UDU Eq (A8) the updated singular vector matrix is given by matrix-matrix product Ũ = U C (A3) Appendix B Solution to Sylvester Equation In Section 32 we discussed method for updating singular vectors For the same we derived solutions to (2) using Sylvester equation In this section we present details of how this solution can be obtained For simplicity consider the case where the dimension of all the matrices (C, D and D) is 2 2 LHS = (I n D + ( D) I n ) vec C = 0 λ 0 µ λ 2 0 µ 2 0 λ µ c 0 λ = µ 0 0 c λ µ 2 0 c λ µ 2 c 22 λ µ c 0 λ = 2 µ 0 0 c λ µ 2 0 c λ 2 µ 2 c 22 vec c c 2 c 2 c 22 2

22 RHS = vec( ρ āā C) = ρ vec = ρ vec ā ā 2 = ρ vec ā ā 2 = ρ vec ā ā 2 ā ā 2 [ ā ā 2 ] c c 2 c 2 c 22 [ ā c + ā 2 c 2 ā c 2 + ā 2 c 22 ] [ ] ā ā 2 c [ ] ā ā 2 c 2 c 2 [ ā c ā c 2 ] [ ] Where, C = c c 2 and c = c c 2 = = ρ vec c ā ā c 2 ā 2 ā c ā 2 ā c 2 ā ā c ā = ρ 2 ā c ā ā c 2 ā 2 ā c 2 c 2 c 2 c 22 c 22 (B) Equating LHS and RHS we get, λ µ λ 2 µ λ µ 2 0 c c 2 c 2 = ρ ā ā c ā 2 ā c ā ā c λ 2 µ 2 c 22 ā 2 ā c 2 22

23 Therefore, Where, c c 2 c 2 c 22 c c 2 c 2 c 22 c c 2 c 2 c 22 c c 2 c 2 c 22 c c 2 λ µ ā ā c 0 λ = ρ 2 µ 0 0 ā 2 ā c 0 0 λ µ 2 0 ā ā c λ 2 µ 2 ā 2 ā c 2 λ µ ā ā c 0 = ρ λ 2 µ 0 0 ā 2 ā c 0 0 λ µ 2 0 ā ā c λ 2 µ 2 ā 2 ā c 2 = ρ = ρ ā ā c λ µ ā 2ā c λ 2 µ ā ā c 2 λ µ 2 ā 2ā c 2 λ 2 µ 2 ā ā c µ λ ā 2ā c µ λ 2 ā ā c 2 µ 2 λ ā 2ā c 2 µ 2 λ 2 = ρ āā c µ λ ā 2ā c µ λ 2 ie c = ρ In general c i = ρ ā µ λ ā 2 µ λ 2 ā µ i λ ā 2 µ i λ n ā c and ā c c 2 c 22 = ρ āā c 2 µ 2 λ ā 2ā c 2 µ 2 λ 2 and c 2 = ρ ā µ 2 λ ā 2 µ 2 λ 2 By placing c and c 2 in C [ ] = c c 2 we get C as below ā c 2 (B2) 23

24 [ C = C = c c 2 ] āā c ā ā c 2 µ λ µ 2 λ ā ā c ā ā c 2 µ λ 2 µ 2 λ 2 C = ā 0 0 ā 2 C = ā 0 0 ā 2 µ λ µ 2 λ ā c ā c 2 ā c µ λ 2 ā c 2 µ 2 λ 2 µ λ µ 2 λ µ λ 2 µ 2 λ 2 ā c 0 0 ā c 2 Appendix C FAST Algorithm In this section we present FAST Algorithm [9] that computes functions of the form (24) using polynomial interpolation in time O(n log 2 n) Compute the coefficients of g(x) in its power form, by using FFT polynomial multiplication, in O(n(log n) 2 ) time Decription: Uses FFT for speedy multiplication which reduces complexity of multiplication to O(n log(n)) from O(n 2 ) Input: Function g(x) and eigenvalues of D ie [µ,, µ n ] Output: Coefficients of g(x) ie [a 0, a,, a n ] Complexity: O(n log 2 n) 2 Compute the coefficients of g (x) in O(n) time Description: Differentiate the function g(x) and then compute its coefficients Input: Function g(x) Output: Coefficients of g (x) ie [b 0, b,, b n ] Complexity: O(n) 24

25 3 Evaluate g(λ i ), g (λ i ) and g(µ i ) Description: For the functions g(x) and g (x) evaluate their values at λ i and µ i Input: Function g(x) and g (x), eigenvalues [λ, λ 2,, λ n ] of D and [µ, µ 2,, µ n ] of D Output: g(λ i ), g (λ i ) and g(µ i ) Complexity: O(n log 2 n) 4 Compute h j = u j g (λ j ) Description: For each eigenvalue λ j compute its function value h(λ j ) ie find the points (λ j, u j g (λ j )) Input: [λ, λ 2,, λ n ] Output: h j Complexity: O(n) 5 Find interpolation polynomial h(x) for the points (λ j, h j ) Description: Given the function values and input ie points (λ j, h j ) find interpolation polynomial for n points Input: Points (λ j, h j ) Output: h(x) Complexity: O(n log 2 n) 6 Compute v i = h (µ i) g(µ i) Description: Compute the ratio v i = h (µ i) g(µ i) for each µ i where, v i is value of f(µ i ) at each µ i Input: Function h(x) and g(x) and [µ, µ 2,, µ n ] 25

26 Output:f(µ i ) = v i Complexity: O(n) Appendix D Fast Multipole Method Appendix D Interpolation and Chebyshev Nodes Chebyshev nodes are the roots of the Chebyshev polynomials and they are used as points for interpolation These nodes lie in the range [, ] A polynomial of degree less than or equal to n can fit over n Chebyshev nodes For Chebyshev nodes the approximating polynomial is computed using Lagrange interpolation Expansions are used to quantify interactions among points Expansions are only computed for points which are well-separated from each other No Expansion Description 2 Φ l,i Ψ l,i Far-field expansion is computed for points withing the cluster/sub-interval i of level l Local expansion is computed for points which are well seperated from sub-interval i of level l Table D3: Expansions used in FMM Appendix D2 FMM Algorithm STEP Description: Decide the size of Chebyshev expansion ie, p = log 5 (ɛ) = log 5 ( ɛ ) where ɛ > is the precision of computation or machine accuracy parameter Input: ɛ Output: p Complexity: O() 26

27 STEP 2 Description: Set s as the number of points in the cell of finest level (s 2p) and level of finest division nlevs = log 2 ( N s ) where, N is the number of points Input: N and p Output: s and nlevs Complexity: O() STEP 3 Description: Consider p Chebyshev nodes defined over an interval [, ] of the form below Where, i =,, p ( 2i t i = cos p π ) 2 (D) STEP 4 Description: Consider Chebyshev polynomials of the form Where, j =,, p u j (t) = p k= k j t t k t j t k (D2) STEP 5 Description: Calculate the far-field expansion Φ l,i at i th subinterval of level l For i th interval of level l (nlevs) far-field expansion due to points in interval [x 0 r, x 0 + r] about center of the interval x 0 is defined by a vector of size p as Φ nlevs,i = N t i α k 3r t i (x k x 0 ) k= Input: l = nlevs, α k, x k, x 0, r, t i for i =,, 2 nlevs, Output: Φ nlevs,i Complexity: O(N p) (D3) STEP 6 [Bottom-up approach] Description: Compute the far-field expansion of individual subintervals 27

28 in terms of far-field expansion of their children These are represented by p p matrix defined as below M L (i, j) = u j ( ti 2 + t i ) M R (i, j) = u j ( ti 2 t i ) (D4) (D5) Where, i =,, p and j =,, p {u,, u p } and {t,, t p } are as defined in Eq (D2) and Eq (D) respectively Far-field expansion for i th subinterval of level l due to far-field expansion of its children is computed by shifting children s far-field expansion by M L or M R and adding those shifts as below Φ l,i = M L Φ l+,2i l + M R Φ l+,2i (D6) Input: M L, M R and Φ Output: Φ l,i Complexity: O( 2Np2 s ) STEP 7 Description: Calculate the local expansion Ψ l,i at i th subinterval of level l For i th interval of level l local expansion due to points outside the interval [y 0 r, y 0 + r] about center of the interval y 0 is defined by a vector of size p as Ψ i = Input: t i, α k, r, x k,and x 0 Output: Ψ i Complexity: O(N p) N α k rt i (x k x 0 ) k= (D7) STEP 8 [Top-down approach] Description: Compute the local expansion of individual subintervals in 28

29 terms of local expansion of their parents These are represented by p p matrix defined as below ( ti ) S L (i, j) = u j 2 ( ti + ) S R (i, j) = u j 2 (D8) (D9) Where, i =,, p and j =,, p {u,, u p } and {t,, t p } are as defined in Eq (D2) and Eq (D) respectively Compute local expansions using far-field expansion using p p matrix defined as below ( 3 ) T (i, j) = u j t i 6 ( 3 ) T 2 (i, j) = u j t i 4 ( 3 ) T 3 (i, j) = u j t i + 4 ( 3 ) T 4 (i, j) = u j t i + 6 (D0) (D) (D2) (D3) Local expansion for each subinterval at finer level is computed using local expansion of their parents For this, first the local expansion of parent interval are shifted by S L or S R and then the result is added with interactions of subinterval with other well separated subintervals (which were not considered at the parent level) Ψ l+,2i = S L Ψ l,i +T Φ l+,2i 3 +T 3 Φ l+,2i+ +T 4 Φ l+,2i+2 (D4) Ψ l+,2i = S R Ψ l,i + T Φ l+,2i 3 + T 2 Φ l+,2i 2 + T 4 Φ l+,2i+2 (D5) Input: S L, S R, T, T 2, T 3, T 4, Φ and Ψ Output: Ψ l+,2i and Ψ l+,2i Complexity: O( 8Np2 s ) 29

30 STEP 9 Description: Evaluate local expansion Ψ nlevs,i at some of {y j } (which falls in subinterval i of level nlevs) to obtain a p size vector Complexity: O(N p) STEP 0 Description: Add all the remaining interactions which are not covered by expansions Compute interactions of each {y k } in subinterval i of level nlevs with all {x j } in subinterval i, i, i + Add all these interactions with the respective local expansions Complexity: O(3N s) Total Complexity of FMM O( + + Np + (2 2Np2 s = O(2 + 3Np + 3Ns + (0Np 2 /s)) = O(2 + 3Np + 6Np + (0Np 2 /2p)) = O(2 + 9Np + (5Np)) = O(2 + 4Np) = O(N p) ( ( )) ( ) = O N log, Where p = log ɛ ɛ ) + Np + (8 2Np2 ) + Np + 3Ns) s 30

Singular Value Decomposition

Singular Value Decomposition Singular Value Decomposition Motivatation The diagonalization theorem play a part in many interesting applications. Unfortunately not all matrices can be factored as A = PDP However a factorization A =

More information

Singular Value Decomposition (SVD)

Singular Value Decomposition (SVD) School of Computing National University of Singapore CS CS524 Theoretical Foundations of Multimedia More Linear Algebra Singular Value Decomposition (SVD) The highpoint of linear algebra Gilbert Strang

More information

A DIVIDE-AND-CONQUER METHOD FOR THE TAKAGI FACTORIZATION

A DIVIDE-AND-CONQUER METHOD FOR THE TAKAGI FACTORIZATION SIAM J MATRIX ANAL APPL Vol 0, No 0, pp 000 000 c XXXX Society for Industrial and Applied Mathematics A DIVIDE-AND-CONQUER METHOD FOR THE TAKAGI FACTORIZATION WEI XU AND SANZHENG QIAO Abstract This paper

More information

Parallel Singular Value Decomposition. Jiaxing Tan

Parallel Singular Value Decomposition. Jiaxing Tan Parallel Singular Value Decomposition Jiaxing Tan Outline What is SVD? How to calculate SVD? How to parallelize SVD? Future Work What is SVD? Matrix Decomposition Eigen Decomposition A (non-zero) vector

More information

Efficient and Accurate Rectangular Window Subspace Tracking

Efficient and Accurate Rectangular Window Subspace Tracking Efficient and Accurate Rectangular Window Subspace Tracking Timothy M. Toolan and Donald W. Tufts Dept. of Electrical Engineering, University of Rhode Island, Kingston, RI 88 USA toolan@ele.uri.edu, tufts@ele.uri.edu

More information

Principal Component Analysis

Principal Component Analysis Machine Learning Michaelmas 2017 James Worrell Principal Component Analysis 1 Introduction 1.1 Goals of PCA Principal components analysis (PCA) is a dimensionality reduction technique that can be used

More information

Linear Algebra. Session 12

Linear Algebra. Session 12 Linear Algebra. Session 12 Dr. Marco A Roque Sol 08/01/2017 Example 12.1 Find the constant function that is the least squares fit to the following data x 0 1 2 3 f(x) 1 0 1 2 Solution c = 1 c = 0 f (x)

More information

Notes on singular value decomposition for Math 54. Recall that if A is a symmetric n n matrix, then A has real eigenvalues A = P DP 1 A = P DP T.

Notes on singular value decomposition for Math 54. Recall that if A is a symmetric n n matrix, then A has real eigenvalues A = P DP 1 A = P DP T. Notes on singular value decomposition for Math 54 Recall that if A is a symmetric n n matrix, then A has real eigenvalues λ 1,, λ n (possibly repeated), and R n has an orthonormal basis v 1,, v n, where

More information

A Divide-and-Conquer Method for the Takagi Factorization

A Divide-and-Conquer Method for the Takagi Factorization A Divide-and-Conquer Method for the Takagi Factorization Wei Xu 1 and Sanzheng Qiao 1, Department of Computing and Software, McMaster University Hamilton, Ont, L8S 4K1, Canada. 1 xuw5@mcmaster.ca qiao@mcmaster.ca

More information

COMP 558 lecture 18 Nov. 15, 2010

COMP 558 lecture 18 Nov. 15, 2010 Least squares We have seen several least squares problems thus far, and we will see more in the upcoming lectures. For this reason it is good to have a more general picture of these problems and how to

More information

be a Householder matrix. Then prove the followings H = I 2 uut Hu = (I 2 uu u T u )u = u 2 uut u

be a Householder matrix. Then prove the followings H = I 2 uut Hu = (I 2 uu u T u )u = u 2 uut u MATH 434/534 Theoretical Assignment 7 Solution Chapter 7 (71) Let H = I 2uuT Hu = u (ii) Hv = v if = 0 be a Householder matrix Then prove the followings H = I 2 uut Hu = (I 2 uu )u = u 2 uut u = u 2u =

More information

Applied Linear Algebra in Geoscience Using MATLAB

Applied Linear Algebra in Geoscience Using MATLAB Applied Linear Algebra in Geoscience Using MATLAB Contents Getting Started Creating Arrays Mathematical Operations with Arrays Using Script Files and Managing Data Two-Dimensional Plots Programming in

More information

you expect to encounter difficulties when trying to solve A x = b? 4. A composite quadrature rule has error associated with it in the following form

you expect to encounter difficulties when trying to solve A x = b? 4. A composite quadrature rule has error associated with it in the following form Qualifying exam for numerical analysis (Spring 2017) Show your work for full credit. If you are unable to solve some part, attempt the subsequent parts. 1. Consider the following finite difference: f (0)

More information

18.06 Problem Set 10 - Solutions Due Thursday, 29 November 2007 at 4 pm in

18.06 Problem Set 10 - Solutions Due Thursday, 29 November 2007 at 4 pm in 86 Problem Set - Solutions Due Thursday, 29 November 27 at 4 pm in 2-6 Problem : (5=5+5+5) Take any matrix A of the form A = B H CB, where B has full column rank and C is Hermitian and positive-definite

More information

Updating the Centroid Decomposition with Applications in LSI

Updating the Centroid Decomposition with Applications in LSI Updating the Centroid Decomposition with Applications in LSI Jason R. Blevins and Moody T. Chu Department of Mathematics, N.C. State University May 14, 24 Abstract The centroid decomposition (CD) is an

More information

. = V c = V [x]v (5.1) c 1. c k

. = V c = V [x]v (5.1) c 1. c k Chapter 5 Linear Algebra It can be argued that all of linear algebra can be understood using the four fundamental subspaces associated with a matrix Because they form the foundation on which we later work,

More information

Singular Value Decomposition

Singular Value Decomposition Chapter 5 Singular Value Decomposition We now reach an important Chapter in this course concerned with the Singular Value Decomposition of a matrix A. SVD, as it is commonly referred to, is one of the

More information

Dimensionality Reduction: PCA. Nicholas Ruozzi University of Texas at Dallas

Dimensionality Reduction: PCA. Nicholas Ruozzi University of Texas at Dallas Dimensionality Reduction: PCA Nicholas Ruozzi University of Texas at Dallas Eigenvalues λ is an eigenvalue of a matrix A R n n if the linear system Ax = λx has at least one non-zero solution If Ax = λx

More information

Matrices and Vectors. Definition of Matrix. An MxN matrix A is a two-dimensional array of numbers A =

Matrices and Vectors. Definition of Matrix. An MxN matrix A is a two-dimensional array of numbers A = 30 MATHEMATICS REVIEW G A.1.1 Matrices and Vectors Definition of Matrix. An MxN matrix A is a two-dimensional array of numbers A = a 11 a 12... a 1N a 21 a 22... a 2N...... a M1 a M2... a MN A matrix can

More information

Basic Calculus Review

Basic Calculus Review Basic Calculus Review Lorenzo Rosasco ISML Mod. 2 - Machine Learning Vector Spaces Functionals and Operators (Matrices) Vector Space A vector space is a set V with binary operations +: V V V and : R V

More information

Linear Algebra Massoud Malek

Linear Algebra Massoud Malek CSUEB Linear Algebra Massoud Malek Inner Product and Normed Space In all that follows, the n n identity matrix is denoted by I n, the n n zero matrix by Z n, and the zero vector by θ n An inner product

More information

Dominant feature extraction

Dominant feature extraction Dominant feature extraction Francqui Lecture 7-5-200 Paul Van Dooren Université catholique de Louvain CESAME, Louvain-la-Neuve, Belgium Goal of this lecture Develop basic ideas for large scale dense matrices

More information

DELFT UNIVERSITY OF TECHNOLOGY

DELFT UNIVERSITY OF TECHNOLOGY DELFT UNIVERSITY OF TECHNOLOGY REPORT -09 Computational and Sensitivity Aspects of Eigenvalue-Based Methods for the Large-Scale Trust-Region Subproblem Marielba Rojas, Bjørn H. Fotland, and Trond Steihaug

More information

Preliminary Examination, Numerical Analysis, August 2016

Preliminary Examination, Numerical Analysis, August 2016 Preliminary Examination, Numerical Analysis, August 2016 Instructions: This exam is closed books and notes. The time allowed is three hours and you need to work on any three out of questions 1-4 and any

More information

Notes on Eigenvalues, Singular Values and QR

Notes on Eigenvalues, Singular Values and QR Notes on Eigenvalues, Singular Values and QR Michael Overton, Numerical Computing, Spring 2017 March 30, 2017 1 Eigenvalues Everyone who has studied linear algebra knows the definition: given a square

More information

STA141C: Big Data & High Performance Statistical Computing

STA141C: Big Data & High Performance Statistical Computing STA141C: Big Data & High Performance Statistical Computing Numerical Linear Algebra Background Cho-Jui Hsieh UC Davis May 15, 2018 Linear Algebra Background Vectors A vector has a direction and a magnitude

More information

Lecture: Face Recognition and Feature Reduction

Lecture: Face Recognition and Feature Reduction Lecture: Face Recognition and Feature Reduction Juan Carlos Niebles and Ranjay Krishna Stanford Vision and Learning Lab 1 Recap - Curse of dimensionality Assume 5000 points uniformly distributed in the

More information

2. Review of Linear Algebra

2. Review of Linear Algebra 2. Review of Linear Algebra ECE 83, Spring 217 In this course we will represent signals as vectors and operators (e.g., filters, transforms, etc) as matrices. This lecture reviews basic concepts from linear

More information

Functional Analysis Review

Functional Analysis Review Outline 9.520: Statistical Learning Theory and Applications February 8, 2010 Outline 1 2 3 4 Vector Space Outline A vector space is a set V with binary operations +: V V V and : R V V such that for all

More information

Maths for Signals and Systems Linear Algebra in Engineering

Maths for Signals and Systems Linear Algebra in Engineering Maths for Signals and Systems Linear Algebra in Engineering Lectures 13 15, Tuesday 8 th and Friday 11 th November 016 DR TANIA STATHAKI READER (ASSOCIATE PROFFESOR) IN SIGNAL PROCESSING IMPERIAL COLLEGE

More information

STAT 309: MATHEMATICAL COMPUTATIONS I FALL 2017 LECTURE 5

STAT 309: MATHEMATICAL COMPUTATIONS I FALL 2017 LECTURE 5 STAT 39: MATHEMATICAL COMPUTATIONS I FALL 17 LECTURE 5 1 existence of svd Theorem 1 (Existence of SVD) Every matrix has a singular value decomposition (condensed version) Proof Let A C m n and for simplicity

More information

Review problems for MA 54, Fall 2004.

Review problems for MA 54, Fall 2004. Review problems for MA 54, Fall 2004. Below are the review problems for the final. They are mostly homework problems, or very similar. If you are comfortable doing these problems, you should be fine on

More information

Data Mining Lecture 4: Covariance, EVD, PCA & SVD

Data Mining Lecture 4: Covariance, EVD, PCA & SVD Data Mining Lecture 4: Covariance, EVD, PCA & SVD Jo Houghton ECS Southampton February 25, 2019 1 / 28 Variance and Covariance - Expectation A random variable takes on different values due to chance The

More information

Probabilistic Latent Semantic Analysis

Probabilistic Latent Semantic Analysis Probabilistic Latent Semantic Analysis Seungjin Choi Department of Computer Science and Engineering Pohang University of Science and Technology 77 Cheongam-ro, Nam-gu, Pohang 37673, Korea seungjin@postech.ac.kr

More information

Problems. Looks for literal term matches. Problems:

Problems. Looks for literal term matches. Problems: Problems Looks for literal term matches erms in queries (esp short ones) don t always capture user s information need well Problems: Synonymy: other words with the same meaning Car and automobile 电脑 vs.

More information

Inverse Singular Value Problems

Inverse Singular Value Problems Chapter 8 Inverse Singular Value Problems IEP versus ISVP Existence question A continuous approach An iterative method for the IEP An iterative method for the ISVP 139 140 Lecture 8 IEP versus ISVP Inverse

More information

Numerical Linear Algebra Primer. Ryan Tibshirani Convex Optimization /36-725

Numerical Linear Algebra Primer. Ryan Tibshirani Convex Optimization /36-725 Numerical Linear Algebra Primer Ryan Tibshirani Convex Optimization 10-725/36-725 Last time: proximal gradient descent Consider the problem min g(x) + h(x) with g, h convex, g differentiable, and h simple

More information

Linear Algebra (Review) Volker Tresp 2018

Linear Algebra (Review) Volker Tresp 2018 Linear Algebra (Review) Volker Tresp 2018 1 Vectors k, M, N are scalars A one-dimensional array c is a column vector. Thus in two dimensions, ( ) c1 c = c 2 c i is the i-th component of c c T = (c 1, c

More information

Lecture 8. Principal Component Analysis. Luigi Freda. ALCOR Lab DIAG University of Rome La Sapienza. December 13, 2016

Lecture 8. Principal Component Analysis. Luigi Freda. ALCOR Lab DIAG University of Rome La Sapienza. December 13, 2016 Lecture 8 Principal Component Analysis Luigi Freda ALCOR Lab DIAG University of Rome La Sapienza December 13, 2016 Luigi Freda ( La Sapienza University) Lecture 8 December 13, 2016 1 / 31 Outline 1 Eigen

More information

Let A an n n real nonsymmetric matrix. The eigenvalue problem: λ 1 = 1 with eigenvector u 1 = ( ) λ 2 = 2 with eigenvector u 2 = ( 1

Let A an n n real nonsymmetric matrix. The eigenvalue problem: λ 1 = 1 with eigenvector u 1 = ( ) λ 2 = 2 with eigenvector u 2 = ( 1 Eigenvalue Problems. Introduction Let A an n n real nonsymmetric matrix. The eigenvalue problem: EIGENVALE PROBLEMS AND THE SVD. [5.1 TO 5.3 & 7.4] Au = λu Example: ( ) 2 0 A = 2 1 λ 1 = 1 with eigenvector

More information

Computational Methods CMSC/AMSC/MAPL 460. EigenValue decomposition Singular Value Decomposition. Ramani Duraiswami, Dept. of Computer Science

Computational Methods CMSC/AMSC/MAPL 460. EigenValue decomposition Singular Value Decomposition. Ramani Duraiswami, Dept. of Computer Science Computational Methods CMSC/AMSC/MAPL 460 EigenValue decomposition Singular Value Decomposition Ramani Duraiswami, Dept. of Computer Science Hermitian Matrices A square matrix for which A = A H is said

More information

MATH 350: Introduction to Computational Mathematics

MATH 350: Introduction to Computational Mathematics MATH 350: Introduction to Computational Mathematics Chapter V: Least Squares Problems Greg Fasshauer Department of Applied Mathematics Illinois Institute of Technology Spring 2011 fasshauer@iit.edu MATH

More information

Practical Linear Algebra: A Geometry Toolbox

Practical Linear Algebra: A Geometry Toolbox Practical Linear Algebra: A Geometry Toolbox Third edition Chapter 12: Gauss for Linear Systems Gerald Farin & Dianne Hansford CRC Press, Taylor & Francis Group, An A K Peters Book www.farinhansford.com/books/pla

More information

Foundations of Computer Vision

Foundations of Computer Vision Foundations of Computer Vision Wesley. E. Snyder North Carolina State University Hairong Qi University of Tennessee, Knoxville Last Edited February 8, 2017 1 3.2. A BRIEF REVIEW OF LINEAR ALGEBRA Apply

More information

Normalized power iterations for the computation of SVD

Normalized power iterations for the computation of SVD Normalized power iterations for the computation of SVD Per-Gunnar Martinsson Department of Applied Mathematics University of Colorado Boulder, Co. Per-gunnar.Martinsson@Colorado.edu Arthur Szlam Courant

More information

Linear Algebra and Eigenproblems

Linear Algebra and Eigenproblems Appendix A A Linear Algebra and Eigenproblems A working knowledge of linear algebra is key to understanding many of the issues raised in this work. In particular, many of the discussions of the details

More information

Randomized algorithms for the low-rank approximation of matrices

Randomized algorithms for the low-rank approximation of matrices Randomized algorithms for the low-rank approximation of matrices Yale Dept. of Computer Science Technical Report 1388 Edo Liberty, Franco Woolfe, Per-Gunnar Martinsson, Vladimir Rokhlin, and Mark Tygert

More information

Fall TMA4145 Linear Methods. Exercise set Given the matrix 1 2

Fall TMA4145 Linear Methods. Exercise set Given the matrix 1 2 Norwegian University of Science and Technology Department of Mathematical Sciences TMA445 Linear Methods Fall 07 Exercise set Please justify your answers! The most important part is how you arrive at an

More information

APPENDIX A. Background Mathematics. A.1 Linear Algebra. Vector algebra. Let x denote the n-dimensional column vector with components x 1 x 2.

APPENDIX A. Background Mathematics. A.1 Linear Algebra. Vector algebra. Let x denote the n-dimensional column vector with components x 1 x 2. APPENDIX A Background Mathematics A. Linear Algebra A.. Vector algebra Let x denote the n-dimensional column vector with components 0 x x 2 B C @. A x n Definition 6 (scalar product). The scalar product

More information

DATA MINING LECTURE 8. Dimensionality Reduction PCA -- SVD

DATA MINING LECTURE 8. Dimensionality Reduction PCA -- SVD DATA MINING LECTURE 8 Dimensionality Reduction PCA -- SVD The curse of dimensionality Real data usually have thousands, or millions of dimensions E.g., web documents, where the dimensionality is the vocabulary

More information

Multi-Linear Mappings, SVD, HOSVD, and the Numerical Solution of Ill-Conditioned Tensor Least Squares Problems

Multi-Linear Mappings, SVD, HOSVD, and the Numerical Solution of Ill-Conditioned Tensor Least Squares Problems Multi-Linear Mappings, SVD, HOSVD, and the Numerical Solution of Ill-Conditioned Tensor Least Squares Problems Lars Eldén Department of Mathematics, Linköping University 1 April 2005 ERCIM April 2005 Multi-Linear

More information

Preliminary/Qualifying Exam in Numerical Analysis (Math 502a) Spring 2012

Preliminary/Qualifying Exam in Numerical Analysis (Math 502a) Spring 2012 Instructions Preliminary/Qualifying Exam in Numerical Analysis (Math 502a) Spring 2012 The exam consists of four problems, each having multiple parts. You should attempt to solve all four problems. 1.

More information

Lecture II: Linear Algebra Revisited

Lecture II: Linear Algebra Revisited Lecture II: Linear Algebra Revisited Overview Vector spaces, Hilbert & Banach Spaces, etrics & Norms atrices, Eigenvalues, Orthogonal Transformations, Singular Values Operators, Operator Norms, Function

More information

EE731 Lecture Notes: Matrix Computations for Signal Processing

EE731 Lecture Notes: Matrix Computations for Signal Processing EE731 Lecture Notes: Matrix Computations for Signal Processing James P. Reilly c Department of Electrical and Computer Engineering McMaster University September 22, 2005 0 Preface This collection of ten

More information

Applied Mathematics 205. Unit II: Numerical Linear Algebra. Lecturer: Dr. David Knezevic

Applied Mathematics 205. Unit II: Numerical Linear Algebra. Lecturer: Dr. David Knezevic Applied Mathematics 205 Unit II: Numerical Linear Algebra Lecturer: Dr. David Knezevic Unit II: Numerical Linear Algebra Chapter II.3: QR Factorization, SVD 2 / 66 QR Factorization 3 / 66 QR Factorization

More information

Singular Value Decompsition

Singular Value Decompsition Singular Value Decompsition Massoud Malek One of the most useful results from linear algebra, is a matrix decomposition known as the singular value decomposition It has many useful applications in almost

More information

Linear Algebra Methods for Data Mining

Linear Algebra Methods for Data Mining Linear Algebra Methods for Data Mining Saara Hyvönen, Saara.Hyvonen@cs.helsinki.fi Spring 2007 1. Basic Linear Algebra Linear Algebra Methods for Data Mining, Spring 2007, University of Helsinki Example

More information

Lecture 8: Linear Algebra Background

Lecture 8: Linear Algebra Background CSE 521: Design and Analysis of Algorithms I Winter 2017 Lecture 8: Linear Algebra Background Lecturer: Shayan Oveis Gharan 2/1/2017 Scribe: Swati Padmanabhan Disclaimer: These notes have not been subjected

More information

Information Retrieval

Information Retrieval Introduction to Information CS276: Information and Web Search Christopher Manning and Pandu Nayak Lecture 13: Latent Semantic Indexing Ch. 18 Today s topic Latent Semantic Indexing Term-document matrices

More information

EECS 275 Matrix Computation

EECS 275 Matrix Computation EECS 275 Matrix Computation Ming-Hsuan Yang Electrical Engineering and Computer Science University of California at Merced Merced, CA 95344 http://faculty.ucmerced.edu/mhyang Lecture 6 1 / 22 Overview

More information

STA141C: Big Data & High Performance Statistical Computing

STA141C: Big Data & High Performance Statistical Computing STA141C: Big Data & High Performance Statistical Computing Lecture 5: Numerical Linear Algebra Cho-Jui Hsieh UC Davis April 20, 2017 Linear Algebra Background Vectors A vector has a direction and a magnitude

More information

Math 307 Learning Goals. March 23, 2010

Math 307 Learning Goals. March 23, 2010 Math 307 Learning Goals March 23, 2010 Course Description The course presents core concepts of linear algebra by focusing on applications in Science and Engineering. Examples of applications from recent

More information

Fast matrix algebra for dense matrices with rank-deficient off-diagonal blocks

Fast matrix algebra for dense matrices with rank-deficient off-diagonal blocks CHAPTER 2 Fast matrix algebra for dense matrices with rank-deficient off-diagonal blocks Chapter summary: The chapter describes techniques for rapidly performing algebraic operations on dense matrices

More information

Example Linear Algebra Competency Test

Example Linear Algebra Competency Test Example Linear Algebra Competency Test The 4 questions below are a combination of True or False, multiple choice, fill in the blank, and computations involving matrices and vectors. In the latter case,

More information

Spectral Clustering on Handwritten Digits Database

Spectral Clustering on Handwritten Digits Database University of Maryland-College Park Advance Scientific Computing I,II Spectral Clustering on Handwritten Digits Database Author: Danielle Middlebrooks Dmiddle1@math.umd.edu Second year AMSC Student Advisor:

More information

Applied Linear Algebra in Geoscience Using MATLAB

Applied Linear Algebra in Geoscience Using MATLAB Applied Linear Algebra in Geoscience Using MATLAB Contents Getting Started Creating Arrays Mathematical Operations with Arrays Using Script Files and Managing Data Two-Dimensional Plots Programming in

More information

The Singular Value Decomposition

The Singular Value Decomposition The Singular Value Decomposition An Important topic in NLA Radu Tiberiu Trîmbiţaş Babeş-Bolyai University February 23, 2009 Radu Tiberiu Trîmbiţaş ( Babeş-Bolyai University)The Singular Value Decomposition

More information

Linear Algebra & Geometry why is linear algebra useful in computer vision?

Linear Algebra & Geometry why is linear algebra useful in computer vision? Linear Algebra & Geometry why is linear algebra useful in computer vision? References: -Any book on linear algebra! -[HZ] chapters 2, 4 Some of the slides in this lecture are courtesy to Prof. Octavia

More information

ACM106a - Homework 4 Solutions

ACM106a - Homework 4 Solutions ACM106a - Homework 4 Solutions prepared by Svitlana Vyetrenko November 17, 2006 1. Problem 1: (a) Let A be a normal triangular matrix. Without the loss of generality assume that A is upper triangular,

More information

Linear Algebra Review. Vectors

Linear Algebra Review. Vectors Linear Algebra Review 9/4/7 Linear Algebra Review By Tim K. Marks UCSD Borrows heavily from: Jana Kosecka http://cs.gmu.edu/~kosecka/cs682.html Virginia de Sa (UCSD) Cogsci 8F Linear Algebra review Vectors

More information

Computational Methods. Eigenvalues and Singular Values

Computational Methods. Eigenvalues and Singular Values Computational Methods Eigenvalues and Singular Values Manfred Huber 2010 1 Eigenvalues and Singular Values Eigenvalues and singular values describe important aspects of transformations and of data relations

More information

Fast Multipole Methods: Fundamentals & Applications. Ramani Duraiswami Nail A. Gumerov

Fast Multipole Methods: Fundamentals & Applications. Ramani Duraiswami Nail A. Gumerov Fast Multipole Methods: Fundamentals & Applications Ramani Duraiswami Nail A. Gumerov Week 1. Introduction. What are multipole methods and what is this course about. Problems from physics, mathematics,

More information

Linear Algebra Methods for Data Mining

Linear Algebra Methods for Data Mining Linear Algebra Methods for Data Mining Saara Hyvönen, Saara.Hyvonen@cs.helsinki.fi Spring 2007 The Singular Value Decomposition (SVD) continued Linear Algebra Methods for Data Mining, Spring 2007, University

More information

1 Linearity and Linear Systems

1 Linearity and Linear Systems Mathematical Tools for Neuroscience (NEU 34) Princeton University, Spring 26 Jonathan Pillow Lecture 7-8 notes: Linear systems & SVD Linearity and Linear Systems Linear system is a kind of mapping f( x)

More information

Introduction. Chapter One

Introduction. Chapter One Chapter One Introduction The aim of this book is to describe and explain the beautiful mathematical relationships between matrices, moments, orthogonal polynomials, quadrature rules and the Lanczos and

More information

The Singular Value Decomposition (SVD) and Principal Component Analysis (PCA)

The Singular Value Decomposition (SVD) and Principal Component Analysis (PCA) Chapter 5 The Singular Value Decomposition (SVD) and Principal Component Analysis (PCA) 5.1 Basics of SVD 5.1.1 Review of Key Concepts We review some key definitions and results about matrices that will

More information

MATH 122: Matrixology (Linear Algebra) Solutions to Level Tetris (1984), 10 of 10 University of Vermont, Fall 2016

MATH 122: Matrixology (Linear Algebra) Solutions to Level Tetris (1984), 10 of 10 University of Vermont, Fall 2016 MATH : Matrixology (Linear Algebra) Solutions to Level Tetris (984), 0 of 0 University of Vermont, Fall 0 (Q 4, 5) Show that the function f (x, x ) x + 4x x + x does not have a minimum at (0, 0) even though

More information

Stat 159/259: Linear Algebra Notes

Stat 159/259: Linear Algebra Notes Stat 159/259: Linear Algebra Notes Jarrod Millman November 16, 2015 Abstract These notes assume you ve taken a semester of undergraduate linear algebra. In particular, I assume you are familiar with the

More information

Bindel, Fall 2016 Matrix Computations (CS 6210) Notes for

Bindel, Fall 2016 Matrix Computations (CS 6210) Notes for 1 Algorithms Notes for 2016-10-31 There are several flavors of symmetric eigenvalue solvers for which there is no equivalent (stable) nonsymmetric solver. We discuss four algorithmic ideas: the workhorse

More information

Lecture notes: Applied linear algebra Part 1. Version 2

Lecture notes: Applied linear algebra Part 1. Version 2 Lecture notes: Applied linear algebra Part 1. Version 2 Michael Karow Berlin University of Technology karow@math.tu-berlin.de October 2, 2008 1 Notation, basic notions and facts 1.1 Subspaces, range and

More information

ALGORITHM CONSTRUCTION BY DECOMPOSITION 1. INTRODUCTION. The following theorem is so simple it s almost embarassing. Nevertheless

ALGORITHM CONSTRUCTION BY DECOMPOSITION 1. INTRODUCTION. The following theorem is so simple it s almost embarassing. Nevertheless ALGORITHM CONSTRUCTION BY DECOMPOSITION JAN DE LEEUW ABSTRACT. We discuss and illustrate a general technique, related to augmentation, in which a complicated optimization problem is replaced by a simpler

More information

UNIT 6: The singular value decomposition.

UNIT 6: The singular value decomposition. UNIT 6: The singular value decomposition. María Barbero Liñán Universidad Carlos III de Madrid Bachelor in Statistics and Business Mathematical methods II 2011-2012 A square matrix is symmetric if A T

More information

Machine Learning - MT & 14. PCA and MDS

Machine Learning - MT & 14. PCA and MDS Machine Learning - MT 2016 13 & 14. PCA and MDS Varun Kanade University of Oxford November 21 & 23, 2016 Announcements Sheet 4 due this Friday by noon Practical 3 this week (continue next week if necessary)

More information

Applications of Randomized Methods for Decomposing and Simulating from Large Covariance Matrices

Applications of Randomized Methods for Decomposing and Simulating from Large Covariance Matrices Applications of Randomized Methods for Decomposing and Simulating from Large Covariance Matrices Vahid Dehdari and Clayton V. Deutsch Geostatistical modeling involves many variables and many locations.

More information

(a) If A is a 3 by 4 matrix, what does this tell us about its nullspace? Solution: dim N(A) 1, since rank(a) 3. Ax =

(a) If A is a 3 by 4 matrix, what does this tell us about its nullspace? Solution: dim N(A) 1, since rank(a) 3. Ax = . (5 points) (a) If A is a 3 by 4 matrix, what does this tell us about its nullspace? dim N(A), since rank(a) 3. (b) If we also know that Ax = has no solution, what do we know about the rank of A? C(A)

More information

Linear Algebra Background

Linear Algebra Background CS76A Text Retrieval and Mining Lecture 5 Recap: Clustering Hierarchical clustering Agglomerative clustering techniques Evaluation Term vs. document space clustering Multi-lingual docs Feature selection

More information

Machine Learning. Principal Components Analysis. Le Song. CSE6740/CS7641/ISYE6740, Fall 2012

Machine Learning. Principal Components Analysis. Le Song. CSE6740/CS7641/ISYE6740, Fall 2012 Machine Learning CSE6740/CS7641/ISYE6740, Fall 2012 Principal Components Analysis Le Song Lecture 22, Nov 13, 2012 Based on slides from Eric Xing, CMU Reading: Chap 12.1, CB book 1 2 Factor or Component

More information

Lecture notes on Quantum Computing. Chapter 1 Mathematical Background

Lecture notes on Quantum Computing. Chapter 1 Mathematical Background Lecture notes on Quantum Computing Chapter 1 Mathematical Background Vector states of a quantum system with n physical states are represented by unique vectors in C n, the set of n 1 column vectors 1 For

More information

CS 143 Linear Algebra Review

CS 143 Linear Algebra Review CS 143 Linear Algebra Review Stefan Roth September 29, 2003 Introductory Remarks This review does not aim at mathematical rigor very much, but instead at ease of understanding and conciseness. Please see

More information

EIGENVALE PROBLEMS AND THE SVD. [5.1 TO 5.3 & 7.4]

EIGENVALE PROBLEMS AND THE SVD. [5.1 TO 5.3 & 7.4] EIGENVALE PROBLEMS AND THE SVD. [5.1 TO 5.3 & 7.4] Eigenvalue Problems. Introduction Let A an n n real nonsymmetric matrix. The eigenvalue problem: Au = λu λ C : eigenvalue u C n : eigenvector Example:

More information

A Tour of the Lanczos Algorithm and its Convergence Guarantees through the Decades

A Tour of the Lanczos Algorithm and its Convergence Guarantees through the Decades A Tour of the Lanczos Algorithm and its Convergence Guarantees through the Decades Qiaochu Yuan Department of Mathematics UC Berkeley Joint work with Prof. Ming Gu, Bo Li April 17, 2018 Qiaochu Yuan Tour

More information

Numerical Linear Algebra Primer. Ryan Tibshirani Convex Optimization

Numerical Linear Algebra Primer. Ryan Tibshirani Convex Optimization Numerical Linear Algebra Primer Ryan Tibshirani Convex Optimization 10-725 Consider Last time: proximal Newton method min x g(x) + h(x) where g, h convex, g twice differentiable, and h simple. Proximal

More information

Mathematical foundations - linear algebra

Mathematical foundations - linear algebra Mathematical foundations - linear algebra Andrea Passerini passerini@disi.unitn.it Machine Learning Vector space Definition (over reals) A set X is called a vector space over IR if addition and scalar

More information

Mathematical foundations - linear algebra

Mathematical foundations - linear algebra Mathematical foundations - linear algebra Andrea Passerini passerini@disi.unitn.it Machine Learning Vector space Definition (over reals) A set X is called a vector space over IR if addition and scalar

More information

Singular Value Decomposition and its. SVD and its Applications in Computer Vision

Singular Value Decomposition and its. SVD and its Applications in Computer Vision Singular Value Decomposition and its Applications in Computer Vision Subhashis Banerjee Department of Computer Science and Engineering IIT Delhi October 24, 2013 Overview Linear algebra basics Singular

More information

Estimating the Largest Elements of a Matrix

Estimating the Largest Elements of a Matrix Estimating the Largest Elements of a Matrix Samuel Relton samuel.relton@manchester.ac.uk @sdrelton samrelton.com blog.samrelton.com Joint work with Nick Higham nick.higham@manchester.ac.uk May 12th, 2016

More information

Latent Semantic Analysis. Hongning Wang

Latent Semantic Analysis. Hongning Wang Latent Semantic Analysis Hongning Wang CS@UVa VS model in practice Document and query are represented by term vectors Terms are not necessarily orthogonal to each other Synonymy: car v.s. automobile Polysemy:

More information

Fast Algorithms for the Computation of Oscillatory Integrals

Fast Algorithms for the Computation of Oscillatory Integrals Fast Algorithms for the Computation of Oscillatory Integrals Emmanuel Candès California Institute of Technology EPSRC Symposium Capstone Conference Warwick Mathematics Institute, July 2009 Collaborators

More information

Manning & Schuetze, FSNLP (c) 1999,2000

Manning & Schuetze, FSNLP (c) 1999,2000 558 15 Topics in Information Retrieval (15.10) y 4 3 2 1 0 0 1 2 3 4 5 6 7 8 Figure 15.7 An example of linear regression. The line y = 0.25x + 1 is the best least-squares fit for the four points (1,1),

More information

Solutions Preliminary Examination in Numerical Analysis January, 2017

Solutions Preliminary Examination in Numerical Analysis January, 2017 Solutions Preliminary Examination in Numerical Analysis January, 07 Root Finding The roots are -,0, a) First consider x 0 > Let x n+ = + ε and x n = + δ with δ > 0 The iteration gives 0 < ε δ < 3, which

More information