Home

Awesome

Oblique Decision Trees from Derivatives of ReLU Networks (Locally Constant Networks)

This repository is for the paper

<div style="text-align:center"><img src="http://people.csail.mit.edu/guanghe/iclr20_lcn_files/LCN_teaser.jpg" width="85%" height="85%"></div>

Package version

Repo structure

Main files

Quick start and reproducing experiments

Example scripts are available in scripts/. For example,

which will run the LCN model with the Bace dataset.

which will run the LCN model with the the 1st label in the Sider dataset. The Tox21 contains 12 labels, and the Sider dataset contains 27 labels.

How to set hyper-parameters

Switching among LCN, ALCN, and LLN

The default model in run_net_training.py is LCN.

Some suggestions for hyper-parameter tuning

If you would like to apply the codes for other datasets, we suggest to tune the following hyper-parameters. You can see the complete list of hyper-parameters in arg_utils.py.

ELCN

If you would like to try the ensemble version (ELCN), you can just specify the maximum ensemble number as the --ensemble_n, and the codes will automatically stores all the logs for each ensemble iteration. For example, if you would like to tune the ensemble number in {1,2,4,8}, you can just run --ensemble_n 8 once, and check the logs for the results with ensemble numbers {1,2,4,8}.

You may also tune the shrinkage parameter. We suggest to try --shrinkage in {1, 0.1}.

Contact

Guang-He Lee (guanghe@csail.mit.edu)

Citation:

If you find this repo useful for your research, please cite the paper

@inproceedings{lee2020oblique,
	title={Oblique Decision Trees from Derivatives of ReLU Networks},
	author={Guang-He Lee and Tommi S. Jaakkola},
	booktitle={International Conference on Learning Representations},
	year={2020},
	url={https://openreview.net/forum?id=Bke8UR4FPB}
}