probos_finetune = loaded_model.predict_generator(
        generator_test, len(generator_test.classes), max_q_size=1)
    gnd_truth = generator_test.classes

    dics = list(generator_test.class_indices.keys())

    dics.extend(["micro-average curve", "macro-average curve"])

    skplt.plot_precision_recall_curve(y_true=gnd_truth,
                                      y_probas=probos_finetune)
    plt.legend(dics[:5], loc='lower left')
    plt.savefig(args.destdir + '/precision_recall_curve.png')
    plt.close()

    _ = classifier_factory(RandomForestClassifier())
    _.plot_confusion_matrix(probos_finetune, gnd_truth, normalize=True)
    plt.savefig(args.destdir + '/confusion-matrix.png')
    plt.close()

    nb = GaussianNB()
    classifier_factory(nb)
    nb.plot_roc_curve(probos_finetune, gnd_truth, title='roc curves')
    plt.legend(dics, loc='lower right')
    plt.savefig(args.destdir + '/ROC.png')
    plt.close()

    _.plot_learning_curve(probos_finetune, gnd_truth)
    plt.savefig(args.destdir + '/learning_curve.png')
    plt.close()