ハイパーパラメータHyperparameter
学習を始める前に人が決めておく値
- ハイパーパラメータは、学習を始める前に人が手で決めておく値です。
- 学習が自分で決める値はパラメータです。パラメータは学習が決め、ハイパーパラメータは人が決めます。
- 一歩の大きさ、データを何周させるか、一度に何個ずつ見るか、層を何層積むかがすべてここに入ります。
- うまく合わせられたかは、**全部回してみてはじめて分かります。**そのため設定を変えながら何度も回して見比べます。
- 選ぶときは必ず取り分けておいた検証データで点数を測ります。最後の試験用紙で選ぶと、点数が信用できなくなります。
目次
1たとえで理解する
コインランドリーに入ると、洗濯機の前でまずやることがあります。水温を何度にするか、コースを標準にするか強力にするか、脱水を何分回すか、洗剤を何目盛り入れるかを決めるのです。このダイヤルを全部合わせてから、スタートボタンを押します。
いったん回り始めたら、ダイヤルには手を出せません。扉も閉まったままです。服がどれだけきれいになったか、生地が傷んでいないかは、扉が開いてはじめて分かります。結果が気に入らなければ、**ダイヤルを違う設定に合わせてもう一度回すしかありません。**学習を始める前に人が決めておく値が、このダイヤルです。
2くわしく
スタートボタンを押す前に決めること
一番大事なダイヤルは一歩の大きさです。間違えた分だけ値を直すとき、どれだけ大きく動かすかを決める値で、大きすぎれば目標を通り過ぎて振れ、小さすぎればとてつもなく遅くなります。洗濯機でいえば水流の強さに当たります。
何周回すかも前もって決めます。短ければ学びが足りず、長ければデータを覚えてしまいます。一度に何個ずつまとめて見るかも決める必要があります。まとまりが大きいと計算が安定しますがメモリを多く使い、小さいと揺れる代わりに浅い場所をうまく抜け出します。
モデルの形もダイヤルです。層を何層積むか、一層に何個置くか、学習のときに何パーセントを無作為に休ませるか、値が大きくなりすぎないようどれだけ強く抑えるかといったものです。これらの値は学習が用意してくれません。人が書き込んではじめて学習が始まります。ダイヤルの数だけ見れば少なく感じますが、一つひとつが結果に与える影響は決して小さくありません。
学習が決める値とは立場が違う
モデルの中には、学習が自分で値を決める数字が別にあります。それをパラメータと呼びます。パラメータは人が手を出す必要がなく、手を出せないほど多くもあります。数億個を超えるからです。
ハイパーパラメータは、それより一段上にあります。**パラメータが洗濯槽の中で服がひっくり返ってすすがれることなら、ハイパーパラメータはその動きがどう行われるかをあらかじめ決めるダイヤルです。**個数もずっと少なく、たいてい十個前後で、人が一つひとつ考えて書き込みます。名前が紛らわしくてよく混同されますが、値を誰が決めるかだけを見ればすぐ見分けが付きます。
良い組み合わせを見つける方法
一度で言い当てるのは難しいものです。ダイヤルどうしが影響を与え合うからです。水温を上げれば洗濯時間を短くしてもよいように、一歩を大きく取れば周回数を減らすべき、という具合です。
そこで何回も回してみます。値をいくつか候補に決めておき、組み合わせを漏れなく回してみる方法が一番単純です。候補の組み合わせが多くなりすぎると無作為に選んで回すこともあり、あるダイヤルは結果にほとんど影響しないため、こちらの方が効率的なことも多くあります。前の結果を参考に次に試す組み合わせを絞り込んでいく方法もあります。
一回が長くかかるほど、コツが要ります。データを少しだけ使って短く回しおおよその感触をつかんだあと、見込みのある組み合わせだけを全部回すという順序を取ります。
何で測って選ぶか
何回か回したあと、何を基準に選ぶかが最後の関門です。訓練データの点数で選んではいけません。データを覚えた回がいつも勝ってしまうからです。だから取り分けておいた検証データで測って選びます。
ここにも落とし穴があります。同じ検証データで何十回も選び続けると、そのデータにだけよく合う組み合わせが選ばれてしまいます。人の手を通して検証データを覚えたようなものです。だから最後の試験用紙の役目を果たすデータは、ダイヤルを選ぶあいだ一度も開かずに残しておきます。
3もう少し正確に
ハイパーパラメータ(Hyperparameter)は、学習アルゴリズムの動き方を決める値で、学習の過程で更新されず学習の外側から与えられます。学習率、エポック数、バッチサイズ、層の数と幅、ドロップアウト率、正則化の強さ、オプティマイザの種類が代表例です。これらの値を調整することをハイパーパラメータ調整と呼び、組み合わせを漏れなく調べる方式をグリッドサーチ、無作為に選ぶ方式をランダムサーチと呼びます。
たとえがずれる点もあります。洗濯機のダイヤルは始めたら最後まで同じですが、学習率のように途中で計画どおり値を変えるハイパーパラメータもあります。この場合も「いつどれだけ変えるか」という計画自体を人があらかじめ決めるという点は同じです。また洗濯機のダイヤルは六つか七つですが、実際の学習は数十個が絡み合っており、一つの値を変えると他の値の良い範囲まで一緒に動きます。
4やってみる
5よくある誤解
ハイパーパラメータも学習が自動で見つけてくれると思われがちですが、実際には学習の外側で人が決めるか、別の探索手順を回す必要があります。
パラメータとハイパーパラメータは似たような言葉だと考えられがちですが、実際には値を学習が決めるか人が決めるかで完全に分かれる別の概念です。
既定値をそのまま使うと損だと信じられがちですが、実際には広く使われる既定値はすでに多くの状況で検証済みなので、最初はそのままにして一つか二つだけ触るほうがよいことが多いです。
7ひとこと要約
つまりハイパーパラメータはスタートボタンを押す前に人が合わせておくダイヤルで、いくつかの組み合わせを回して検証データの点数で選ぶのが基本の手順です。
誤りや、もっと良いたとえがありますか? 修正を提案する · 最終更新2026-09-02