https://github.com/powderl/local-variable-importance-from-a-global-model
Python module to calculate local variable importance with the global model
https://github.com/powderl/local-variable-importance-from-a-global-model
forest heterogenity importance random spatiotemporal variable
Last synced: 4 months ago
JSON representation
Python module to calculate local variable importance with the global model
- Host: GitHub
- URL: https://github.com/powderl/local-variable-importance-from-a-global-model
- Owner: PowderL
- License: mit
- Created: 2020-02-10T00:38:35.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-09-17T07:00:38.000Z (over 5 years ago)
- Last Synced: 2024-01-28T21:39:51.622Z (over 2 years ago)
- Topics: forest, heterogenity, importance, random, spatiotemporal, variable
- Language: Python
- Homepage:
- Size: 53.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
glvi
============
**glvi** is a Python module for machine learning built on top of **scikit-learn** and is distributed under the MIT license.
**glvi** was developed by Mr. Li for evaluating sptiotemporal heterogeneity of variable imporance through a global model
built on a large time-space scope.
**glvi** inherits from the RandomForestRegressor in **scikit-learn**. If you want to use **glvi** to estimate local variable importance,
model fitting is necessary. But at present, using a fitted random forest model from RandomForestRegressor is not supported. To
accelerate the process, parallel is provided which is same with the parallel in **scikit-learn**. The parallel process can be
implemented by the parameter of ``n_jobs`` which just is consistent with the **scikit-learn**.
**glvi 0.1.5 and later was not supporting Python 2.7 and Python 3.4.**
glvi 0.1.5 and later require Python 3.5 or newer.
glvi requires:
- Python (>= 3.5)
- NumPy (>= 1.11.0)
- SciPy (>= 0.17.0)
- Pandas (>= 0.24.0)
- Joblib (>= 0.11.0)
- Scikit-learn (>= 0.20.0)
User installation
~~~~~~~~~~~~~~~~~
Install from github is available but is not recommended. If you already have a working installation of numpy, scipy, pandas and scikit-learn, the easiest way to install glvi is using ``pip`` ::
pip install -U glvi
Or build from source for Windows ::
python setup.py install
For Linux ::
pip install --verbose
User guide
~~~~~~~~~~~~~~~~~
Compute local variable importance based on decrease in node impurity ::
from glvi import todi
r_t = todi.lovim(500, max_features=0.3, n_jobs=-1)
r_t.fit(train_x, train_y)
local_variable_importance = r_t.compute_feature_importance(X,Y,partition_feature = partition_feature, norm=True,n_jobs=-1)
or compute local variable importance based on decrease in accuracy ::
from glvi import meda
r_m = meda.lovim(500, max_features=0.3, n_jobs=-1)
r_m.fit(train_x, train_y)
local_variable_importance = r_m.compute_feature_importance(X,Y,partition_feature = partition_feature, norm=True,n_jobs=-1)
Development
~~~~~~~~~~~~~~~~~
To acquire lower computation cost, we also developed a another package called **forest-gis** using **Cython** to accelerate the process.
Please refer to : https://github.com/PowderL/Tree-based-machine-learning-for-gis.