Can we have a bidirectional network?

I want to build a network that information can flow bidirectionally. Given an input you can map the input to some output, and given some output, you are able to map output to input using the same parameters, and train the network by minimizing some input loss. Is that possible?

I don’t think so. As input goes through the network, some infomation is lost and can not be restored. So mapping y to x is not likely to be possible.

what I mean is that given the parameters, and y, can we map y to x? It’s like calculating the inverse function of DNN.

look into invertible deep models like iRevNet and NICE.