gpt4 book ai didi

scikit-learn - 使用 xgboost 进行校准

转载 作者:行者123 更新时间:2023-12-04 02:36:45 24 4
gpt4 key购买 nike

我想知道我是否可以在 xgboost 中进行校准。更具体地说,xgboost 是否带有现有的校准实现,如 scikit-learn 中的,还是有一些方法可以将 xgboost 中的模型放入 scikit-learn 的 CalibratedClassifierCV 中?

据我在 sklearn 中所知,这是常见的程序:

# Train random forest classifier, calibrate on validation data and evaluate
# on test data
clf = RandomForestClassifier(n_estimators=25)
clf.fit(X_train, y_train)
clf_probs = clf.predict_proba(X_test)
sig_clf = CalibratedClassifierCV(clf, method="sigmoid", cv="prefit")
sig_clf.fit(X_valid, y_valid)
sig_clf_probs = sig_clf.predict_proba(X_test)
sig_score = log_loss(y_test, sig_clf_probs)
print "Calibrated score is ",sig_score

如果我将 xgboost 树模型放入 CalibratedClassifierCV 会引发错误(当然):
RuntimeError: classifier has no decision_function or predict_proba method.
有没有办法将 scikit-learn 的优秀校准模块与 xgboost 集成?

欣赏你有见地的想法!

最佳答案

来自 2020 年 7 月的 hell 景观的注释:
您不再需要包装类。 predict_proba 方法内置于 xgboost sklearn python api 中。不确定它们是什么时候添加的,但它们肯定会在 v1.0.0 上出现。
注意:这当然只适用于具有 predict_proba 方法的类。例如:XGBRegressor 没有。 XGBClassifier 可以。

关于scikit-learn - 使用 xgboost 进行校准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35585927/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com