poster
2019-12-10, 16:49
我有以下代码:
in = [5 columns of data-points]; out = [1 column of data-points]; net = newfit(in,out,5); net = train(net,in,out); 现在我想
访问所生成的错误变量 (以便我可以计算平均错误等)
在一个循环中运行它,所以我想在循环之间重新初始化权重 。
访问存储运行时间的变量
如何从命令行完成这三件事?
[我知道如何使用nntool GUI完成这些操作]
回答:
例:
% some random data in = rand(100,5)'; out = rand(100,1)'; % create a feed-forward back-propagation neural network % (1 hidden layer with 5 neurons) net = newfit(in,out,5); net.trainParam.showWindow = 0; % dont show GUI % repeat 10 times rmse = []; t = []; for i=1:10 net = init(net); % initialize network weights tic net = train(net,in,out); % train predicted = sim(net, in); % test t(i) = toc; r = (out - predicted); % residuals rmse(i) = sqrt(mean(r.^2)); % root mean square error end % plot errors and elapsed times bar([t; rmse]', 'grouped'), xlabel('Runs') legend({'Elapsed Time' 'RMSE'}, 'orientation','horizontal') https://i.stack.imgur.com/FQHGK.png
注意:在R2010b中,不建议使用newfit函数,而改用fitnet (http://www.mathworks.com/help/nnet/ref/fitnet.html) ,请改用以下代码创建网络:
% old %net = newfit(in,out,5); % new net = fitnet(5); % create ANN net = configure(net, in, out); % set input/output sizes according to data
更多&回答... (https://stackoverflow.com/questions/1673489)
in = [5 columns of data-points]; out = [1 column of data-points]; net = newfit(in,out,5); net = train(net,in,out); 现在我想
访问所生成的错误变量 (以便我可以计算平均错误等)
在一个循环中运行它,所以我想在循环之间重新初始化权重 。
访问存储运行时间的变量
如何从命令行完成这三件事?
[我知道如何使用nntool GUI完成这些操作]
回答:
例:
% some random data in = rand(100,5)'; out = rand(100,1)'; % create a feed-forward back-propagation neural network % (1 hidden layer with 5 neurons) net = newfit(in,out,5); net.trainParam.showWindow = 0; % dont show GUI % repeat 10 times rmse = []; t = []; for i=1:10 net = init(net); % initialize network weights tic net = train(net,in,out); % train predicted = sim(net, in); % test t(i) = toc; r = (out - predicted); % residuals rmse(i) = sqrt(mean(r.^2)); % root mean square error end % plot errors and elapsed times bar([t; rmse]', 'grouped'), xlabel('Runs') legend({'Elapsed Time' 'RMSE'}, 'orientation','horizontal') https://i.stack.imgur.com/FQHGK.png
注意:在R2010b中,不建议使用newfit函数,而改用fitnet (http://www.mathworks.com/help/nnet/ref/fitnet.html) ,请改用以下代码创建网络:
% old %net = newfit(in,out,5); % new net = fitnet(5); % create ANN net = configure(net, in, out); % set input/output sizes according to data
更多&回答... (https://stackoverflow.com/questions/1673489)