我可以使用 sklearnBaggingClassifier
生成连续预测吗?有没有类似的包?我的理解是 bagging 分类器用不同的模型预测几个分类,然后报告大多数答案。似乎该算法可用于为每个分类生成概率函数,然后报告平均值。
trees = BaggingClassifier(ExtraTreesClassifier())
trees.fit(X_train,Y_train)
Y_pred = trees.predict(X_test)
我可以使用 sklearnBaggingClassifier
生成连续预测吗?有没有类似的包?我的理解是 bagging 分类器用不同的模型预测几个分类,然后报告大多数答案。似乎该算法可用于为每个分类生成概率函数,然后报告平均值。
trees = BaggingClassifier(ExtraTreesClassifier())
trees.fit(X_train,Y_train)
Y_pred = trees.predict(X_test)
如果您对预测分类器中的类的概率感兴趣,可以使用该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
改用。
我通常将 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))