neural network performance analysis
显示 更早的评论
Hello I have trained a neural network using house_dataset in matlab. When I trained the network through the following code the tr.best_tperf was reasonable: [inputs,targets] = house_dataset; hiddenLayerSize = 10; net = fitnet(hiddenLayerSize); net.divideParam.trainRatio = 70/100; net.divideParam.valRatio = 15/100; net.divideParam.testRatio = 15/100; [net,tr] = train(net,inputs,targets); outputs = net(inputs); performance = perform(net,targets,outputs)
however, when we extract the test dataset and consider the performance using these dataset the performance was unacceptable: tInd = tr.testInd; tstOutputs = net(inputs(tInd)); tstPerform = perform(net,targets(tInd),tstOutputs)
Could you please kindly explain the reason for this. Should we use another data division algorithm? best
1 个评论
Greg Heath
2013-11-11
编辑:Greg Heath
2013-11-11
As you can see from my second answer, you didn't use (:,tInd) for the input indices.
Please accept the 2nd answer.
Greg
采纳的回答
更多回答(2 个)
Greg Heath
2013-11-11
0 个投票
Initialize the random number generator at the beginning. So we can compare, use
rng(0).
Also make 10 designs in a loop over random weight initializations obtained by using
net = configure(net,x,t);
[net tr ] = ...
Hope this helps,
Thank you for formally accepting my answer
Greg
类别
在 帮助中心 和 File Exchange 中查找有关 Deep Learning Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!