You can set up a counter to count how many iterations have passed, which is rather simple. Then you can adjust the learning rate base on the iteration, the same way as caffe.
I think adjust the learning rate based on epoch maybe enough to achieve good results.