Improve accuracy of small data set using Neural Network
6 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hello ,i have an input matrix 4x24( 4features of 24 patients which 10 are positive and 14 negative)and target 2x24 in eye(2) form for a binary problem classification .I use patternnet and network node topology 4-3-2 with the transfer functions in default(tansig) .The total accuracy is 66% .If i dont use the validation set the accuracy goes up 90%.Is that correct or overfitting? Is it possible to have unbalanced data? How can i improve accuracy in this tiny data set?I use this code for k fold cross validation for 10 repetitions .
0 Commenti
Risposta accettata
Greg Heath
il 7 Ott 2016
[I N ] = input; % [ 4 24 ]
[O N ] = target;% [ 1 24 ]
Ntrn = N -2*round(0.15N) % 16 default
Ntrneq = Ntrn*O % 16 No. of training equations
Nw = (I+1)*H+(H+1)O = (I+O+1)*H+O % No. of unknown weights
% NO OVERFITTING Ntrneq >= Nw <==> H <= (Ntrneq-O)/(I+O+1)= 2.5
==> H = 3 is a slight overfitting ==> Using 15% validation set is justified .
But have you tried 10 trials each of
H = 2
or
MSEREG
or
TRAINBR ?
or
10-FOLD X-VALIDATION?
Hope this helps.
Greg
2 Commenti
Greg Heath
il 8 Ott 2016
The point of using MSEREG and/or TRAINBR is that you can use H >> 2.
Hope this helps.
Greg
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Deep Learning Toolbox in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!