[P] Loss for restricted boltzmann machines
Hello guys, I am trying to implement this paper. They used restricted boltzmann machines to get evolution of a system. Due to nature of the problem “activation” function is not sigmoid but tanh which is later transformed into probability. Different activation function means that gradient is different, although in the paper they wrote “standard” gradient equations. When I tried to train model with standard gradient equations I couldn’t get any meaningful results.I am aware that RBM minimizes KL divergence, but I couldn’t figure out how to implement that (how to get probability function). After trying to find what should I put for loss function when training with eg. Adam I stumbled upon some random github code which for loss function had:
L = energy(data_vec) – energy(genrated_vec)
(yes without absolute value). Well, I plugged that in and it worked like a charm. When I tried to put absolute value over loss it did not worked. I am having trouble understanding why is this correct loss for RBM and I would appreciate help 🙂
submitted by /u/matej1408
[link] [comments]