Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
减少Matlab中的迭代次数_Matlab_Neural Network - Fatal编程技术网

减少Matlab中的迭代次数

减少Matlab中的迭代次数,matlab,neural-network,Matlab,Neural Network,我正在创建一个应用程序,用matlab识别不同种类的叶子。一旦我开始训练网络,它将训练1000次迭代(默认值),这个任务需要2个多小时。这是我的代码 clear ; close all; clc fruit_list = ['M','G','B','P']; x = []; y = []; training_dir ='Training Images\'; for i = 1:size(fruit_list,2) directory = strcat(training_dir,fruit

我正在创建一个应用程序,用matlab识别不同种类的叶子。一旦我开始训练网络,它将训练1000次迭代(默认值),这个任务需要2个多小时。这是我的代码

clear ; close all; clc
fruit_list = ['M','G','B','P'];
x = [];
y = [];
training_dir ='Training Images\';
for i = 1:size(fruit_list,2)
    directory = strcat(training_dir,fruit_list(i),'\');
    file_list = dir(strcat(directory,'*JPG'));
    for j = 1:size(file_list)
        im = imread(strcat(directory,file_list(j).name));
        resized = preprocess(im);
        Savefilename = strcat('Preprocessed Training Images\',int2str(i),'+',int2str(j),'.jpg');
        imwrite(resized,Savefilename); 
        col = resized(:);
        x = [x,col];
        o = [0;0;0;0];
        o(i) = 1;
        y = [y,o];
    end
end

nnf = newff(min_max(x),[5 4], {'tansig' 'purelin'});

res = train(nnf,x,y);

pred = sim(res,x);

[val pInd] = max(pred);

for i = pInd
    if i==1
        fprintf('Mango\n');
    elseif i == 2
        fprintf('Guava\n');
    elseif i == 3
        fprintf('Bo\n');
    elseif i == 4
        fprintf('Papaya\n');    
    end

end
[aval aInd] = max(y);
fprintf('\nTraining Set Accuracy: %f\n', mean(double(pInd == aInd)) * 100);
test_directory = 'Test Images\'
[tes_act,test_pred] = test(test_directory,fruit_list,res);
fprintf('\nTest Set Accuracy: %f\n', mean(double(test_pred == test_act)) * 100);

我想减少培训过程中的迭代次数。我该怎么做?请帮助我。

现在我知道答案了。我找到了一个办法

networkname.trainParam.epochs = #Number of iterations;

您是在谈论对代码进行矢量化(即减少循环的数量)还是在谈论使培训过程更高效->减少培训所需的时间?我想我想减少循环的数量。您分析过吗?问题可能出在矩阵
x
中增长的循环,而不是
训练
本身。是否要减少神经网络的默认迭代次数?是的。默认迭代次数是1000。我想将其减少到100次迭代。