前提・実現したいこと
XGBRegressor(評価指標 MAE)で回帰モデルを作って予測を実行しましたが、予測値が全て0.5になってしまいます。
MAEの代替として使用しているobjective='reg:pseudohubererror'が上手く機能していないようで、他の指標だと学習できている状態です。
以下のmodel.predict(X)の結果が全て0.5になってしまいます。
該当のソースコード
from xgboost import XGBRegressor
from sklearn.datasets import load_boston
boston = load_boston()
df = pd.DataFrame(boston.data,columns=boston.feature_names)
df["MEDV"] = boston.target
X =df.loc[:,["CRIM","RM","LSTAT"]].values
y =df.loc[:,"MEDV"].values
model = XGBRegressor(booster='gbtree',
objective='reg:pseudohubererror', #'reg:pseudohubererror'
n_estimators=10 # チューニング前のモデル
)
model.fit(X,y)
model.predict(X)
試したこと
objective='reg:squarederror'に変更すると、予測値が"MEDV"に近しい値で出力されます。
あなたの回答
tips
プレビュー