How not to normalize the data in patternnet function and how to do K-fold cross validation technique?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Mallikarjun Yelameli
il 6 Mag 2017
Modificato: Greg Heath
il 25 Lug 2017
I want to do classification using ANN 'patternnent' function. I am new to ANN. I have already normalised data and also divided into train and test dataset. Further, I want to divide train data into three equal parts and perform cross-validation technique, later I want to apply the best model on test dataset to calculate the accuracy. I am unable to understand how to use the 'patternnet' and other functions and complete the task the way I want. Could you please help me out? Thank you.
0 Commenti
Risposta accettata
Greg Heath
il 8 Mag 2017
Modificato: Greg Heath
il 8 Mag 2017
The optimal approach is to learn the best way to take advantage of existing MATLAB functions and structure. Although it is not necessarily the approach that you proposed, it is no less valid.
For example, by default, MATLAB NN design functions automatically
1. Normalize input and target data
2. Divide the data into training, validation and test subsets.
3. Initialize default parameter settings including random initial
weights
4. Train the net until one of several conditions occur. For example
a. Training subset error is reduced to a specified level
b. Validation subset error increases continually for a
specified number (default = 6) of epochs
c. A maximum number (default = 1000) of epochs is reached.
5. Use the target normalization parameters to
unnormalize the output data
6. Calculate the performance measure
Simple examples are given in the help and doc documentation examples obtained using the commands
help patternnet
and
doc patternnet
Typically, there are two main reasons for unsuccessful efforts:
1. Inadequate (high or low) specification for the number of hidden nodes
2. Inappropriate choice of random initial weights.
Consequently, I have devised a double loop approach where
1. The outer loop is over an interval for the number of hidden nodes
2. The inner loop is over a number of random initial weight settings
Examples can be found by searching both NEWSGROUP and ANSWERS using search words that include
GREG PATTERNNET
or
GREG PATTERNNET TUTORIAL
Hope this helps
Thank you for formally accepting my answer
Greg
2 Commenti
Greg Heath
il 25 Lug 2017
Modificato: Greg Heath
il 25 Lug 2017
I don't know what "the label of data" or "one hot encoding" mean to the computer. So I suggest you number the labels from 1 to c (for class) and use columns of the 0-1 unit matrix eye(c) as your target columns.
Then functions IND2VEC and VEC2IND allow transformations from target and output matrices to class indices and vice versa.
Hope this helps.
Greg
PS. Searching the NEWSREADER and ANSWERS with ind2vec and/or vec2ind will result in many examples.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Sequence and Numeric Feature Data Workflows in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!