7d48f835a67be7ee1d14ef276ffac0f296490d8e
- train.py: grad_zero() was called inside the epoch loop, resetting momentum to zero before every update — momentum had no effect in the default full-batch case. Moved outside the loop so momentum accumulates across epochs. - train.py: cd_gaussian_gaussian: use mean h for weight updates and sampled h to drive the negative visible reconstruction (same pattern as cd_gaussian_binary fix). Remove spurious Gaussian noise added to data_neg before computing h_probs_neg. - matrix.py: rms_error divided by d_err_squared[1] (row 1) instead of d_err_squared.shape[1] (column count). - label.py: _dec_binary used reversed() on a CuPy array — replaced with np.flip(). label2vec_onehot now returns np.stack() array instead of a Python list. vec2label_onehot implemented via np.argmax (was returning None). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
GRBM
Paper
https://medium.com/@rtdcunha/gaussian-bernoulli-restricted-boltzmann-machines-4a68b8765485 https://journals.plos.org/plosone/article/file?id=10.1371/journal.pone.0171015&type=printable
Code
https://github.com/DSL-Lab/GRBM/tree/main
CRBM
Paper
https://www.ee.nthu.edu.tw/hchen/pubs/iee2003.pdf
Regularization
https://benihime91.github.io/blog/machinelearning/deeplearning/python3.x/tensorflow2.x/2020/10/08/adamW.html https://medium.com/analytics-vidhya/l1-vs-l2-regularization-which-is-better-d01068e6658c https://jamesmccaffreyblog.com/2019/05/09/the-difference-between-neural-network-l2-regularization-and-weight-decay
Languages
Jupyter Notebook
96.9%
Python
3.1%