Forward propagation throught the network
    :return: dictionary with layer names mapping to activation values.

def fprop(self, x):
    """
    Forward propagation throught the network
    :return: dictionary with layer names mapping to activation values.
    """

    # Feed forward through the network layers
    for layer_name in self.layer_names:
      if layer_name == 'input':
        prev_layer_act = x
        continue
      else:
        self.layer_acts[layer_name] = self.layers[layer_name](
            prev_layer_act)
        prev_layer_act = self.layer_acts[layer_name]

    # Adding softmax values to list of activations.
    self.layer_acts['probs'] = tf.nn.softmax(
        logits=self.layer_acts['logits'])
    return self.layer_acts