コース: AI 入門

ニューラルネットワークの構造

コース: AI 入門

ニューラルネットワークの構造

データが膨大にありすぎて、 アルゴリズムによる機械学習が困難な場合、 よく利用されるのが、 人工ニューラルネットワークです。 人工ニューラルネットワークも 機械学習の一種ですが、 人の脳をまねた構造で大量のデータを 分解処理することが特徴です。 これまで見てきたような 機械学習アルゴリズムとは違い、 与えられたデータを細分化して 処理するのです。 人工ニューラルネットワークが、 脳の構造をどのように まねているのかというと、 無数のニューロンがいくつもの層に 分かれて存在します。 各層は左から順に、入力層、 隠れ層、出力層と呼ばれています。 このうち、隠れ層の数が 非常に多いネットワークは、 ディープラーニング人工 ニューラルネットワークと呼ばれます。 ディープとは、隠れ層がいくつも あることを意味しています。 隠れ層が多いネットワークほど、 複雑なパターンを見つけやすくなります。 画像から犬を識別する 人工ニューラルネットワークを 考えてみましょう。 犬、または、犬ではない、という 2項分類のタスクです。 つまり、入力層から送り込まれる画像を、 犬か犬ではないかの2通りに分類し、 最後の層で、犬、または、犬ではない、 のどちらかを出力するわけです。 画像は機械から見て、 微細なデータの集積にすぎません。 いわば、ピクセルのかたまりです。 無数の細かい点の1個1個は、 さまざまな色や明るさを持っています。 犬の画像を、ピクセルに 分解してみましょう。 ここでは仮に、縦が 25 ピクセル、 横も 25 ピクセルの画像だとします。 全体では 625 ピクセルになるので、 1つの画像を 625 の データポイントとして扱うわけです。 この 625 ピクセルのデータを、 ニューラルネットワークにかけていきます。 それぞれのピクセルのデータが 入力層に入ってくると、 入力層にある 625 個のニューロンに、 個々のピクセルの色に対応した 数値が入ります。 隠れ層では、それぞれのニューロンに 活性化関数と呼ばれるものがあり、 受け取ったデータをその次の隠れ層に どう伝えるかを決定する ゲートウェイのような役割を担っています。 こうして、それぞれのピクセルのデータが 順番に隠れ層を流れていくと、 最後の出力層で、2つあるノードの 一方に集約されることになります。 この例は、犬、または、犬ではない、 という2通りの出力しかない、 2項分類問題です。 また、左から右の単一方向に データが流れる、フィードフォワード ニューラルネットワークです。 人工ニューラルネットワークの 大きな強みの1つは、 人の手で調律する必要がない楽器のように、 自動調整が可能なことです。 出力層にあるニューロンには、 それぞれの確率が入ります。 人工ニューラルネットワークの 活用例は、ほとんどが教師あり学習です。 訓練データで学習を行い、結果が 正しいか否かによって自動調整を行います。

目次