2章ニューラルネットワークとディープラーニングの基礎

頭を地面に、両足は空中に

そのままスピンしてごらん

頭はつぶれちまう

でも空っぽさ

そしたら不思議に思うだろう

俺の心はどこにある?って

—— The Pixies, 『Where is My Mind?』

2.1 ニューラルネットワーク

ニューラルネットワークとは、人間の脳と特性の一部を共有する計算モデルです。シンプルな構成要素が多数存在し、中央からの管理を受けずに並列に作業を行います。各要素間の重みは、ニューラルネットワークで長期的に情報を保持するための主要なしくみとして機能します。重みを更新することが、新しい情報を学習するための主な方法です。

「1章 機械学習の概要」では、一連の数式をAxbという形でモデル化しました。ニューラルネットワークのコンテキストでも行列Aは入力データで、列ベクトルbAの各行に対応する結果あるいはラベルを表します。ニューラルネットワーク内の接続の重みは、パラメーターベクトルxとして表されます。

ニューラルネットワークのふるまいは、そのアーキテクチャーごとに異なります。アーキテクチャーは主に以下のような要素によって定義されます。

  • ニューロンの数
  • 層の数
  • 層間の接続の形式

最も広く知られており、理解も容易なのがフィードフォワード型の多層ニューラルネットワークです。1つの入力層、1つ以上の隠れ層、そして1つの出力層から構成されます。ニューロンの数は層ごとに異なってもかまいません。そしてそれぞれのニューロンは、直前と直後の層に含まれるすべてのニューロンに接続しています。各層のニューロンの接続は、図2-1のように非循環グラフを形成します。

図2-1 多層ニューラルネットワーク

十分な数のニューロンさえあれば、フィードフォワード型の多層ニューラルネットワークはどんな関数でも表現できます。これは一般的に、 ...

Get 詳説 Deep Learning ―実務者のためのアプローチ now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.