Build Deep Belief Autoencoder for Dimensionality Reduction
Unlike Autoencoders, Botzmann Machines (restricted or not) do not have an output layer and thus classified as deep generative models.
There is a variety of implementations in Pytorch. This one is GPU compatible (https://github.com/GabrielBianconi/pytorch-rbm) and I have found it particularly helpful in the past.
RBMs can come quite handy in a variety of tasks such as

Dimensionality reduction
Collaborative filtering for recommender systems
Feature learning
and others.

This was an interesting read in case you want to find out more about RBMs. https://heartbeat.fritz.ai/guide-to-restricted-boltzmann-machines-using-pytorch-ee50d1ed21a8