What might be some potential methods to encode a 100-point signal (curve) for input to a Artificial Neural Network?

Example: we have a large number of 100-pt 'curves' ranging from flat-line to approximately a half-sine wave with a wide range of max amplitude. The curves have some noise and occasional anomalous 'bumps'. These training set curves can be broken down into known positives or negatives for 'truthing'.

If I wanted to use an Artificial Neural Network to give a result for untrained data curves, what are potential method to encode the input data sets?

Would transforming each of the 100 points in a curve to a [0.0000 .... 1.0000] range be useful (and thus we'd have 100 inputs to the ANN? Or another method might produce better results?

NOTE: I understand that FFT and Power Spectrum analysis might be a completely different alternative here as well, but am focussing right now on a possible neural network method.

asked Aug 13 '10 at 21:55

PocketStrike's gravatar image

PocketStrike
1112

edited Dec 03 '10 at 07:07

Alexandre%20Passos's gravatar image

Alexandre Passos ♦
1893744214333


2 Answers:

Normalize the values to mean 0, standard deviation 1 (if you don't have too many extremes, normalizing to a [0,1] or [-1,1] range is fine too). Inputing the fourier coefficients is also plausible (though perhaps not reasonable).

answered Aug 13 '10 at 22:51

Jacob%20Jensen's gravatar image

Jacob Jensen
1644285360

Another option is to use a convolutional neural network, like in this work. This will allow you more easily to learn a classifier that uses frequency information without having to do the FFT yourself.

answered Aug 14 '10 at 10:05

Alexandre%20Passos's gravatar image

Alexandre Passos ♦
1893744214333

Your answer
toggle preview

powered by OSQA

User submitted content is under Creative Commons: Attribution - Share Alike; Other things copyright (C) 2010, MetaOptimize LLC.