【はいぱーぱらめーたちゅーにんぐ】

ハイパーパラメータチューニング とは?

最終更新:
💡 学習の設定を試し、検証結果で選び直す作業

機械学習の学習率やモデルの構成などの設定を、候補ごとに学習・検証して選ぶ作業。検証指標の改善を目指し、人が試す方法や探索を自動化する方法がある。性能向上や最良の設定が必ず得られるわけではない。

📌 このページのポイント
学習の設定を試して選ぶ グリッドサーチの例 結果から次を選ぶ 設定Aの候補 設定Bの候補 指定した12通りを試す ① 候補を学習・検証 ② 結果から予測 ③ 次の候補を選ぶ ベイズ最適化の流れ 検証結果で設定を選ぶ 最終評価用データは、設定選びに使わない 探索しても、最良の設定が見つかる保証はない
候補を学習・検証して設定を選ぶ。左はグリッド12候補の例、右は結果から次の候補を選ぶ例。最終評価は設定選びと分ける。
ひよこ ひよこ
普通のパラメータと何が違うの?
ペンギン先生 ペンギン先生
モデルの重みなどは学習データを使って更新するもの。ハイパーパラメータは学習率やモデルの構成など、学習の進め方やモデルを決める設定だよ。人が設定することも、候補を自動で試して選ぶこともできるんだ。
ひよこ ひよこ
どんな探し方があるの?
ペンギン先生 ペンギン先生
グリッドサーチは指定した候補の全組み合わせ、ランダムサーチは決めた範囲からランダムに候補を選んで試すよ。ベイズ最適化は、過去の試行結果から性能を予測し、次に試す候補を選ぶ方法だね。どれも、常に最良の設定が見つかるとは限らないよ。
ひよこ ひよこ
全組み合わせを試すのは大変?
ペンギン先生 ペンギン先生
学習率5候補、バッチサイズ4候補、層数3候補なら60通りだよ。各候補を5分割交差検証で評価すると、候補の評価だけで300回の学習になる。最後に選んだ設定で再学習する場合もあるので、候補数と計算予算を一緒に考えよう。
ひよこ ひよこ
交差検証すれば、過学習は防げる?
ペンギン先生 ペンギン先生
交差検証でも保証はできないよ。同じ検証結果を見て何度も設定を選ぶと、その検証データに合わせすぎることがある。設定の選択には学習・検証用データを使い、最終評価用のテストデータは選択に使わず残しておこう。探索手順そのものを評価する方法には、内側で設定を選び、外側で評価する入れ子の交差検証もあるよ。
ひよこ ひよこ
ツールに任せたら全部自動?
ペンギン先生 ペンギン先生
Optunaなどで候補の探索を自動化できるよ。ただし、何の指標を良くしたいか、どの範囲を探すか、何回まで試すかは決める必要がある。自動探索でも計算コストはかかるし、設定を選ぶ評価と最終評価を分けることは大切だね。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ハイパーパラメータチューニング」って出てきたら「学習の設定を試し、検証結果で選ぶ作業」と思えばだいたいOK!
📖 おまけ:英語の意味
「Hyperparameter Tuning」 = ハイパーパラメータ調整
💬 Hyperは超・上位、Parameterはパラメータ、Tuningは調整。通常の重みの学習とは別に、学習の設定を選ぶ作業を指すよ。

参考資料

← 用語集にもどる