# TSNE original | TSNE original early-stop | TSNE chain early-stop | TSNE chain # Each row is the embeddings for each perplexity import os import flask import pandas as pd from flask import render_template from string import Template from common.dataset import dataset from icommon import hyper_params dir_path = os.path.dirname(os.path.realpath(__file__)) data_dir = f"{dir_path}/data" dataset.set_data_home(data_dir) app = flask.Flask("render_view_app") CSV_PATH = "./plot_chain" TABLE = """ <table id="${tbl_id}"> <thead> ${thead} </thead> <tbody> ${tbody} </tbody> </table> """ FIG_IMG = """ <img id='img_${idx}' class='img-thumbnail' alt='xxx'
def run_with_sklearn(data, labels): for model in [PCA, TSNE]: Z = model(n_components=2).fit_transform(data) metric = DRMetric(data, Z) auc_rnx = metric.auc_rnx() fig = get_fig_plot_z2d( Z, title=f"sklearn/{model.__name__}, auc_rnx={auc_rnx:.3f}", with_imgs=True ) fig.savefig(f"./plots/{args.dataset_name}_sklearn_{model.__name__}.png") plt.close(fig) if __name__ == "__main__": dataset.set_data_home("./data") help_msg = """ Run DeepPPCAModel with custom params: $ python ppca_model2.py -d "DIGITS" -hd 50 -lr 0.0075 -n 2000 """ ap = argparse.ArgumentParser(description=help_msg) ap.add_argument("-r", "--run_id", default="999") ap.add_argument("-d", "--dataset_name", default="") ap.add_argument("-x", "--dev", action="store_true") ap.add_argument("-lr", "--learning_rate", default=1e-3, type=float) ap.add_argument("-s", "--scale_data", default="unitScale") ap.add_argument("-n", "--n_iters", default=1000, type=int) ap.add_argument( "-hd", "--hidden_dim",
mlflow.log_param('n_iters', n_iters) mlflow.log_param('lr', lr) plot_args = { 'prefix': f'{dataset_name}-{lr}-{n_iters}', 'suffix': '.png', 'save_to_file': SAVE_FIGURES, 'track_with_mlflow': TRACK_FLOW, } X_original, X, y = dataset.load_dataset(dataset_name) run_ppca(X_original, X, y, lr, n_iters, plot_args) if __name__ == '__main__': common.plot.simple_plot.PLOT_DIR = './plots' dataset.set_data_home('./data') SAVE_FIGURES = True TRACK_FLOW = True # mlflow.set_experiment('scikit-learn') # mlflow.log_param('dataset_name', dataset_name) # run_with_sklearn(data, original_data=X, labels_true=y) mlflow.set_experiment('PPCA_pyro') learning_rates = [ 0.005, 0.01, 0.02, 0.025, 0.005, 0.075, 0.1, 0.15, 0.2, 0.5 ] n_iters = 250 datasets = ['COUNTRY_2014']
def get_data_with_all_labels(dataset_name): dataset.set_data_home("./data") return dataset.load_dataset_multi_label(dataset_name)
if __name__ == "__main__": import argparse ap = argparse.ArgumentParser() ap.add_argument("-d", "--dataset_name", default="") ap.add_argument("-n", "--n_links", default=0, type=int, help="# of links each type") ap.add_argument("-ns", "--n_sim_links", default=None, type=int) ap.add_argument("-nd", "--n_dis_links", default=None, type=int) ap.add_argument("-s", "--seed", default=2019, type=int) ap.add_argument("-x", "--dev", action="store_true") args = ap.parse_args() dir_path = os.path.dirname(os.path.realpath(__file__)) LINK_DIR = f"{dir_path}/links" DATA_DIR = f"{dir_path}/data" dataset.set_data_home(DATA_DIR) # always makesure to set random seed for reproducing random.seed(args.seed) n_sim = args.n_sim_links or args.n_links n_dis = args.n_dis_links or args.n_links gen_constraints(args.dataset_name, n_sim, n_dis) if args.dev: test_auto_generated_constraints(args.dataset_name, n_sim, n_dis)