2D array as input to neural network
Show older comments
My neural network has 2 feature variables each with a length of 112. Further I have 5 samples from each person and there are total 5 persons.
input= 2 rows, 112(per class feature vector length), 5 persons and 5 samples per person, so its (2, 112 x 5 x 5)
output = (5 (classes), 112 x 5 x 5)
I intend to specify the basic unit of classification as 2 x 112. Any idea how can I do this ? Currently its consider each column 2 x 1 as one input.
2 Comments
Walter Roberson
on 19 Feb 2013
Did you experiment with transposing the input array to 112 x 2, just to see what would happen?
sajid
on 19 Feb 2013
Accepted Answer
More Answers (1)
Walter Roberson
on 19 Feb 2013
0 votes
A feature cannot be a 2D array. You can reshape() to make each feature a column.
5 Comments
sajid
on 19 Feb 2013
Walter Roberson
on 19 Feb 2013
Were you planning to try to process the different items in different ways? For example tansig the magnitude but not the direction? If not, then in theory having them interleaved should not matter, as neural networks are intended to form their own notion of the relationship between parts of features.
sajid
on 19 Feb 2013
Walter Roberson
on 19 Feb 2013
I do not know if it is possible to treat different elements differently. Maybe with custom functions of some kind. Greg would know; he might visit the topic in anywhere between 4 hours and 4 days (depending on when he gets enough coffee in his system.)
Greg Heath
on 19 Feb 2013
It doesn't matter how your input rows are ordered.
However, I suggest transforming to cartesian coordinates so that
input = [ x ; y ]
with
size(y) = size(x) = [ 112 25 ]
Categories
Find more on Modeling and Prediction with NARX and Time-Delay Networks in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!