Maximum variable size allowed by the program is exceeded.

5 vues (au cours des 30 derniers jours)
Lester Lim
Lester Lim le 24 Jan 2013
It's occuring in the knnclassifier!!! Need help!
Error:
Maximum variable size allowed by the program is exceeded.
Code:
function D = distfun(Train, Test, dist)
%DISTFUN Calculate distances from training points to test points.
[n,p] = size(Train);
D = zeros(n,size(Test,1));
numTest = size(Test,1);
switch dist
case 'sqeuclidean'
for i = 1:numTest
D(:,i) = sum((Train - Test(repmat(i,n,1),:)).^2, 2);
end
case 'cityblock'
for i = 1:numTest
D(:,i) = sum(abs(Train - Test(repmat(i,n,1),:)), 2);
end
.
.
.
  1 commentaire
Jan
Jan le 24 Jan 2013
Please mention the line, which causes the error.

Connectez-vous pour commenter.

Réponse acceptée

Daniel Shub
Daniel Shub le 24 Jan 2013
The maximum variable size depends on your OS and MATLAB version. Assuming a recent 64-bit OS and 64-bit MATLAB, the maximum variable size (~8 TB) is such that you probably don't have enough processing power to do anything with it effectively. For 32-bit systems and some older 64-bit systems you might actually have the processing power to use such a large matrix and could benefit from a OS/MATLAB upgrade.
  1 commentaire
Lester Lim
Lester Lim le 25 Jan 2013
I tried separating the data, it also works but I have to put in all parts...

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Statistics and Machine Learning Toolbox dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by