This repository includes the Python code for SLRT(Segmented Linear Regression Tree) in our paper "Partitioning Structure Learning for Segmented Linear Regression Trees" (NeurIPS 2019).
- Walk-through-examples.py
To illustrate the parameters setting and model results for SLRT algorithm, where the variables for regression and for splitting can be assigned by users. The Walk-through-examples.pdf is generated by jupyter notebook. You may have a quick look about how this method works and how to interpret the model by having a look at this file. Hope you will get interested :)
- SLRT_alg1_simple_v1.py
The SLRT module is for building piece-wise linear regression tree using the simple stopping rule and includes the function for pruning (cvt()).
- SLRT_alg1_testing_v1.py
The SLRT module is for building piece-wise linear regression tree using the hypothesis testing based stopping rule.
- SLRF_alg1_simple_v1.py
Random Forest based on SLRT, where each single tree is generated by SLRT_alg1_simple_v1.py
- plot_tree.py
This is for plotting the tree structures.
- plot_tree_beta.py
This is for plotting the tree structures, with models displayed on each leaf.
- tree_lasso.py
This module combines the data partitioning results with LASSO estimation on leaves.