1. 概要

このチュートリアルでは、ニューラルネットワークの隠れ層について説明します。最初に、さまざまなタイプの層を示し、次に2つの例とともに隠れ層の重要性について説明します。

2. レイヤーの種類

過去数年にわたって、ニューラルネットワークアーキテクチャは、自動運転車から致命的な病気の予測に至るまでのアプリケーションで、私たちの生活の多くの側面に革命をもたらしました。 一般に、すべてのニューラルネットワークは、レイヤーと呼ばれる垂直に積み重ねられたコンポーネントで構成されています。レイヤーには次の3つのタイプがあります。

  • 入力レイヤーは、生データを入力として受け取り、それらをネットワークの残りの部分に渡します。
  • 入力層と出力層の中間層であり、複雑な非線形関数を適用してデータを処理する1つ以上の非表示層これらのレイヤーは、ニューラルネットワークが複雑なタスクを学習して優れたパフォーマンスを実現できるようにする重要なコンポーネントです。
  • 処理されたデータを入力として受け取り、最終結果を生成する出力レイヤー

以下に、2つの隠れ層を持つ単純なフィードフォワードニューラルネットワークを示します。

上記のニューラルネットワークでは、最初の隠れ層の各ニューロンが3つの入力値を入力として受け取り、その出力を次のように計算します。ここで、は入力値、重み、バイアス、および活性化関数です。 次に、2番目の隠れ層のニューロンは、最初の隠れ層のニューロンの出力を入力として受け取ります。

3. 隠しレイヤーの重要性

次に、ニューラルネットワークの隠れ層の重要性について説明しましょう。前述のように、隠れ層は、ニューラルネットワークが非常に複雑な関係をキャプチャし、多くのタスクでエキサイティングなパフォーマンスを実現できる理由です。

この概念をよりよく理解するには、最初に、3つの入力機能と1つの出力を持つ以下のような隠れ層のないニューラルネットワークを調べる必要があります。

前の式に基づくと、出力値は非線形性を伴う線形結合に等しくなります。 したがって、モデルは線形回帰モデルに似ています。 すでに知っているように、線形回帰は、観測されたデータに線形方程式を当てはめようとします。

ほとんどの機械学習タスクでは、線形関係はタスクの複雑さを捉えるのに十分ではなく、線形回帰モデルは失敗します。 ここに、ニューラルネットワークが非常に複雑な非線形関数を学習できるようにする隠れ層の重要性があります。

4. 例

次に、特定のタスクのニューラルネットワークのトレーニングにおける隠れ層の重要性を示す2つの例について説明します。

4.1. 論理関数

ニューラルネットワークを使用して、2つのバイナリ入力が与えられた場合のXOR論理ゲートの出力を予測したいとします。 XORの真理値表によると、入力が異なる場合は常に出力が真になります。

分類タスクをよりよく理解するために、以下に4つの可能な出力をプロットします。 緑の点は1に等しい出力に対応し、赤の点はゼロ出力です。

最初は、問題はかなり簡単に思えます。 最初のアプローチは、隠れ層のないニューラルネットワークを使用することです。 ただし、この線形アーキテクチャでは、1本の線を使用して入力データポイントを分離できます。 上のグラフからわかるように、2つのクラスを単一の線で分離することはできず、XOR問題は線形分離可能ではありません。

以下に、単純な線形モデルがXOR問題を解決するために学習する可能性のあるいくつかの線を示します。 どちらの場合も、誤って分類された入力があることがわかります。

この問題の解決策は、ニューラルネットワークに2つのニューロンを持つ隠れ層を追加することによって非線形関数を学習することです。したがって、最終的な決定は、それぞれがこれら2つのニューロンの出力に基づいて行われます。以下のような線形関数を学習します。

1行は、入力の少なくとも1つの機能が真であることを確認し、もう1行は、すべての機能が真であるとは限らないことを確認します。 したがって、隠しレイヤーは、入力フィーチャを処理済みのフィーチャに変換し、出力レイヤーで正しく分類できるようにします。

4.2. 画像

隠れ層の重要性を認識するもう1つの方法は、コンピュータービジョンドメインを調べることです。多くの隠れ層で構成されるディープニューラルネットワークは、階層的な方法で機能を学習することにより、顔認識で印象的な結果を達成しました。

具体的には、ニューラルネットワークの最初の隠れ層は、画像内のコーナーとエッジの短い断片を検出することを学習します。 これらの機能は、生の画像があれば簡単に検出できますが、画像内の人物の身元を認識するのにそれ自体ではあまり役立ちません。 次に、中央の隠れ層は、前の層から検出されたエッジを組み合わせて、目、鼻、耳などの顔の部分を検出します。 次に、最後のレイヤーは、鼻や目などの検出器を組み合わせて、人の顔全体を検出します。

下の画像では、各レイヤーが生のピクセルから最終的な目標に到達するのにどのように役立つかを確認できます。

5. 結論

このチュートリアルでは、ニューラルネットワークの隠れ層について説明しました。最初に、ニューラルネットワークに存在する層のタイプについて説明しました。 次に、隠れ層の役割について説明し、それらの重要性をよりよく理解するために2つの例を示しました。