def validate(classifier, train, test, args, report_base_name):
print('\nTraining classifier on%dsamples ...' % len(train.X))
start = timeit.default_timer()
classifier.fit(train.X, train.y)
stop = timeit.default_timer()
print('Classifier trained, took%fseconds' % (stop - start))
for method in args.loglikelihood_methods:
report_name = report_base_name + '_' + method
if args.calculate_distances:
print('\nCalculating distances ...')
start = timeit.default_timer()
distances = classifier.distances(loglikelihood_method=method, n_samples=500)
print('Distances calculated, took%fseconds' % (timeit.default_timer() - start))
report = _generate_distance_reports(distances, target_names=train.target_names)
_handle_report(report, report_name + '_distanc