PythonでXGBoost(PyPl:0.6の最新バージョン)を使用して予測モデルを作成しており、データの約半分を訓練しています。私は私の最終的なモデルを持っていることを今、私はすべての私のデータでそれを訓練し、私は前に見たことがないこのメッセージを、得た:PythonでXGBoostのtree_method paramを指定する
をツリー方法は、自動的に高速化のための「約」であると選択されています。 が古い動作(単一マシン上の正確な貪欲アルゴリズム)を使用するように、 tree_method「正確」に」再現可能な例として
を設定し、次のコードは、また、私のマシン上でそのメッセージを生成します。
import numpy as np
import xgboost as xgb
rows = 10**7
cols = 20
X = np.random.randint(0, 100, (rows, cols))
y = np.random.randint(0,2, size=rows)
clf = xgb.XGBClassifier(max_depth=5)
clf.fit(X,y)
私は初期化と私のモデルのfit()
段階の両方で「正確」にtree_methodを設定しようとしましたが、それぞれがスローエラー:
import xgboost as xgb
clf = xgb.XGBClassifier(tree_method = 'exact')
clf
> __init__() got an unexpected keyword argument 'tree_method'
my_pipeline.fit(X_train, Y_train, clf__tree_method='exact')
> self._final_estimator.fit(Xt, y, **fit_params) TypeError: fit() got an
> unexpected keyword argument 'tree_method'
PythonでXGBoostでtree_method = 'exact'を指定するにはどうすればよいですか?
[Pythonドキュメント]を見てみると(https://xgboost.readthedocs.io/en/latest/python/python_api.html#をmodule-xgboost.core)、 'tree_method'という名前のパラメータは見つかりません。 –