ポイント
- 学習は例を見ながらずれた分だけ調節値を少しずつ直していく過程です。説明を聞いて知るのではなく、やってみながら合わせていくやり方です。
- 一度に大きく直しません。ごく少しずつ、とても多くの回数直すことが肝心です。
- 学習が終わると調節値がある状態で止まり、その止まった状態を保存したものがモデルです。
- 学習は機械学習を動かすエンジンで、機械学習はさらに人工知能を作る方法の一つです。
- 同じ例で長く続けすぎると、良くなっていたものがある地点から見たものをただ覚え始めます。
たとえで理解する
自転車を習う日を思い浮かべてください。そばでどれだけ詳しく説明しても役に立ちません。ハンドルを右に何度傾けて体を左にどれだけ倒すかを全部覚えても、サドルに座った瞬間そのまま倒れてしまいます。
学びは別の方法で起こります。ペダルを踏み、右に傾き、足を突いて止まります。もう一度乗って、今度は少し傾きを減らしてみます。また倒れ、また少し直します。何十回も繰り返すうちに、ある瞬間から体が自然にバランスを取るようになります。何をどう直したのか、言葉ではまだ説明できません。
ここで大事なのは直す幅です。右に倒れたからといってハンドルを思い切り左へ切れば、今度は反対に倒れます。ずれた分だけ少し戻すこと、そしてその小さな調整をしつこいほど繰り返すこと。学習はまさにこのやり方で起こります。
くわしく
一巡は四つの動きです
学習は同じ四つの動きを繰り返します。第一に、例(たいていはひとまとまり)を入れて答えを出してみます。第二に、その答えが正解からどれだけずれているかを一つの数で測ります。第三に、その数を減らすにはどの調節つまみをどちら向きに回すべきか計算します。第四に、その向きにほんの少しだけ回します。
そして次の例に移り、同じ四つの動きをまた行います。自転車で言えば、乗ってみて、どれだけ傾いたか感じて、どちら向きに戻すべきか知り、少し戻す流れです。
この一巡が数え切れないほど、大きなモデルなら数十万回を超えて回ります。一巡で変わる量は目に見えないほど小さいのに、この小さな変化が積み重なって、はじめはでたらめだったものが次第にそれらしい答えを出すようになります。
少しずつ直す理由
一度に大きく直してはいけない理由があります。今見ている例一つが全体を代表しているわけではないからです。たまたま変な例を一つ見て大きく方向を変えると、それまで積み上げてきたものが一気に崩れます。右に傾いたからとハンドルを思い切り切って反対側に倒れるのと同じです。
だから一歩の大きさをごく小さく取ります。この一歩の大きさを学習率と呼びます。大きすぎると答えの周りを行き来して落ち着かず、小さすぎると辿り着くまでに果てしなく時間がかかります。ちょうどよい大きさを見つけることが、学習させる人の大事な仕事の一つです。
実際には例を一つずつ見るのではなく、数十から数千個ずつまとめて見るのがふつうです。ひとまとまりの平均で方向を決めれば、変な例一つに振り回されずに歩みが安定します。
ずれの大きさを一つの数で測ります
学習が回るためには、今どれだけ間違っているかを数で知る必要があります。この数を測る物差しを損失と呼びます。正解と完全に同じなら0に近く、離れるほど大きくなります。
学習の目標はこの数を減らすことただ一つです。絵を上手に描けとか話を上手にしろという指示はどこにもありません。人がすることは何を物差しにするかを決めるところまでで、あとはその数を減らす方向へ自然に流れていきます。
だから物差しの選び方を誤ると、見当違いのほうへ進みます。自転車で言えば、倒れないことだけを測れば、その場に立ち止まる方法を覚えてしまいます。実際に学習で起きる事故には、こういう種類のものが多くあります。
長く続ければずっと良くなるわけではありません
学習を続けると損失はどんどん減っていきます。ですが同じ例を何度も繰り返しすぎると、ある地点を越えて奇妙なことが起こることがあります。学習に使った例についてはますます上手に当てるのに、初めて見る例についてはかえって悪くなりうるのです。規則を見つける代わりに、見たものを覚え始めたということです。この状態を過学習と呼びます。
そこで学習に使っていない例を別に取り分けておき、途中で何度も点検します。その点数がこれ以上よくならず、逆に下がり始めたらその場で学習を止める方法がよく使われます。自転車も、倒れなくなったあと同じ路地ばかり回っても意味がなく、別の道に出てこそ実力になるのと似ています。
学習が終わるとモデルが残ります
学習を止めると、その瞬間の調節値がそのまま固まります。この固まった一そろいの値を保存したものがモデルです。学習は過程を指す言葉で、モデルはその過程が残した結果物です。
たいていのモデルは一度固まると自分から成長しません。答えを出す計算そのものでは調節値は変わりません。ただし、おすすめ表示のように利用者の反応を集めて学習を回し続け、新しく直したモデルにこまめに差し替えるサービスもあります。自転車を習ったあと乗り回している間、新しく学ぶことがほとんどないのと同じです。実力を変えるにはもう一度学習を回す必要があり、すでに完成したモデルに新しい資料を少しだけ与えて性格だけを変える方法も別にあります。
もう少し正確に
学習は損失関数の値が小さくなる方向へパラメータを繰り返し更新する最適化の過程です。方向は損失が各パラメータに対してどれだけ敏感かを計算して得られ、この敏感さを勾配と呼び、勾配の反対方向へ少しずつ動かす方法を勾配降下法と呼びます。深いニューラルネットワークでは、最後の層で測った誤差の責任を前のほうの層まで逆にたどりながら分配して計算しますが、この手続きが誤差逆伝播です。用意した例全体を一巡することをエポックと数えます。
自転車のたとえがずれる点もあります。人は数十回倒れれば身につきますが、モデルはたいてい数百万から数十億個の例を見ながら、数千回から数十万回以上も調節値を直します。人は倒れるたびに次どうするか自分で判断しますが、モデルはずれの大きさを測る物差しが外から与えられてはじめて方向を知ることができます。また人は一度身につけたバランス感覚を別の乗り物にもある程度応用できますが、モデルは学習した範囲を少し外れただけで大きく崩れることが多いです。
やってみる
よくある誤解
学習は知識を保存する作業だと思われがちですが、実際には例を一つひとつ保管するのではなく、答えがずれた分だけ調節値を少しずつ動かす作業です。ただしその結果、一部の例をほぼそのまま覚えてしまうこともあります。
長く学習させるほど良くなると見なされがちですが、実際には同じ例を何度も繰り返しすぎると、ある地点から見たものだけを覚えてしまい、初めての問題ではかえって悪くなることがあります。
サービスを使っている間も学習し続けていると思われがちですが、実際には答えを出すその瞬間に調節値が変わることはありません。ただしサービスや設定によっては、利用者が残した会話や記録を集めておき、次の学習に使うこともあります。
ひとこと要約
学習は例を見ながらずれた分だけ調節値をごく少しずつ数え切れないほど直していく過程で、その過程が止まった場所に残るのがモデルです。
誤りや、もっと良いたとえがありますか? 修正を提案する · 最終更新 2026-10-18