1. 学ぶ
  2. /
  3. コース
  4. /
  5. Pythonで挑むKaggleコンペティション

Connected

演習

2次元グリッドサーチ

各ハイパーパラメータを独立にチューニングする欠点は、異なるハイパーパラメータ間に依存関係がある可能性があることです。より良い方法は、考えられるハイパーパラメータの組み合わせをすべて試すことです。ただし、その場合はグリッド探索の空間が急速に拡大します。たとえば、2つのパラメータにそれぞれ10個の候補があると、実験は100回になります。

あなたの目標は、Gradient Boosting モデルにおける max_depth と subsample の最適な組み合わせを見つけることです。subsample は、個々の決定木の学習に使用する観測の割合を表します。

関数 get_cv_score() が与えられています。これは学習用データセットとモデルパラメータの辞書を引数に取り、3分割のクロスバリデーションで得られる全体の検証 RMSE を返します。

指示

100 XP
  • max_depth と subsample の候補グリッドを指定します。max_depth: 3、5、7。subsample: 0.8、0.9、1.0。
  • itertools パッケージの product() 関数をこれらのハイパーパラメータグリッドに適用します。これにより、2つのグリッドのすべての組み合わせが得られます。
  • それぞれのハイパーパラメータ候補の組を、モデルの params 辞書に渡してください。