setting input data division ratio
    5 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Hoda abuzied
 el 25 de Ag. de 2011
  
    
    
    
    
    Comentada: Greg Heath
      
      
 el 12 de Mayo de 2017
            how can i change division ratio for input data ???...input data is divided by default into 60% for training data , 20 % for validation & 20 % test data....i want to change these values to 70% for training & 15 % for validation & test....i used the following commands to change them: net.divideparam.trainratio=0.7; net.divideparam.valratio=0.15; net.divideparam.testratio=0.15; but after running the program i didn't find any change occured in division of samples !!!
1 comentario
  Jonny
      
 el 7 de Oct. de 2011
				Hi Hoda, 
Can you please,show me what you edit in divideparam in dividerand.m file?
Thanks
Respuesta aceptada
  Lucas García
    
 el 25 de Ag. de 2011
        Hi Hoda,
Let me paste an example of a simple 2-layer Feed-Forward network, to see if this works for you (you should be able to reproduce with the same dataset -cancer_dataset.mat-, it comes with the NN toolbox):
load cancer_dataset;
% 2 neurons in the first layer (tansig) and 1 neuron in the second layer
% (purelin).
% Levenberg-Maquardt Backpropagation Method is used
mlp_net = newff(cancerInputs,cancerTargets,2,{'tansig'},'trainlm');
% Different sets are randomly created for training, validation and testing
% the network
mlp_net.divideParam.trainRatio = 0.6;
mlp_net.divideParam.valRatio = 0.2;
mlp_net.divideParam.testRatio = 0.2;
mlp_net.trainparam.epochs = 100;
[mlp_net,tr] = train(mlp_net,cancerInputs,cancerTargets);
% Once the network has been trained, we can obtain the Mean Squared Error
% for the best epoch (time when the training has stopped in order to avoid
% overfitting the network).
mse_train = tr.perf(tr.best_epoch + 1); % There is epoch 0, but arrays in 
                                        % MATLAB start in 1.
mse_val = tr.vperf(tr.best_epoch + 1);
mse_test = tr.tperf(tr.best_epoch + 1);
Now, if you check train, validation and test ratios, after the training, you should get:
>> mlp_net.divideParam
ans = 
      Function Parameters for 'dividerand'
      Training Ratio trainRatio: 0.6
      Validation Ratio valRatio: 0.2
      Test Ratio      testRatio: 0.2
By the way, if you are using MATLAB R2011a, you should use feedforwardnet instead of newff.
Hope it helps.
3 comentarios
  Lucas García
    
 el 26 de Ag. de 2011
				It's good to see that you found a way to set your own default values.
The plot epochs vs. gradient is related to the performance function. The network is minimizing some performance function (mean-square error of targets and outputs, by default).
The gradient plot is showing you the gradient of the performance function at each epoch. As the gradient (derivatives) gets smaller and closer to zero, the function will be minimized. That will imply that the outputs are very close to the targets and therefore the network is trained.
  Jonny
      
 el 7 de Oct. de 2011
				Hi Lucas, 
Are different sets randomly created for training, validation and testing from input (matrix) in network? 
Also could you explain me what these three lines of code work 
mse_train = tr.perf(tr.best_epoch + 1); % There is epoch 0, but arrays in 
 % MATLAB start in 1.
mse_val = tr.vperf(tr.best_epoch + 1);
mse_test = tr.tperf(tr.best_epoch + 1);
what is mse_train,mse_val, mse_test - for what they are used further?
thanks for your help :) 
Más respuestas (1)
  grytan sarkar
 el 12 de Mayo de 2017
        Thanks Lucas.
mse_train = tr.perf(tr.best_epoch + 1); % There is epoch 0, but arrays in % MATLAB start in 1. mse_val = tr.vperf(tr.best_epoch + 1); mse_test = tr.tperf(tr.best_epoch + 1); Its really good for me.
I need more information. Is it possible to determine the mean, standard deviation, minimum and maximum value of each input in training, testing and validation data set. If i consider random selection.
1 comentario
  Greg Heath
      
      
 el 12 de Mayo de 2017
				Yes.
It should be straightforward.
What seems to be the problem?
Show your attempts and we will see if it looks ok.
Hope this helps.
Greg
Ver también
Categorías
				Más información sobre Deep Learning Toolbox en Help Center y File Exchange.
			
	Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




