MATLAB: Complex numbers input in neural networks

complex numbersneural network

I need to extract features and train a neural network from frequency response data (magnitude and phase vs. frequency). The magnitude and phase is essentially form a complex number. I have 100 samples and each sample has 1000 magnitude and phase data points. The frequency range is the same for all data. What is the best way to feed this data to the “nntriantool. As far as I know this tool will not accept complex numbers. I cannot feed the magnitude and phase data separately, since it occurs as a pair. If the only way is to write my own neural network, how can I pass the input data as a pair OR will the neural network toolbox functions accept complex numbers as arguments Thanks in advance.

Best Answer

You can represent a complex number, a+i*b, as a 2-vector [a b], so use that format instead. Suppose that F is an array of complex numbers, then to you can get real and imaginary components of F as follows: [real(F) imag(F)]