我可以使用sklearn的BaggingClassifier
进行连续预测吗?有类似的包吗?我的理解是,装袋分类器使用不同的模型预测几种分类,然后报告多数答案。看起来这个算法可以用于为每个分类生成概率函数,然后报告平均值。
trees = BaggingClassifier(ExtraTreesClassifier())
trees.fit(X_train,Y_train)
Y_pred = trees.predict(X_test)
答案 0 :(得分:3)
如果您对预测分类器中类的概率感兴趣,可以使用predict_proba
方法,该方法为您提供每个类的概率。这是对您的代码的一行更改:
trees = BaggingClassifier(ExtraTreesClassifier())
trees.fit(X_train,Y_train)
Y_pred = trees.predict_proba(X_test)
Y_pred
的形状为[n_samples, n_classes]
。
如果您的Y_train
值是连续的,并且您想要预测这些连续值(即,您正在处理回归问题),那么您可以改为使用BaggingRegressor
。
答案 1 :(得分:1)
我通常将BaggingRegressor()用于连续值,然后将性能与RMSE进行比较。下面的示例:
from sklearn.ensemble import BaggingReressor
trees = BaggingRegressor()
trees.fit(X_train,Y_train)
scores_RMSE = math.sqrt(metrics.mean_squared_error(Y_test, trees.predict(X_test))