This repository is the official implementation of Kernel Identification Through Transformers (https://arxiv.org/abs/2106.08185), presented at NeurIPS 2021.
This project aims to rapidly identify suitable expressive kernels for a given dataset. Motivated by the success of image captioning architectures, we adopt a two-stage approach. First a classifier is trained to identify primitive kernels, The features generated by the classifier can be fed into a second network which assembles a more complex caption.
Ensure poetry is installed and run:
poetry env use python3.7
poetry install
from the top level directory of this repo.
To make use of KITT, two networks need to be trained.
First a classifier:
kitt.prototype.scripts.train_classifier.py
Secondly, the captioning network:
kitt.prototype.scripts.train_kitt.py
Once these networks are trained, several experiments can run from:
kitt.prototype.scripts.experiments
Several scripts make use of sacred. An introduction to sacred can be found here.
From the root directory of this repo, run:
poetry run task test