# Are there neural networks packages that use complex numbers?

Can you build complex (in terms of complex numbers) neural networks in Keras or Tensorflow or something similar?

This would mean the inputs, weights, activation functions, and outputs would all potentially use complex numbers. I know this can be done in theory, but all the software packages

I have come across seem to assume only real numbers are used for the weights and inputs.

• Why do you want to use Complex Nos?Any significance?Please Explain? – Aditya Mar 6 '18 at 8:05
• Because many real world problems are formulated in terms of complex numbers. – Jonathan Mar 7 '18 at 3:18
• See literature on MPS, MERA, PEPS in condensed matter physics. There are libraries for these attached to some of the papers. – AHusain Mar 7 '18 at 5:59

For a 64*64 complex image. This will result in $2*64^2$ input nodes each accepting a floating point value, if the first layer is a densely connected layer. This is commonly used for MRI images. So the nodes can identify which real or complex values are needed to infer meaning and provide an output.