merge - Clustering in Matlab -
Hi, I'm trying to cluster using linkage (). Here is the code that I am trying to do.
y = pdist (data); Z = Linking (Y); T = Cluster (Z, 'Max Clust', 4096); I'm getting the error as follows
The number of elements is greater than the maximum allowed size in MATLAB. ==> Error 135 Z = linkgamex (Y, method); The size of the data is 56710 * 128. How can I apply the code to a small part of the data and then I can better match these groups ?? Or any other solution to the problem
Maybe it can not cluster many objects with algorithms.
Mostly they use distance matrix in their implementation. The pair distance for the 56710 object requires the matrix 56710 * 56709/2 = 1,607,983,695 entries, or some 12 GB RAM; Most likely also need a copy of a work. It is possible that default matlab data structures are not ready to handle this amount of data (and you do not want to wait to finish the algorithm; perhaps that's because they allow "only" a certain amount) .
Try to use a subset, and see how it is alright. If you use 1000 examples, then does it work? How long does the calculation take? If you increase in 2000, how much time does it take?
Comments
Post a Comment