Add tensorboard support in Speedometer. #5345
Conversation
@piiswrong I add this feature in Speedometer as it's the most commonly used callback function and it also logs the evaluation metrics, that's convenient. |
I think its better to make a new file and add another callback. maybe add it back to speedometer after things have stablized. |
Agree. Can I create a |
simply tensorboard is fine. also it shouldn't log anything to logging. we need better documentation on the parameters |
Refactor for metrics only, no longer mimic |
@piiswrong how about now? |
Let's move this to mx.contrib |
Yep. why jenkins build error? |
lint: pylint python/mxnet --rcfile=/workspace/tests/ci_build/pylintrc |
All passed now. Any ideas further? I'm now working on |
Thanks. merged |
Can you provide source code for this? I am attempting to use this with the image_classification examples and I don't get graphs as one would expect. I used the pypi to install tensorboard:
I added/changed this to common/fit.py in image classification to get a dummy test running.
It appears that 'Step' is not being recorded properly. Attached are some screen shots. if you look at the relative graph it becomes more clear what's happening: |
@jmerkow thanks for your feedback! To clarify, did you use You can use eval_end_callbacks = [mx.contrib.tensorboard.LogMetricsCallback(evaluation_log, prefix='eval')]
batch_end_callbacks += [mx.contrib.tensorboard.LogMetricsCallback(training_log, prefix='train')] Or they would be in one graph just like your case, in this case, we have to use relative mode rather than step mode. Any suggestions are welcomed and let's make it better. |
I used logs/. It just never got to the eval call back, I killed it before it finished. I am just testing the tensorboard to use to train on my data. |
@jmerkow My Dear brother, I met same problem as yours: never got the eval call back curve or same color for eval and train curve. I didn't understand your means, May you clarify your code change below clearly, thanks a lot! self.summary_writer.add_scalar(name, value) to self.summary_writer.add_scalar(name, value, global_step=param.nbatch). |
* Add tensorboard support in Speedometer. * fix pylint. * Add tensorboard_callback. * Refactor. * fix lint.
@piiswrong
Add tensorboard logging support in Speedometer by optional import. Any other suggestion in callback functions? Should I change the Python
setup.py
and make dmlc/tensorboard a requirement?