Run model in reverse in Keras
What you are looking for, I think, is the "Auto-Associative" neural network. it has an input of n dimensions, several layers, one of which is the "middle layer" of m dimensions, and then several more layers leading to an output layer which has the same number of dimensions as the input layer, n.
The key here is that m is much smaller than n.
How it works is that you train the network to recreate the input, exactly at the output. Then you cut the network into two halves. The front half goes from n to m dimensions (encoding the input into a smaller space). The back half goes from m dimensions to n dimensions (decoding, or "reverse" if you will).
Very useful for encryption, compression, unsupervised learning, etc.
I'm currently playing around with the Keras framework. And have done some simple classification tests, etc. I'd like to find a way to run the network in reverse, using the outputs as inputs and vice versa. Any way to do this?