基本 初級
ニューラルネットワーク
Neural Network
人間の脳の神経細胞のつながりをヒントにした、数値の計算を何層にも重ねて入力から出力を導くしくみです。現在の生成 AI を含む、ほとんどの AI モデルの土台になっています。
別の呼び方NN、神経回路網、ニューラルネット
例画像を分類するニューラルネットワークは、層を重ねるごとに、輪郭から形、物体へと特徴を捉えていく。
詳しく
ニューラルネットワークは、たくさんの小さな計算部品(ニューロンやノードと呼ばれます)を層状につないだ数式の集まりです。名前は脳の神経回路から来ていますが、実際の脳を再現したものではなく、あくまで着想を借りた数学的な仕組みです。
しくみ
各ノードは、前の層から数値を受け取り、それぞれに重みと呼ばれる係数を掛けて合計し、簡単な変換(活性化関数)を通して次の層へ渡します。これを入力層、中間の層(隠れ層)、出力層と重ねていきます。
学習とは、この重みを調整する作業です。たとえば猫の画像を見せて「猫」と答えさせ、間違えたら、誤差が小さくなる方向へ重みを少しずつ直します。この調整に使われるのが誤差逆伝播法と勾配降下法です。何百万、何億もの例を繰り返すことで、人が明示的にルールを書かなくても、パターンを捉えられるようになります。
具体例
- 手書き文字の判別:画素の明るさを入力すると、0〜9 のどれかを出力する。
- 写真に写るものの識別、音声の文字起こし、機械翻訳。
- 大規模言語モデル:次に来る語を予測する巨大なニューラルネットワークで、構造としてはトランスフォーマーが使われる。
料理にたとえると、ノードは「少しずつ味を調える調理人」で、重みは調味料の配分です。何度も試食して配分を直すうちに、狙った味に近づいていきます。
使うときの注意・よくある誤解
- 脳そのものではありません。 人間の脳の仕組みはまだ分かっていない部分が多く、ニューラルネットワークが脳と同じように考えているとは言えません。
- 中身が読みにくい。 重みの数が膨大で、なぜその答えになったかを人が説明するのは難しい場合があります。説明可能な AI の研究が進められています。
- データに依存します。 学習に使ったデータの偏りや誤りは、そのまま出力に表れます。
- 層を増やせば必ず良くなるわけではありません。 大きくすると性能が上がる傾向はありますが、学習の難しさや計算費用も増えます。
関連する考え方
層を深く重ねたものがディープラーニングで、機械学習の一分野にあたります。モデルのパラメーターとは、このネットワークの重みの総数を指すことが多く、「70億パラメーター」といった表現はその規模を表しています。
規模の感覚
小さなものは数千個の重みで手書き数字を判別できますが、大規模言語モデルでは数百億から数兆個にもなります。重みの数が増えるほど表現力は高まる一方、学習と運用に必要な計算量も増え、専用の GPU が欠かせなくなります。
あわせて知りたい言葉
- ディープラーニング多くの層を重ねたニューラルネットワークで、データから特徴を自動的に学ぶ機械学習の手法です。画像認識、音声認識、文章生成など、近年の AI の進歩の中心になっています。
- 機械学習人がルールを一つずつ書く代わりに、大量のデータからコンピューターが規則性を見つけ出し、予測や分類をできるようにする技術です。AI を実現する中心的な手法の一つです。
- 誤差逆伝播法ニューラルネットワークの出力の誤差を、出力側から入力側へさかのぼって伝え、各パラメータをどちらにどれだけ直せばよいかを効率よく求める方法です。現在の深層学習の学習の基本です。
- パラメータモデル内部で学習によって調整される数値(重み)のことです。数が多いほど多くの知識やパターンを表現できる傾向がありますが、必要な計算量やメモリも大きくなります。ただし性能は数だけでは決まりません。
- Transformer2017年の論文「Attention Is All You Need」で提案されたニューラルネットワークの構造です。現在の LLM の大半がこの構造を土台にしており、画像や音声の生成にも広く使われています。