人工知能における7種類のニューラルネットワークの説明

公開: 2020-12-29

ニューラルネットワークは、ニューロンと隠れ層を利用してさまざまな方法でデータとパターンを学習する機械学習技術のサブセットです。 ニューラルネットワークは、その複雑な構造のためにはるかに強力であり、従来の機械学習アルゴリズムでは不十分なアプリケーションで使用できます。

このチュートリアルを終了するまでに、次の知識が身に付きます。

  • ニューラルネットワークの簡単な歴史
  • ニューラルネットワークとは
  • ニューラルネットワークの種類
  1. パーセプトロン
  2. フィードフォワードネットワーク
  3. 多層パーセプトロン
  4. ラジアルベースのネットワーク
  5. 畳み込みニューラルネットワーク
  6. リカレントニューラルネットワーク
  7. 長短期記憶ネットワーク

目次

ニューラルネットワークの簡単な歴史

60年代の研究者たちは、人間のニューロンの機能と脳の働きを模倣する方法を研究し、考案してきました。 デコードは非常に複雑ですが、データの隠れたパターンを学習するのに非常に効率的な同様の構造が提案されました。

20世紀のほとんどの間、ニューラルネットワークは無能であると見なされていました。 それらは複雑で、パフォーマンスは低かった。 また、当時は利用できなかった多くの計算能力が必要でした。 しかし、「ディープラーニングの父」とも呼ばれるジェフリーヒントン卿のチームがバックプロパゲーションに関する研究論文を発表したとき、テーブルは完全に変わりました。 ニューラルネットワークは、今では考えられなかったことを達成することができました。

ニューラルネットワークとは何ですか?

ニューラルネットワークは、複数の入力、処理装置、および単一/複数の出力を持つ人間のニューロンのアーキテクチャを使用します。 ニューロンの各接続に関連付けられた重みがあります。 これらの重みを調整することにより、ニューラルネットワークは新しい見えないデータの出力を予測するために使用される方程式に到達します。 このプロセスは、重みの逆伝播と更新によって行われます。

ニューラルネットワークの種類

さまざまなタイプのニューラルネットワークが、さまざまなデータやアプリケーションに使用されます。 ニューラルネットワークのさまざまなアーキテクチャは、これらの特定のタイプのデータまたはドメインで機能するように特別に設計されています。 最も基本的なものから始めて、より複雑なものに向かっていきましょう。

パーセプトロン

パーセプトロンは、ニューラルネットワークの最も基本的で最も古い形式です。 これは、入力を受け取り、それに活性化関数を適用してバイナリ出力を生成する1つのニューロンで構成されています。 隠れ層は含まれておらず、二項分類タスクにのみ使用できます。

ニューロンは、入力値とその重みの加算の処理を行います。 結果の合計は、バイナリ出力を生成するために活性化関数に渡されます。

画像ソース

について学ぶ:ディープラーニングとニューラルネットワーク

フィードフォワードネットワーク

フィードフォワード(FF)ネットワークは、相互に接続された複数のニューロンと隠れ層で構成されています。 これらは、データが順方向にのみ流れ、逆方向の伝播がないため、「フィードフォワード」と呼ばれます。 アプリケーションによっては、非表示のレイヤーが必ずしもネットワークに存在するとは限りません。

レイヤーの数が多いほど、重みをカスタマイズできます。 したがって、ネットワークが学習する能力はさらに高まります。 バックプロパゲーションがないため、重みは更新されません。 重みと入力の乗算の出力は、しきい値として機能する活性化関数に送られます。

FFネットワークは次の場所で使用されます。

  • 分類
  • 音声認識
  • 顔認識
  • パターン認識

画像ソース

多層パーセプトロン

フィードフォワードネットワークの主な欠点は、バックプロパゲーションで学習できないことでした。 多層パーセプトロンは、複数の隠れ層と活性化関数を組み込んだニューラルネットワークです。 学習は、最急降下法によって重みが更新される教師あり方法で行われます。

多層パーセプトロンは双方向です。つまり、入力の順方向伝搬と、重み更新の逆方向伝搬です。 活性化関数は、ターゲットのタイプに応じて変更できます。 Softmaxは通常、マルチクラス分類に使用され、Sigmoidはバイナリ分類に使用されます。 レイヤー内のすべてのニューロンが次のレイヤー内のすべてのニューロンに接続されているため、これらは高密度ネットワークとも呼ばれます。

これらはディープラーニングベースのアプリケーションで使用されますが、構造が複雑なため、一般的に低速です。

画像ソース

動径基底ネットワーク

Radial Basis Networks(RBN)は、ターゲットを予測するためにまったく異なる方法を使用します。 これは、入力層、RBFニューロンを含む層、および出力で構成されます。 RBFニューロンは、各トレーニングデータインスタンスの実際のクラスを格納します。 RBNは、活性化関数として使用される放射状関数のため、通常の多層パーセプトロンとは異なります。

新しいデータがニューラルネットワークに供給されると、RBFニューロンは特徴値のユークリッド距離をニューロンに格納されている実際のクラスと比較します。 これは、特定のインスタンスが属するクラスターを見つけることに似ています。 距離が最小のクラスが予測クラスとして割り当てられます。

RBNは、主に電力回復システムなどの関数近似アプリケーションで使用されます。

画像ソース

また読む:実世界のニューラルネットワークアプリケーション

畳み込みニューラルネットワーク

画像分類に関して、最も使用されているニューラルネットワークは畳み込みニューラルネットワーク(CNN)です。 CNNには、画像からの重要な特徴の抽出を担当する複数の畳み込みレイヤーが含まれています。 前のレイヤーは低レベルの詳細を担当し、後のレイヤーはより高レベルの機能を担当します。

畳み込み演算では、フィルターとも呼ばれるカスタムマトリックスを使用して、入力画像を畳み込み、マップを作成します。 これらのフィルターはランダムに初期化され、バックプロパゲーションによって更新されます。 このようなフィルターの一例は、任意の画像のエッジを見つけるために使用されるキャニーエッジ検出器です。

畳み込み層の後に、畳み込み層から生成されたマップの集約を担当するプーリング層があります。 最大プーリング、最小プーリングなどがあります。正則化のために、CNNには、特定のニューロンをドロップまたは非アクティブにして過剰適合を減らし、収束を高速化するドロップアウトレイヤーを追加するオプションも含まれています。

CNNは、隠れ層の活性化関数としてReLU(Rectified Linear Unit)を使用します。 最後の層として、CNNには完全に接続された高密度層があり、活性化関数は主に分類用のSoftmaxとして機能し、主に回帰用のReLUとして機能します。

画像ソース

リカレントニューラルネットワーク

シーケンシャルデータを使用した予測が必要な場合、リカレントニューラルネットワークが浮き彫りになります。 シーケンシャルデータは、画像や単語などのシーケンスにすることができます。RNNは、レイヤーが前のインスタンス予測の時間遅延入力も受け取ることを除いて、フィードフォワードネットワークと同様の構造を持っています。 このインスタンス予測は、すべての予測の2番目の入力であるRNNセルに格納されます。

ただし、RNNの主な欠点は、勾配消失問題であり、以前のレイヤーの重みを覚えるのが非常に困難になります。

画像ソース

長短期記憶ネットワーク

LSTMニューラルネットワークは、情報を長期間保存できる特別なメモリセルを追加することにより、RNNの勾配消失問題を克服します。 LSTMはゲートを使用して、どの出力を使用または忘れるべきかを定義します。 入力ゲート、出力ゲート、および忘れゲートの3つのゲートを使用します。 入力ゲートは、すべてのデータをメモリに保持する必要があるものを制御します。 出力ゲートは次のレイヤーに渡されるデータを制御し、忘却ゲートは不要なデータをいつダンプ/忘れるかを制御します。

LSTMは、次のようなさまざまなアプリケーションで使用されます。

  • ジェスチャ認識
  • 音声認識
  • テキスト予測

行く前に

ニューラルネットワークは、ネットワークにレイヤーを追加し続けるとすぐに非常に複雑になる可能性があります。 事前にトレーニングされたネットワークを使用することで、この分野の膨大な研究を活用できる場合があります。

これは転移学習と呼ばれます。 このチュートリアルでは、基本的なニューラルネットワークとその機能のほとんどについて説明しました。 KerasやTensorflowなどのディープラーニングフレームワークを使用して、これらを試してみてください。

ニューラルネットワーク、機械学習、AIについて詳しく知りたい場合は、IIIT-BとupGradの機械学習とAIのPGディプロマをご覧ください。これは、働く専門家向けに設計されており、450時間以上の厳格なトレーニング、30以上のケーススタディを提供します。 &アサインメント、IIIT-B卒業生のステータス、5つ以上の実践的なキャップストーンプロジェクト、トップ企業との仕事の支援。

ニューラルネットワークとは何ですか?

ニューラルネットワークは、非線形分類と回帰を実行するために使用できる確率モデルです。つまり、入力空間から出力空間へのマッピングを近似します。 ニューラルネットワークの興味深い点は、ニューラルネットワークを大量のデータでトレーニングでき、複雑な非線形動作をモデル化するために使用できることです。 それらは多くの例で訓練することができ、ガイダンスなしでパターンを見つけるために使用することができます。 そのため、ニューラルネットワークはランダム性と複雑さがある多くのアプリケーションで使用されます。

ニューラルネットワークの3つの主要なカテゴリは何ですか?

神経ネットワークは、脳に類似した、学習への計算アプローチです。 ニューラルネットワークには3つの主要なカテゴリがあります。 分類、シーケンス学習、関数近似は、ニューラルネットワークの3つの主要なカテゴリです。 パーセプトロン、ホップフィールド、自己組織化マップ、ボルツマンマシン、ディープビリーフネットワーク、オートエンコーダー、畳み込みニューラルネットワーク、制限付きボルツマンマシン、連続値ニューラルネットワーク、リカレントニューラルネットワーク、機能リンクネットワークなどのニューラルネットワークには多くの種類があります。

ニューラルネットワークの制限は何ですか?

ニューラルネットは、入力数と出力数が多い問題を解決できます。 ただし、ニューラルネットにも制限があります。 ニューラルネットは主に分類に使用されます。 それらは回帰に対して非常に悪いパフォーマンスを示します。 そして、これは非常に重要なポイントです。ニューラルネットには多くのトレーニングデータが必要です。 データセットが小さい場合、ニューラルネットは基礎となるルールを学習できません。 ニューラルネットのもう1つの制限は、それらがブラックボックスであるということです。 それらは透明ではありません。 ニューラルネットワークの内部構造を理解するのは簡単ではありません。