noggin.plotter.LivePlot¶
-
class
noggin.plotter.LivePlot(metrics: Union[str, Sequence[str], Dict[str, Union[str, numbers.Real, Sequence[numbers.Real], None]], Dict[str, Dict[str, Union[str, numbers.Real, Sequence[numbers.Real], None]]]], max_fraction_spent_plotting: float = 0.05, last_n_batches: Optional[int] = None, nrows: Optional[int] = None, ncols: int = 1, figsize: Optional[Tuple[int, int]] = None)[source]¶ Records and plots batch-level and epoch-level summary statistics of the training and testing metrics of a model during a session.
The rate at which the plot is updated is controlled by
max_fraction_spent_plotting.The maximum number of batches to be included in the plot is controlled by
last_n_batches.Notes
Live plotting is only supported for the ‘nbAgg’ backend (i.e. when the cell magic
%matplotlib notebookis invoked in a jupyter notebook).Attributes: figsizeReturns the current size of the figure in inches.
last_n_batchesThe maximum number of batches to be plotted at any given time.
max_fraction_spent_plottingThe maximum fraction of time spent plotting.
metric_colorsThe color associated with each of the train/test and batch/epoch-level metrics.
metricsA tuple of all the metric names
plot_objectsThe figure-instance of the plot, and the axis-instance for each metric.
test_metricsThe batch and epoch data for each test-metric.
train_metricsThe batch and epoch data for each train-metric.
Methods
from_dict(plotter_dict)Records the state of the plotter in a dictionary. plot(plot_batches)Plot the logged data. set_test_batch(metrics, numbers.Real], …)Record batch-level measurements for test-metrics. set_test_epoch()Record and plot an epoch for the test-metrics. set_train_batch(metrics, numbers.Real], …)Record batch-level measurements for train-metrics, and (optionally) plot them. set_train_epoch()Record and plot an epoch for the train-metrics. show()Calls matplotlib.pyplot.show().to_dict()Records the state of the plotter in a dictionary. to_xarray(train_or_test)Returns xarray datasets for the batch-level and epoch-level metrics, respectively, for either the train-metrics or test-metrics. -
__init__(metrics: Union[str, Sequence[str], Dict[str, Union[str, numbers.Real, Sequence[numbers.Real], None]], Dict[str, Dict[str, Union[str, numbers.Real, Sequence[numbers.Real], None]]]], max_fraction_spent_plotting: float = 0.05, last_n_batches: Optional[int] = None, nrows: Optional[int] = None, ncols: int = 1, figsize: Optional[Tuple[int, int]] = None)[source]¶ Parameters: - metrics : Union[str, Sequence[str], Dict[str, valid-color], Dict[str, Dict[‘train’/’test’, valid-color]]]
The name, or sequence of names, of the metric(s) that will be plotted.
metricscan also be a dictionary, specifying the colors used to plot the metrics. Two mappings are valid:- ‘<metric-name>’ -> color-value (specifies train-metric color only)
- ‘<metric-name>’ -> {‘train’/’test’ : color-value}
- max_fraction_spent_plotting : float, optional (default=0.05)
The maximum fraction of time spent plotting. The default value is
0.05, meaning that no more than 5% of processing time will be spent plotting, on average.- last_n_batches : Optional[int]
The maximum number of batches to be plotted at any given time. If
None, all data will be plotted.- nrows : Optional[int]
Number of rows of the subplot grid. Metrics are added in row-major order to fill the grid.
- ncols : int, optional, default: 1
Number of columns of the subplot grid. Metrics are added in row-major order to fill the grid.
- figsize : Optional[Sequence[float, float]]
Specifies the width and height, respectively, of the figure.
Methods
__init__(metrics, Sequence[str], Dict[str, …)Parameters: from_dict(plotter_dict)Records the state of the plotter in a dictionary. plot(plot_batches)Plot the logged data. set_test_batch(metrics, numbers.Real], …)Record batch-level measurements for test-metrics. set_test_epoch()Record and plot an epoch for the test-metrics. set_train_batch(metrics, numbers.Real], …)Record batch-level measurements for train-metrics, and (optionally) plot them. set_train_epoch()Record and plot an epoch for the train-metrics. show()Calls matplotlib.pyplot.show().to_dict()Records the state of the plotter in a dictionary. to_xarray(train_or_test)Returns xarray datasets for the batch-level and epoch-level metrics, respectively, for either the train-metrics or test-metrics. Attributes
figsizeReturns the current size of the figure in inches. last_n_batchesThe maximum number of batches to be plotted at any given time. max_fraction_spent_plottingThe maximum fraction of time spent plotting. metric_colorsThe color associated with each of the train/test and batch/epoch-level metrics. metricsA tuple of all the metric names plot_objectsThe figure-instance of the plot, and the axis-instance for each metric. test_metricsThe batch and epoch data for each test-metric. train_metricsThe batch and epoch data for each train-metric.