1. 回归问题
from xgboost import XGBRegressor
from sklearn.model_selection import cross_val_score
depths = range(1, 7)
test_scores = []
for depth in depths:
clf = XGBRegressor(max_depth=depth)
test_score = np.sqrt(-cross_val_score(clf, X_train, y_train,
cv=10, scoring='neg_mean_squared_error'))
test_scores.append(np.mean(test_score))
# 可视化,error 与 depth 的变化关系
plt.plot(depths, test_scores)