No project description provided
Project description
prfr
Probabilistic random forest regressor: random forest model that accounts for errors in predictors and labels, yields calibrated probabilistic predictions, and corrects for bias.
Installation
pip install prfr
OR
pip install git+https://github.com/al-jshen/prfr
Example usage
import numpy as np
from prfr import ProbabilisticRandomForestRegressor, split_arrays
x_obs = np.random.uniform(0., 10., size=10000).reshape(-1, 1)
x_err = np.random.exponential(1., size=10000).reshape(-1, 1)
y_obs = np.random.normal(x_obs, x_err).reshape(-1, 1) * 2. + 1.
y_err = np.ones_like(y_obs)
train, test, valid = split_arrays(x_obs, y_obs, x_err, y_err, test_size=0.2, valid_size=0.2)
model = ProbabilisticRandomForestRegressor(n_estimators=250, n_jobs=-1)
model.fit(train[0], train[1], eX=train[2], eY=train[3])
model.calibrate(valid[0], valid[1], eX=valid[2], eY=valid[3], apply_bias=False)
model.fit_bias(valid[0], valid[1], eX=valid[2])
pred = model.predict(x_test, eX=x_err_test)
pred_qtls = np.quantile(pred, [0.16, 0.5, 0.84], axis=1)
print(pred.shape)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
prfr-0.1.7.tar.gz
(12.4 kB
view hashes)
Built Distribution
prfr-0.1.7-py3-none-any.whl
(12.4 kB
view hashes)