How to create a Target data ? Neural Network Tool

4 views (last 30 days)
Hello,
I want to make a feedforward backpropagation neural network in order to solve a classification problem.
Let's say I want to import a data set from UCI Machine Learning Repository ( this one ) which is 4x306. How do I create a Target data set in order to train it?
Thanks in advance.
  2 Comments
Mrinmoyee Bhattacharya
Mrinmoyee Bhattacharya on 29 Mar 2019
Moved: Walter Roberson on 15 Aug 2024
I just want to create target dataset, Is there any code? then it will be helpful for me

Sign in to comment.

Accepted Answer

Greg Heath
Greg Heath on 30 Jan 2013
The target for 2-class classification has dimensions [1 N] (N=306) with values {0,1}. However, if the ratio of N1/N0 is not in the interval [0.5, 2 ], then randomly add duplicates of the smaller class until the class sizes are equal. Occasionally, it helps to add a small noise component to the duplicates.
Use PATTERNNET with a LOGSIG activation function and TRAINSCG training function. The corresponding output, y = net(x), is a consistent estimate of the posterior probability of the "1" class, given the input x, i.e., P(classind = 1 | x ). the corresponding class index can be obtained from round(y).
In general, for c-class classification, the target matrix has dimensions [ c N ]with columns of the c-dimensional unit matrix. The row index of the 1 is the class index for that column. The assigned class is obtained from classind = vec2ind(y) (the row of the largest value).
Hope this helps.
Thank you for formally accepting my answer.
Greg

More Answers (1)

Jing
Jing on 30 Jan 2013
I guess what you ask is 'preparets' function. This function prepare data for network simulation and training. Use the following command you can find the usage and an example of this function:
doc preparets
Hope it helps!
  7 Comments
Walter Roberson
Walter Roberson on 29 Mar 2019
It depends which function you are using. Some of them just want a vector of class numbers. Others want the result of calling vec2ind on the vector of class numbers.
Either way you need information about what the correct class number is for each sample.
Mrinmoyee Bhattacharya
Mrinmoyee Bhattacharya on 29 Mar 2019
I am using this function for create a target dataset:
I have imported my dataset in column vector
My dataset is showing (1x14480)
data = CP1U;
target = full(vec2ind(data))
Is this correct ?

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!