二手车价格预测Baseline (三)模型训练与预测

  1. 利用xgb进行五折交叉验证查看模型的参数效果

## xgb-Model
xgr = xgb.XGBRegressor(n_estimators=120, learning_rate=0.1, gamma=0, subsample=0.8,\
  colsample_bytree=0.9, max_depth=7) #,objective ='reg:squarederror'

scores_train = []
scores = []

## 5折交叉验证方式
sk=StratifiedKFold(n_splits=5,shuffle=True,random_state=0)
for train_ind,val_ind in sk.split(X_data,Y_data):

  train_x=X_data.iloc[train_ind].values
  train_y=Y_data.iloc[train_ind]
  val_x=X_data.iloc[val_ind].values
  val_y=Y_data.iloc[val_ind]

  xgr.fit(train_x,train_y)
  pred_train_xgb=xgr.predict(train_x)
  pred_xgb=xgr.predict(val_x)

  score_train = mean_absolute_error(train_y,pred_train_xgb)
  scores_train.append(score_train)
  score = mean_absolute_error(val_y,pred_xgb)
  scores.append(score)

print('Train mae:',np.mean(score_train))
print('Val mae',np.mean(scores))

posted on 2020-06-12 09:07  heroy1  阅读(280)  评论(0)    收藏  举报