Questions tagged [svd]

Singular Value Decomposition (SVD) is a factorization of a real or complex matrix, with many useful applications in signal processing and statistics.

The Singular Value Decomposition (SVD) of a rectangular matrix A is a decomposition of the form:

A = U S V*

where U and V are orthogonal matrices, and S is a diagonal matrix containing the singular values.

In scientific software for statistical computing, function svd computes this decomposition.

746 questions
7
votes
1 answer

Best fit plane to 3D data: different results for two different methods

(Although there are a number of questions regarding how to best fit a plane to some 3D data on SO, I couldn't find an answer for this issue.) Given N (x, y, z) points, I need the best fit plane a*x + b*y + c*z + d = 0 defined through the a, b, c, d…
Gabriel
  • 40,504
  • 73
  • 230
  • 404
7
votes
1 answer

Memory Efficient Centered Sparse SVD/PCA (in Julia)?

I have a 3 million x 9 million sparse matrix with several billion non-zero entries. R and Python do not allow sparse matrices with more than MAXINT non-zero entries, thus why I found myself using Julia. While scaling this data with the standard…
James
  • 630
  • 1
  • 6
  • 15
7
votes
1 answer

What is difference between PCA , TruncatedSVD and ICA in details?

Can anybody tell me the differences between PCA(Principal component analysis ) , TruncatedSVD(Truncated singular value decomposition) and ICA(Independent component analysis) in detail?
Ashok Lathwal
  • 359
  • 1
  • 4
  • 12
7
votes
1 answer

R - svd() function - infinite or missing values in 'x'

I am constantly getting this error. I am sure the matrix does not have any non-numeric entries. I also tried imputing the matrix, did not work. Anyone know what the error might be? fileUrl <-…
Shubham Saini
  • 738
  • 3
  • 8
  • 18
7
votes
1 answer

In Latent Semantic Analysis, how do you recombine the decomposed matrices after truncating the singular values?

I'm reading Matrix decompositions and latent semantic indexing (Online edition © 2009 Cambridge UP) I'm trying to understand how you reduce the number of dimensions in a matrix. There's an example on page 13 which I'm trying to replicate using…
mtanti
  • 794
  • 9
  • 25
7
votes
2 answers

Difference between TruncatedSVD and svds

I see that the documentation for both sklearn.decomposition.TruncatedSVD and scipy.sparse.linalg.svds mention that they both perform SVD for sparse matrices. What is the difference between them? Thanks.
abhinavkulkarni
  • 2,284
  • 4
  • 36
  • 54
7
votes
1 answer

MATLAB eig returns inverted signs sometimes

I'm trying to write a program that gets a matrix A of any size, and SVD decomposes it: A = U * S * V' Where A is the matrix the user enters, U is an orthogonal matrix composes of the eigenvectors of A * A', S is a diagonal matrix of the singular…
Oria Gruber
  • 1,513
  • 2
  • 22
  • 44
7
votes
3 answers

Parallel implementation for multiple SVDs using CUDA

I'm new to parallel programming using GPU so I apologize if the question is broad or vague. I'm aware there is some parallel SVD function in the CULA library, but what should be the strategy if I have a large number of relatively small matrices to…
Logan Yang
  • 2,364
  • 6
  • 27
  • 43
6
votes
2 answers

Singular Value Decomposition (SVD) outputs a 1-D singular value array, instead of 2-D diagonal matrix [Python]

I was posting a question on similar subject, and encountered another more important question. When I apply SVD to a matrix 'A' (code below) the output I get is the expected 2-D eigenvector matrices ('U' and 'V') and an unexpected 1-D singular value…
enricw
  • 263
  • 4
  • 19
6
votes
1 answer

Right approach to find similar products solely based on content and not on user history using machine learning algorithms

I have around 2-3 million products. Each product follows this structure { "sku": "Unique ID of Product ( String of 20 chars )" "title":"Title of product eg Oneplus 5 - 6GB + 64GB ", "brand":"Brand of product eg OnePlus", …
Yogesh Yadav
  • 4,557
  • 6
  • 34
  • 40
6
votes
1 answer

How to interpret Singular Value Decomposition results (Python 3)?

I'm trying to learn how to reduce dimensionality in datasets. I came across some tutorials on Principle Component Analysis and Singular Value Decomposition. I understand that it takes the dimension of greatest variance and sequentially collapses…
O.rka
  • 29,847
  • 68
  • 194
  • 309
6
votes
2 answers

SVD in a term document matrix do not give me values I want

I am trying to replicate an example in a paper called "An introduction to LSA": An introduction to LSA In the example they have the following term-document matrix: And then they apply SVD and get the following: Trying to replicate this, I wrote…
dpalma
  • 500
  • 5
  • 20
6
votes
4 answers

sparse matrix svd in python

Does anyone know how to perform svd operation on a sparse matrix in python? It seems that there is no such functionality provided in scipy.sparse.linalg.
tuesday
  • 157
  • 3
  • 8
6
votes
2 answers

Is there a way to prevent numpy.linalg.svd running out of memory?

I have 1 million 3d points I am passing to numpy.linalg.svd but it runs out of memory very quickly. Is there a way to break down this operation into smaller chunks? I don't know what it's doing but am I only supposed to pass arrays that represent a…
Joan Venge
  • 315,713
  • 212
  • 479
  • 689
6
votes
2 answers

svd of very large matrix in R program

I have a matrix 60 000 x 60 000 in a txt file, I need to get svd of this matrix. I use R but I don´t know if R can generate it.
user2358634
  • 135
  • 2
  • 4
1 2
3
49 50