Visualization¶
XNMT comes with several visualization tools.
Visualization of training progress¶
The training progress can be monitored via Tensorboard. XNMT uses the tensorboardX
package to write logs that can
be read and visualized via Tensorboard. These logs are written out by default, no configuration is required.
To run Tensorboard, Tensorflow must be installed first (see Tensorflow home page for further instructions):
pip install tensorflow
tensorboard --logdir <path/to/base/xnmt/log/dir>
Visualization of translation outputs¶
Translation outputs can be analyzed via reporters as defined in xnmt/reports.py
. To use reporters, just simply define any reporter class inside the inference.
Reports can only be used for inference-only experiments, i.e. experiments that load a pretrained model and only perform inference but no training.
The following reporters are available (see API doc for more details):
AttentionReporter
: print attention matricesReferenceDiffReporter
: HTML-visualization of diffs between reference and actual outputCompareMtReporter
: perform detailed analysis, including computing over- and undergenerated n-grams.OOVStatisticsReporter
: compute OOV statistics, useful when using character- or subword models.SegmentationReporter
: Used only for the SegmentationSeqTransducer encoder, to print the segmentation of the input.