'Allows the network to be called, as in the following code snippet!
q_network = MelodyRNN(...)
q_network()
The q_network() operation can then be placed into a larger graph as a tf op.
Note that to get actual values from call, must do session.run and feed in
melody_sequence, lengths, and initial_state in the feed dict.
Returns:
Either softmax probabilities over notes, or raw logit scores.'

def __call__(self):

    with self.graph.as_default():
        with tf.variable_scope(self.scope, reuse=True):
            (logits, self.state_tensor) = self.run_network_on_melody(self.melody_sequence, self.lengths, self.initial_state)
            return logits
