I never had much luck with generative networks. I did some work putting RBMs on a GPU partly because I'd seen Hinton talk showing starting with a low level description and feeding it forwards, but always ended up with highly unstable networks myself.
Neural networks are notoriously difficult to train due to the large number of hyper-parameters that need to be tuned. If your network never converged, it's possible your learning rate was too high, so it kept overshooting the minima of the loss function.
Quite possibly. The classification results were great, just wasn't good when trying to run things back through the network repeatedly. I did have issues that the learning rates reported in some of the original papers didn't match the ones in the released code.
full resolution image