我寫了一個Matlab腳本進行分類。當我執行這個我得到內存不足的錯誤。高效的MATLAB代碼找到分類錯誤
for i =1:size(Y)
if(predictions(i) ~= clasL(find(ismember(mydata,X(i)),'rows')))
error = error+1;
end
end
在上面的代碼Y
和predictions
是維的矢量19928.而mydata
和X
是19928 * 62061和12819點* 62061矩陣。當我執行以下代碼時,出現以下錯誤
Error using ==
Out of memory. Type HELP MEMORY for your options.
Error in ismember (line 62)
tf = (a == s);
Error in myinit (line 105)
if(predictions(i) ~= clasL(find(ismember(mydata,X(i)),1)))
如何克服此問題?請幫幫我。 謝謝
'clasL'是你自己的自定義函數嗎?修改和修復代碼以解決內存問題是困難的或不可能的,而無需知道'clasL'的功能。你可以編輯你的問題,並在其中包含'clasL'函數的代碼? – nrz
對不起。 clasL是維度19928的另一個向量。基本上,clasL包含原始類別標籤,並且預測包含預測的類別標籤。 –