学習率とは

学習率とは、機械学習AI学習するとき、一度にどれくらいパラメータ(重み)を更新するか、その「一歩の大きさ」を決める値のことです。AIは正解とのズレを少しずつ縮めながら賢くなりますが、その一歩をどれだけ大きく踏み出すかを左右するのが学習率です。学習を始める前に人が決める、ハイパーパラメータの代表例でもあります。

大きすぎても小さすぎてもうまくいかない

学習率は、大きければよいというものではありません。大きすぎると最適な地点を飛び越えてしまい、いつまでも答えにたどり着けません。逆に小さすぎると一歩が慎重すぎて、学習に時間がかかりすぎたり、途中の浅い谷で止まってしまったりします。坂道を下って一番低い場所を目指すとき、歩幅が大きすぎると行き過ぎ、小さすぎるとなかなか着かない、とイメージするとつかみやすいでしょう。ちょうど良い歩幅を見つけることが、学習のカギになります。

なぜ重要なのか

学習率の良し悪しは、AIがうまく学べるか、学習にどれだけ時間がかかるかを大きく動かします。そのため、いくつかの値を試しながら、最適なものを探すのが一般的です。AIの性能を引き出すうえで、もっとも気を配るハイパーパラメータのひとつとされています。

Topicいまは「歩幅」を自動で調整するのが主流

学習率は手で決めるのが難しく、いまは学習の途中で自動的に歩幅を調整するくふうが主流です。代表的なのがAdamやRMSpropと呼ばれる手法で、状況に応じて歩幅を変えながら学習を進めます。さらに、最初は大きめに踏み出して徐々に歩幅を狭めていく「学習率の減衰」という考え方も一般的。最初は大股でゴールに近づき、近くなったら歩幅を狭めて慎重に合わせる感覚に近いといえます。

学習率に関するよくある質問

学習率は大きいほど学習が速くて良いのですか?
いいえ。大きすぎると最適な地点を飛び越えていつまでも答えにたどり着けず、小さすぎると学習に時間がかかりすぎたり、途中の浅い谷で止まったりします。坂道を下るときの歩幅と同じで、ちょうど良い大きさを見つけることが大切です。
学習率は人が決めるのですか?
学習を始める前に人が決めるハイパーパラメータの代表ですが、手で最適値を決めるのは難しいため、今はAdamやRMSpropのように学習の途中で歩幅を自動調整する手法が主流です。最初は大きめに踏み出し徐々に狭める「学習率の減衰」もよく使われます。
ハイパーパラメータとは何が違うのですか?
学習率はハイパーパラメータの一種です。ハイパーパラメータは学習の前に人が設定する値の総称で、学習率はそのなかでもとくに性能を左右する代表例とされています。