netket.models.RBM#

class netket.models.RBM[source]#

Bases: Module

A restricted boltzman Machine, equivalent to a 2-layer FFNN with a nonlinear activation function in between.

Attributes
alpha: Union[float, int] = 1#

feature density. Number of features equal to alpha * input.shape[-1]

precision: Any = None#

numerical precision of the computation see jax.lax.Precision for details.

use_hidden_bias: bool = True#

if True uses a bias in the dense layer (hidden layer bias).

use_visible_bias: bool = True#

if True adds a bias to the input not passed through the nonlinear layer.

activation: Any#

The nonlinear activation function.

kernel_init: Callable[[Any, Sequence[int], Any], Union[ndarray, Array]]#

Initializer for the Dense layer matrix.

hidden_bias_init: Callable[[Any, Sequence[int], Any], Union[ndarray, Array]]#

Initializer for the hidden bias.

visible_bias_init: Callable[[Any, Sequence[int], Any], Union[ndarray, Array]]#

Initializer for the visible bias.

Methods
__call__(input)[source]#

Call self as a function.