『ブームは、これで三度目』『LLMの「層」とは何か』『LLMがGPUを必要とする理由』——この連載のあちこちで、「ニューラルネットワーク」(略して「ニューラルネット」)という言葉を、説明なしに使ってきました。知っている前提で素通りしていた言葉を、ここで拾い直します。
名前は「神経」、中身はただの計算
日本語にすると「神経回路網」。名前の由来は、脳の中で神経細胞(ニューロン)が繋がり合って働く様子です。1940年代、脳のニューロンの働きを単純な数式に置き換えられないか、という発想から生まれました。
ただし、脳を精密に再現しているわけではありません。「ニューラル」という、神経を指す名前は残っていますが、中身は掛け算と足し算です。 この記事で見ていくのは、その「ただの計算」のほうです。
いちばん小さい部品:「1つのニューロン」
ニューラルネットワークは、ニューロンと呼ばれる小さな部品を、大量に組み合わせてできています。まず1つのニューロンが何をしているかを見てみます。
たとえば、「傘を持って出かけるか」を判定するニューロンを考えます。手がかりが3つあるとします。
| 手がかり | スコア | 重み |
|---|---|---|
| 降水確率 | 8 | ×0.6 |
| 空の暗さ | 6 | ×0.3 |
| 風の強さ | 2 | ×0.1 |
やることは3つだけです。
- それぞれのスコアに、重みを掛ける(8×0.6=4.8、6×0.3=1.8、2×0.1=0.2)
- 全部を足す(4.8+1.8+0.2=6.8)
- しきい値(たとえば5)と比べる。超えていれば「傘を持つ」、超えていなければ「持たない」
6.8は5を超えているので、「傘を持つ」という判定です。掛けて、足して、しきい値と比べる。 ニューロン1個がやっているのは、これだけです。この「重み」は、『言葉が数字になるまで』で「つまみ」と呼んだものと、同じ部品です。
1人の判定では心もとない:並べて「層」にする
このニューロン、判定できるのは1種類のパターンだけです。降水確率・空の暗さ・風の強さを、この重みの配合でしか見られません。
そこで、同じ3つの数字を、重みの配合を変えた別のニューロンにも見せます。 たとえば「今日は車で出かけるべきか」を判定するニューロンは、同じ3つの数字を材料にしても、重みの付け方はまったく違うはずです。
こうして、同じ入力を、複数のニューロンに同時に見せるというグループができます。これが層です。1人の判定官ではなく、何人もの判定官が同じ材料を見て、それぞれ違う結論を下す——それが1つの層の中身です。
(『LLMの「層」とは何か』で見たTransformerの層は、これに「みんなに聞いて回る」という工程を足した、もっと手の込んだ発展形です。まずはここでの、いちばん単純な形を押さえておいてください。)
層を重ねる:だから「ネットワーク」
ここからが本題です。1つの層の出力を、そのまま次の層の入力にします。
- 1層目:降水確率・空の暗さ・風の強さから、「傘の要不要」「車の要不要」など、複数の判定を下す
- 2層目:1層目が下した複数の判定そのものを材料にして、さらに別の判定を下す(たとえば「家を出るのを10分早めるべきか」)
生の数字ではなく、前の層がすでに一段階まとめた判定を材料にできるので、より込み入った判断が可能になります。この「層と層が、出力と入力で繋がり合っている」配線そのものが、ネットワーク(網)と呼ばれる理由です。
層を重ねるのは、思いつきではなく必然でした。層が1つだけのネットワーク(パーセプトロン)には、解けない問題があることが1969年に示され、層を重ねればいいという発想自体はあったものの、多層のネットワークをうまく訓練する方法が確立されておらず、実用化までは1986年までかかりました。1969年から1986年、17年の空白です。この経緯は『ブームは、これで三度目』に詳しく書きました。
重みは、最初はでたらめな数字
ここまでの説明では、重み(0.6や0.3)を都合よく決め打ちしていました。ですが実際のネットワークは、最初はでたらめな数字から始まります。 学習が始まる前のニューラルネットワークに何か判定させても、まともな答えは返ってきません。
まともな重みに近づけていく作業が学習です。「こう判定してほしい」という正解と、実際の出力のズレを測り、ズレが減る方向に、大量の重みを少しずつ動かす——これを何十億回も繰り返します。この「動かし方」を具体的に見たのが、『言葉が数字になるまで』の「外した分だけ、つまみを回す」の節です。
LLMも、この仲間の1つ
ニューラルネットワークは、LLMのために作られた仕組みではありません。画像を見分けるものも、音声を聞き分けるものも、同じ「ニューロンを層にして重ねる」という枠組みの上に建っています。 『LLMがGPUを必要とする理由』で触れたAlexNet(2012年、画像認識)も、ニューラルネットワークの一種です。
LLMは、この枠組みの上にTransformerという特定の設計(Attentionという「みんなに聞いて回る」工程を持つ)を組み合わせ、「次に来る言葉を当てる」ことに特化させたものです。LLMが実際に何をしているかは、『そもそもLLMって何?』にまとめてあります。
まとめ
- ニューロン1個がやっているのは、掛けて、足して、しきい値と比べるだけ
- 同じ入力を複数のニューロンに見せたものが層、層の出力を次の層の入力に繋いだものがネットワーク
- 重みは最初でたらめな数字で、学習によって少しずつ動かされ、まともな値に近づいていく
- LLMも画像認識も、同じ「ニューロンを層にして重ねる」枠組みの上に建つ、それぞれ特化した設計
次は、この枠組みの上に建つLLMが実際に何をしているかを見る『そもそもLLMって何?』へどうぞ。