Code snippets for page Deep Belief Network (DBN) based on BiMDPΒΆ
Download dbn.py
.
Browse the code snippet index.
# -*- coding: utf-8 -*-
# Generated by codesnippet sphinx extension on 2020-12-16
import mdp
import numpy as np
np.random.seed(0)
import mdp
import bimdp
import dbn_binodes
n_layers = 2
flow = dbn_binodes.get_DBN_flow(2, hidden_dims=[2,2])
n_samples = 10000 # number of data points
n_greedy_reps = 100 # repetitions in greedy phase
x = mdp.numx.zeros((n_samples, 4))
for i in range(n_samples):
r = mdp.numx.rand()
if r>0.666:
x[i,:] = [0.,1.,0.,1.]
elif r>0.333:
x[i,:] = [1.,0.,1.,0.]
data_iterables = [None] + [[x] * n_greedy_reps] * n_layers + [[x]]
msg_iterables = ([None] +
[[{"epsilon": 0.1, "decay": 0.0,
"momentum": 0.0}] * n_greedy_reps] * n_layers +
[[{"top_updates": 3, "epsilon": 0.1, "decay": 0.0,
"momentum": 0.0,
"max_iter": 2, "min_error": -1.0}]])
bimdp.show_training(flow, data_iterables, msg_iterables, debug=True)
# Expected:
## '/tmp/.../training_inspection.html'
print "done."
# Expected:
## done.