【正解】D
【0からの解説】
「トレーニングデータでは優秀だが、新しい未知のデータでは性能が落ちる」という症状は、過学習(オーバーフィッティング)の典型です。過学習とは、モデルがトレーニングデータの細かいノイズまで暗記してしまい、一般化能力(未知データへの対応力)を失った状態です。
XGBoost は決定木を多数組み合わせるアルゴリズムで、max_depth は各決定木の深さの上限を決めるハイパーパラメータです。木が深いほどモデルは複雑になり、トレーニングデータの細部まで学習できてしまうため過学習しやすくなります。逆に max_depth を減らすと木が浅くなってモデルが単純化され、ノイズの暗記が抑えられて汎化性能が向上します。過学習への対処として最も直接的な選択肢が D です。
【誤りの選択肢】
A:学習率を上げると各ブースティングステップの更新幅が大きくなり、学習が不安定になります。過学習の解消にはならず、一般にはむしろ性能を悪化させる方向です。
B:無関係な特徴量の削除は一般論としては有効なことがありますが、「どの特徴量が無関係か」が特定されていない状況では効果が不確実です。過学習という明確な症状に対しては、モデルの複雑さを直接制御する max_depth の調整が定石です。
C:max_depth を増やすとモデルはさらに複雑になり、過学習が悪化します。症状に対して逆効果の選択肢です。
【参考】
SageMaker XGBoost アルゴリズムXGBoost のハイパーパラメータ