我已经开始使用该scikit-garden软件包中的分位数随机森林(QRF)。以前,我是使用RandomForestRegresserfrom 创建常规随机森林的sklearn.ensemble。
看起来,QRF的速度与具有较小数据集大小的常规RF相当,但是随着数据大小的增加,QRF的预测速度要比RF慢得多。
这是预期的吗?如果是这样,有人可以解释一下为什么要花这么长时间才能做出这些预测和/或就如何更及时地获得分位数预测给出任何建议。
请参见下面的玩具示例,在该示例中,我测试了各种数据集大小的训练时间和预测时间。
import matplotlib as mpl
mpl.use('Agg')
from sklearn.ensemble import RandomForestRegressor
from skgarden import RandomForestQuantileRegressor
from sklearn.model_selection import train_test_split
import numpy as np
import time
import matplotlib.pyplot as plt
log_ns = np.arange(0.5, 5, 0.5) # number of observations (log10)
ns = (10 ** (log_ns)).astype(int)
print(ns)
m = 14 # number of covariates
train_rf = []
train_qrf = []
pred_rf = []
pred_qrf = []
for n in ns:
# create dataset …Run Code Online (Sandbox Code Playgroud)