Rank: 270530 based on 0 downloads (last 30 days) and 0 file submitted
photo

Mike

E-mail
Company/University
Stanford University

Personal Profile:
Professional Interests:

 

Watch this Author's files

 

Comments and Ratings by Mike View all
Updated File Comments Rating
10 Feb 2011 N-dimensional sparse arrays Creates an N-dimensional sparse array object, for arbitrary N. Author: Matt J

Matt: no problem. out of curiosity, how were you able to find out that matlab stores the # of elmnts for each column? on wiki it claims that matlab sparse uses COO format, which includes only the coordinates of each non-zero entry (so this is clearly a lie!). spinoffs of the Yale format seem very popular and do depend on the length of one of the dimensions and so seem a likely candidate, but they store something different from number of entries/column or row. when i go to sparse.mat i see only the help file, and the help file says nothing about what's going on behind the scenes, so just curious how you got to the bottom of it.

10 Feb 2011 N-dimensional sparse arrays Creates an N-dimensional sparse array object, for arbitrary N. Author: Matt J

Matt, thanks, that clarifies things. i still have a hard time thinking through how number of elements in each column helps on things like matrix multiplication, but perhaps i'm not being imaginative enough.

But given that the size of matlab sparse matrices is proportional to the length of the 2nd dimension, I would vote strongly in favor of going to the (L_1*L_2*L_3...)xL_N sparse matrix representation you mention unless there's a substantial slowdown in basic linear algebra. In the case of very large, very sparse, and very high dimensional matrices (of interest to me), the difference in storage space will be enormous.

10 Feb 2011 N-dimensional sparse arrays Creates an N-dimensional sparse array object, for arbitrary N. Author: Matt J

I see.. but then I'm confused why the memory consumed by normal sparse matrices doesn't depend entirely on the number of non-zero elements, as a sparse matrix is completely characterized by the coordinates and values of each non-zero element (plus,e.g., a pair of integers specifying the overall size in the 2D case). but you're saying the amount of memory of sparse matrices in both cases in linearly proportional to the total size of the matrix being represented?? if so, i think this is the far more pathological problem with matlab sparse matrices than them being limited to 2 dimensions!

10 Feb 2011 N-dimensional sparse arrays Creates an N-dimensional sparse array object, for arbitrary N. Author: Matt J

if i do "a = ndSparse([])" and then "a(1,2,3)=4", i get back:
"a(:,:,1) =
All zero sparse: 1-by-2
a(:,:,2) =
All zero sparse: 1-by-2
a(:,:,3) =
(1,2) 5"
each of these "all zero sparse" matrices take up memory and don't seem worth keeping track of. is it possible to eliminate this behavior?
thanks.

24 Jun 2010 hashtable class general purpose hashtable Author: Christopher

Very nice, but could a method for removing elements.

Contact us