ニューラルネットワークとディープラーニング(シラバス 技術11)

学習目標

ニューラルネットワークを形づくる入力層・隠れ層・出力層の役割を理解し、単純パーセプトロンの限界が隠れ層を加えた多層パーセプトロン、さらにディープラーニングへとつながった流れと、深い層の計算を支えるCPU・GPU・TPUの役割の違いを説明できるようにします。

要点

ニューラルネットワークの骨組み

ニューラルネットワークは、脳の神経細胞のつながりを単純化した計算の仕組みです。小さな計算単位(ユニット)を層状に並べ、層から層へ値を渡します。

  • 入力層:データを受け取る層です。画像なら画素の値が入ります。
  • 隠れ層:入力層と出力層の間にある層で、データの特徴を段階的に取り出します。
  • 出力層:最終的な答えを出す層です。分類なら各クラスの確率、回帰なら予測値を出します。

各ユニットは、前の層からの値に重みを掛けて足し、バイアスを加えて活性化関数に通し、次の層へ渡します。学習とは、この重みとバイアスを調整することです。

単純パーセプトロンとその限界

単純パーセプトロンは、1958年にローゼンブラットが発表したモデルです。入力層と出力層だけからなり、隠れ層をもちません。入力の重み付き和がしきい値を超えれば1、超えなければ0を出力します。

できるのは、データを1本の直線(高次元では超平面)で2つに分けることだけです。直線で分けられる問題を線形分離可能といいます。

入力A入力BANDORXOR
00000
01011
10011
11110

ANDとORは直線1本で0と1を分けられます。XOR(排他的論理和)で1になる2点は対角に並ぶため、直線1本では分けられません。1969年にミンスキーとパパートがこうした限界を示したことは、ニューラルネットワーク研究が停滞する一因になったとされます。

多層パーセプトロンからディープラーニングへ

入力層と出力層の間に隠れ層を加えたものが多層パーセプトロンです。隠れ層で入力を別の表現に変えてから出力層で分けるため、XORのような線形分離できない問題も扱えます。ただし、隠れ層の活性化関数が非線形であることが前提です。

1986年には、ラメルハートらが隠れ層の重みも誤差逆伝播法で学習できることを示しました。隠れ層をさらに何層も重ねたものがディープニューラルネットワークで、これを使う機械学習がディープラーニングです。層を深くすると表現力が増す一方、学習が難しくなり、計算量も増えます。

計算を支えるハードウェア

ニューラルネットワークの計算の大半は、「重み×入力」を大量に足し合わせる行列の計算です。1つ1つの掛け算は単純で互いに独立なので、並列処理で速くなります。

特徴向いている処理
CPU少数の高性能なコアをもつ汎用の演算装置全体の制御、複雑な分岐を含む処理を順にこなすこと
GPU単純なコアを大量にもつ。もとは画像描画用同じ計算の大量の並列処理。ディープラーニングの学習で広く使われる
TPUGoogleがテンソル(多次元配列)の計算向けに開発した専用プロセッサ。2016年に公表ニューラルネットワークの大量の行列計算

GPUを画像描画以外の汎用計算に使うことをGPGPUと呼びます。GPUやTPUを使う場合も、データの読み込みや全体の制御はCPUが担います。

G検定で問われる深さ

パーセプトロンの学習規則の式や、チップの性能値・製品名・世代までは不要です。単純パーセプトロンが線形分離可能な問題しか解けない理由をXORで説明できること、隠れ層を加える意味、CPU・GPU・TPUがそれぞれ何に向くかを説明できれば十分です。

つまずきやすい点

  • 単純パーセプトロンは隠れ層をもたず、直線(高次元では超平面)で分けられる線形分離可能な問題しか解けないため、XORを表せない点
  • 隠れ層を加えても、活性化関数がすべて線形なら全体は1つの線形変換と同じになり、XORのような問題は解けない点
  • GPUはもともと画像描画用のプロセッサがのちに汎用の並列計算にも使われるようになったもので、TPUは最初からニューラルネットワークの計算向けにGoogleが開発した専用プロセッサである、という出自の違い
  • GPUやTPUを使っても、プログラム全体の制御や複雑な分岐を含む処理はCPUが担い、役割を分担している点

シラバスのキーワード

CPU、GPU、TPU、隠れ層・入力層・出力層、多層パーセプトロン、単純パーセプトロン

練習問題

  1. 隠れ層と非線形性の役割
  2. 学習に使う計算資源の役割分担
  3. パーセプトロンのバイアスの働き
  4. 各層のユニット数の決め方
  5. パーセプトロンの学習規則
ほかの2問
  1. 万能近似定理と深さの意義
  2. ディープラーニングと特徴量設計

混同しやすい用語

この項目の関連用語

AIで作成 人による確認:未 誤りを報告

出典と作成について

作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合。手順は編集方針)

最終更新日: 最終確認日:

対応シラバス:シラバス第1.4版 技術11

出典

改訂履歴

ディープラーニングの概要の中項目
  1. ニューラルネットワークとディープラーニング
  2. 活性化関数
  3. 誤差関数
  4. 正則化
  5. 誤差逆伝播法
  6. 最適化手法

表示設定

テーマ
文字の大きさ
問題演習