in ludwig/visualize.py [0:0]
def cli(sys_argv):
parser = argparse.ArgumentParser(
description='This script analyzes results and shows some nice plots.',
prog='ludwig visualize',
usage='%(prog)s [options]')
parser.add_argument('-d', '--data_csv', help='raw data file')
parser.add_argument('-g', '--ground_truth', help='ground truth file')
parser.add_argument(
'-gm',
'--ground_truth_metadata',
help='input metadata JSON file'
)
parser.add_argument(
'-od',
'--output_directory',
help='directory where to save plots.'
'If not specified, plots will be displayed in a window'
)
parser.add_argument(
'-ff',
'--file_format',
help='file format of output plots',
default='pdf',
choices=['pdf', 'png']
)
parser.add_argument(
'-v',
'--visualization',
choices=sorted(list(visualizations_registry.keys())),
help='type of visualization',
required=True
)
parser.add_argument(
'-f',
'--output_feature_name',
default=[],
help='name of the output feature to visualize'
)
parser.add_argument(
'-gts',
'--ground_truth_split',
default=2,
help='ground truth split - 0:train, 1:validation, 2:test split'
)
parser.add_argument(
'-tf',
'--threshold_output_feature_names',
default=[],
nargs='+',
help='names of output features for 2d threshold'
)
parser.add_argument(
'-pred',
'--predictions',
default=[],
nargs='+',
type=str,
help='predictions files'
)
parser.add_argument(
'-prob',
'--probabilities',
default=[],
nargs='+',
type=str,
help='probabilities files'
)
parser.add_argument(
'-trs',
'--training_statistics',
default=[],
nargs='+',
type=str,
help='training stats files'
)
parser.add_argument(
'-tes',
'--test_statistics',
default=[],
nargs='+',
type=str,
help='test stats files'
)
parser.add_argument(
'-hs',
'--hyperopt_stats_path',
default=None,
type=str,
help='hyperopt stats file'
)
parser.add_argument(
'-mn',
'--model_names',
default=[],
nargs='+',
type=str,
help='names of the models to use as labels'
)
parser.add_argument(
'-tn',
'--top_n_classes',
default=[0],
nargs='+',
type=int,
help='number of classes to plot'
)
parser.add_argument(
'-k',
'--top_k',
default=3,
type=int,
help='number of elements in the ranklist to consider'
)
parser.add_argument(
'-ll',
'--labels_limit',
default=0,
type=int,
help='maximum numbers of labels. '
'If labels in dataset are higher than this number, "rare" label'
)
parser.add_argument(
'-ss',
'--subset',
default='ground_truth',
choices=['ground_truth', PREDICTIONS],
help='type of subset filtering'
)
parser.add_argument(
'-n',
'--normalize',
action='store_true',
default=False,
help='normalize rows in confusion matrix'
)
parser.add_argument(
'-m',
'--metrics',
default=['f1'],
nargs='+',
type=str,
help='metrics to dispay in threshold_vs_metric'
)
parser.add_argument(
'-pl',
'--positive_label',
type=int,
default=1,
help='label of the positive class for the roc curve'
)
parser.add_argument(
'-l',
'--logging_level',
default='info',
help='the level of logging to use',
choices=['critical', 'error', 'warning', 'info', 'debug', 'notset']
)
args = parser.parse_args(sys_argv)
logging.getLogger('ludwig').setLevel(
logging_level_registry[args.logging_level]
)
global logger
logger = logging.getLogger('ludwig.visualize')
try:
vis_func = visualizations_registry[args.visualization]
except KeyError:
logging.info('Visualization argument not recognized')
raise
vis_func(**vars(args))