【グリッドサーチ】
グリッドサーチ とは?
最終更新:
💡 候補の組み合わせを、ひとつずつ比べる
機械学習のハイパーパラメータについて、指定した候補値の組み合わせをすべて評価する探索方法。候補と評価条件の中で良い設定を選べますが、未知のデータで最良になる保証はありません。
📌 このページのポイント
グリッドサーチは何をするの?
モデルの設定値の候補を組み合わせ、全部比べるんだ。たとえば学習率3候補と木の深さ2候補なら6組。指定した候補の中で、決めた評価方法に合う設定を探すよ。
全部試せば必ず最適になる?
候補の外にもっと良い設定があるかもしれない。評価データにも依存するし、乱数で結果が変わることもある。候補の中で良かったことと、新しいデータでも良いことは分けて考えよう。
どのくらい計算する?
6組を5分割の交差検証で比べるなら30回の学習だね。GridSearchCVでrefitを有効にすると、選んだ設定を渡したデータ全体でもう一度学習する。候補数だけを数えると、必要な時間を少なく見積もってしまうよ。
交差検証なら評価も安心?
ほかの探索方法とどう選ぶ?
候補が少なく、全部の比較を確認したいなら使いやすいね。候補が多いならランダムサーチで試行数を決める方法もある。探索の予算と評価条件を揃えて比べ、どの方法も必ず勝つとは考えないでね。
もっと詳しく知りたい人へ
データの標準化は探索前に全件で行ってよい?
評価側の情報が学習へ漏れることがあります。標準化など学習する前処理をPipelineに含め、各分割の学習部分だけで学習させます。時系列や同じ利用者のデータは、分割方法も用途に合わせて選びます。
まとめ:ざっくりこれだけ覚えればOK!
「グリッドサーチ」って出てきたら「指定した候補の全組み合わせを比較する方法」と思えばだいたいOK!
📖 おまけ:英語の意味
「Grid Search」 = 格子探索
💬 候補値の組み合わせを格子の交点のように並べて調べるイメージです。候補を指定する範囲の探索で、理論上の最適値の保証ではありません。