Maximum variable size allowed by the program is exceeded.

21 visualizzazioni (ultimi 30 giorni)
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
.
.
.

Risposta accettata

Daniel Shub
Daniel Shub il 24 Gen 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.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by