Charts

Charts are a way to visualize numerical channels. Each chart can contain data from multiple channels, which makes studying relations between metrics easier.

charts screenshot

Charts can be created within the Neptune UI during or after experiment’s execution.

Chart Sets

Chart sets are a way to define and group charts. Since they are created at the project level, chart sets provide a way to define certain common types of charts, which are considered useful no matter which particular experiment is being run.

Example

Suppose in a project X there are many experiments, each of them having a channel named acc denoting the accuracy of the prediction. Within a chart set you can create the accuracy chart using the acc channel. This and other charts belonging to the chart set will then be visible in Neptune for every project X’s experiment.

Channels’ Aliases

Defining a single chart for an experiment comes down to selecting channels that are to be presented on the chart. Chart sets need to “fit in” with multiple experiments, that might differ from one another. In particular, channels holding the same semantic value, may be named differently in different experiments. Those various names can be gathered together to form an alias.

Aliases provide a way to logically group Neptune’s channels within a project. Each alias consists of a name and an ordered list of channel names. The order determines the relative importance when choosing the channel that is going to be represented by the alias.

Example

The previous example has one drawback. It relies on a presumption that every experiment will obey the contract to name its accuracy channel as acc. If that is not the case, the chart won’t work for experiments that name it differently, for example pred_acc or accuracy.

Instead of forcing the experiment authors to strictly follow the naming rules, you can define an alias, which purpose is to group all the individual channels under one umbrella term. You can make an alias named accuracy, and specify its channel list as [accuracy, acc, pred_acc].

The next step is to create a chart that will get its data not from a specific channel, but from this alias. This way, with no changes in the code, the chart will show correct data for each experiment that defines a channel named accuracy, acc or pred_acc.

Channel Ordering

Note the channel order within the alias is significant - suppose one experiment defines channels named acc and pred_acc. Both are on the list, but because the acc occurs earlier, ie. is more important, this channel is going to be selected as a representative of the alias, and its data points are the ones going to be plotted on the chart.