Clear Filters
Clear Filters

Groups of observations for Neural Network?

2 views (last 30 days)
I have an IxN matrix of input data and an OxN matrix of output data. The N columns are observations. Each observation column is unique, however they exist in groups of an unknown number of observation columns per day. Each of these groups of obs from one day should be analyzed by the tree or network as a single related entity.
I just found the grouping variables functionality in Matlab, which is exactly what I need: http://www.mathworks.com/help/stats/grouping-variables.html Is there anyway to incorporate this into either NNTBX or ClassificationTree.fit?

Accepted Answer

Greg Heath
Greg Heath on 25 Jun 2013
Input and output vector dimensions are fixed.
If you wish to have variable dimensions, the only way I can think of effectively relaying that info to the net is to fix the maximum dimensions and use zeros when vectors are shorter than the maximum. If you use NaNs, the outputs will be NaNs.
  4 Comments
Greg Heath
Greg Heath on 25 Jun 2013
The grouping variables in the reference are useful for UNSUPERVISED learning.
Your problem is one of SUPERVISED learning. You teach the net, via training, that if this vector is the input, then that target vector should be the output.
If your training set is representative of the total data set and categories don't significantly overlap, then you should be OK.
shane
shane on 26 Jun 2013
Excellent, thanks for the help Greg.

Sign in to comment.

More Answers (1)

Greg Heath
Greg Heath on 18 Jun 2013
To use the NNTBX, variables are rows and observations are columns.
You train the net by giving it pairs of input vectors and corresponding output targets.
The sizes of the input matrix and corresponding target matrix are
[ I N ]= size(input)
[ O N ] =size(target)
for N I-dimensional input vectors and the corresponding N O-dimensional output target vrctors.
Are you able to explain the relationship that you want to have between a typical I-dimensional input vector and the correspondidng O-dimensional output vector?
Greg
  2 Comments
shane
shane on 18 Jun 2013
Hi Greg, Thanks for clarification on row/column order.
For a given test I have a variable number of resultant observations, the input vectors, all of which are 3 dimensional. Say these represent multiple failures for one individual test object. All of these inputs are a group, and are pointed at the same responding 3 dimensional output vector for that test (say the strength of the object).
So what I need is a way to inform the NNTBX tool that x number of input vectors are from test 1, y from test 2 etc so that it treats these as results of the same test when building the network, and not as individual test results. The strength of object 1 (the output target) is related to all of the failure inputs, not to each individual failure input. I do not think it is enough that the output vectors for the same tests will be the same because the output vector is a discrete 5 point scale and there will be a lot of repetition between the tests.
shane
shane on 21 Jun 2013
Hi Greg,
Is there any other information I can provide to help with this question? Or is it that there is no answer to this question and its not possible?

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!