我正试图找出sklearn的梯度增强分类器如何根据不同的估算器做出预测。
我想将sklearn模型转换为基本python以执行预测。我知道如何从模型中获得单个估计量,但是我不知道如何从那些单独的估计值中获得完整的模型做出的最终概率预测。我相信有一个S型函数或其他东西,但我无法解决。
GBC = GradientBoostingClassifier(n_estimators=1)
GBC.fit(x_train, y_train, sample_weight=None)
GBC.predict_proba(np.array(x_test.iloc[0]).reshape(1,-1))
这将返回概率:array([[0.23084247, 0.76915753]])
但是当我跑步时:
Sole_estimator = GBC.estimators_[0][0]
Sole_estimator.predict(np.array(x_test.iloc[0]).reshape(1,-1))
返回array([1.34327168])
将scipy的expit应用于输出
expit(Sole_estimator.predict(np.array(x_test.iloc[0]).reshape(1,-1)))
我得到:
array([0.79302745])
我相信.init_
估计量有助于做出预测,但尚未找到方法。我还要感谢任何有关如何使用> 1 n_estimators进行预测的指示-如果变化的话。
谢谢:)