Skip to content

Projector: Metadata editor #709

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

francoisluus
Copy link
Contributor

@francoisluus francoisluus commented Nov 8, 2017

Add a metadata editor to the Projector, which gives the option to modify attributes of selected points. This is very helpful to make alterations and corrections to an existing labeling, although changes are only made in the browser session and do not persist to the metadata file.

Demo here: http://tensorserve.com:6015

git clone -b projector-metadata-editor https://github.com/francoisluus/tensorboard-supervise.git
cd tensorboard-supervise
git checkout 5c08357d3300f11d0a1776f4d7f76391e3edbad0
bazel run tensorboard -- --logdir /home/emnist-2000 --host 0.0.0.0 --port 6015

Design and behavior

  1. The metadata editor only requires one extra row in the data panel.
  2. The label button is disabled if no selection has been made, or if no label has been specified.
  3. An attribute search is done to find the number of existing samples with the specified label.
  4. Projector components related to metadata display are refreshed after attribute changes, which also expands the color palette for the modified attribute when a new class is added.
  5. metadataChanged() is invoked in the projector after a metadata edit, which normally resets the attribute choices in the data panel and inspector panel. It is proposed that if there is an existing selection it should be retained if it is valid choice, which means that if another metadata file is loaded and it contains the selection it would be preferred.

Data panel before

Data panel with metadata editor

Label entered into metadata editor

Add a metadata editor to the Projector, which gives the option to
modify attributes of selected points. Projector components related to
metadata display are refreshed after attribute changes, which also
expands the color palette for the modified attribute when a new class
is added.
@francoisluus
Copy link
Contributor Author

Consider the below alternative implementation that makes full use of Polymer properties and events for the added elements, and reuses the paper-input label for state messaging. This implementation is cleaner, easier to modify/extend and the UI is sleeker. This revised branch can be found here: master...francoisluus:projector-metadata-editor-v2

Demo here: http://tensorserve.com:6018

git clone https://github.com/francoisluus/tensorboard-supervise.git
cd tensorboard-supervise
git checkout 6668297f21d03cb44c5ef811a774f97dfcae16b3
bazel run tensorboard -- --logdir /home/emnist-2000 --host 0.0.0.0 --port 6018

Status updates with paper-input label

screen shot 2017-11-14 at 9 19 33 am

@dsmilkov
Copy link
Contributor

dsmilkov commented Nov 14, 2017

Hi @francoisluus ,

Thanks for another great addition. Two questions:

  • Just to make sure I understand, in the image below (one of the images you posted), what does Add 101 to 199 found mean? Would be great to have more explicit messaging, even if it's more text and looks a bit crowded.

  • Since the alternative implementation is easier to modify/extend, feel free to file a PR with that implementation, and close this PR.

This was referenced Nov 15, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants