Commit f5a79812 authored by leswing's avatar leswing
Browse files

Learning Decay Example

parent e8593fc7
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -523,10 +523,13 @@ class TensorGraph(Model):
      self.tensor_objects['Optimizer'] = self.optimizer()
    elif obj == 'train_op':
      self.tensor_objects['train_op'] = self._get_tf('Optimizer').minimize(
          self.loss.out_tensor)
          self.loss.out_tensor, global_step=self._get_tf('GlobalStep'))
    elif obj == 'summary_op':
      self.tensor_objects['summary_op'] = tf.summary.merge_all(
          key=tf.GraphKeys.SUMMARIES)
    elif obj == 'GlobalStep':
      with self._get_tf("Graph").as_default():
        self.tensor_objects['GlobalStep'] = tf.Variable(0, trainable=False)
    return self._get_tf(obj)

  def _initialize_weights(self, sess, saver):
+14 −0
Original line number Diff line number Diff line
@@ -7,6 +7,8 @@ from __future__ import unicode_literals

import numpy as np

from models.tensorgraph import TFWrapper

np.random.seed(123)
import tensorflow as tf

@@ -33,6 +35,18 @@ batch_size = 50
model = GraphConvTensorGraph(
    len(tox21_tasks), batch_size=batch_size, mode='classification')

global_step = model._get_tf('GlobalStep')


def optimizer_function():
    starter_learning_rate = 0.1
    learning_rate = tf.train.exponential_decay(starter_learning_rate, global_step,
                                               100000, 0.96, staircase=True)
    return tf.train.GradientDescentOptimizer(learning_rate)


model.set_optimizer(TFWrapper(optimizer_function))

model.fit(train_dataset, nb_epoch=10)

print("Evaluating model")