MihailSalnikov / nas-bench-nlp-release

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NAS-Bench-NLP

Preparation:

  1. unzip data/datasets.zip, train_logs_single_run/logs.zip, train_logs_multi_runs/logs.zip, and train_logs_wikitext-2/logs.zip;
  2. install requirements.txt (currently contains unuseed packages; to be cleaned);
  3. optionally, copy models from the dropbox (https://www.dropbox.com/sh/qviytkrlbu2cy5u/AABy59Bb9CpiS7D4osbvY_xva?dl=0) to the folder models_weights.

Usage:

  • search_space_examples.ipynb demonstrates how to generate architectures from the search space;
  • to train a model, run script main_one_model_train.py --recepie_id=, where the list of architectures is by defaultin data/recepies_example.json; logs and final weights will be stored in tmp folder by default (see script argumens for more info);
  • reproduce_model.ipynb demonstrates how to load and apply the trained model;
  • make_arch_embedding.ipynb creates graph2vec features for architectures;
  • search_space_analysis.ipynb reproduces figures from the analysis section in the paper;
  • benchmarking_examples.ipynb shows how NAS methods can be tested based on precomputed results in the logs.

About


Languages

Language:Jupyter Notebook 95.5%Language:Python 4.5%Language:Shell 0.0%