Skip to content

Instantly share code, notes, and snippets.

@NMZivkovic
Created November 11, 2018 21:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save NMZivkovic/0c5132ec3f034040473e925196185e8c to your computer and use it in GitHub Desktop.
Save NMZivkovic/0c5132ec3f034040473e925196185e8c to your computer and use it in GitHub Desktop.
visible_cdstates = self.gibsSampling(1)
hidden_states = self.callculate_state(tf.sigmoid(tf.matmul(self._input, self._weights) + self._hidden_bias))
hidden_cdstates = self.callculate_state(tf.sigmoid(tf.matmul(visible_cdstates, self._weights) + self._hidden_bias))
size = tf.cast(tf.shape(self._input)[0], tf.float32)
weights_delta = tf.multiply(self.learning_rate/size, tf.subtract(tf.matmul(tf.transpose(self._input), hidden_states), tf.matmul(tf.transpose(visible_cdstates), hidden_cdstates)))
visible_bias_delta = tf.multiply(self.learning_rate/size, tf.reduce_sum(tf.subtract(self._input, visible_cdstates), 0, True))
hidden_bias_delta = tf.multiply(self.learning_rate/size, tf.reduce_sum(tf.subtract(hidden_states, hidden_cdstates), 0, True))
self._updates = [self._weights.assign_add(weights_delta), self._visible_bias.assign_add(visible_bias_delta), self._hidden_bias.assign_add(hidden_bias_delta)]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment