tbdev turndown: add export converter script #6698
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This adds a standalone script
convert_tbdev_export.py
that can convert the JSON-based export format for TensorBoard.dev (produced bytensorboard dev export
) into tfevents files that can be used to display the exported data in open source TensorBoard. See documentation in the script itself for more details about how it's intended to be used.Note that I've structured this as a standalone script in the style of diagnose_tensorboard.py (i.e. no BUILD target, no dependencies, no unit tests). Arguably, had we done this earlier, it would be better to have integrated this into the
tensorboard dev export
command itself as an output format option. But we're planning to remove thetensorboard dev
command entirely once the turndown happens at EOY, so keeping it separate ensures that we can still link to this script for a while as a resource for anyone who has already exported their experiments to do conversions post-turndown.Tested: did manual testing with a range of my own experiments, including some with multiple runs, different data types (scalars, tensors, blobs), etc. Confirmed that the conversion completed without errors and that it looked as expected in the TensorBoard UI. I've omitted unit tests because the manual end-to-end tests are what we ultimately care more about, and I don't expect any further significant development to happen for this script.