回答:
フィードフォワード ANNを使用すると、信号は一方向のみ、つまり入力から出力まで移動できます。フィードバック(ループ)はありません。つまり、どのレイヤーの出力も同じレイヤーには影響しません。フィードフォワードANNは、入力を出力に関連付ける単純なネットワークである傾向があります。これらはパターン認識で広く使用されています。このタイプの組織は、ボトムアップまたはトップダウンとも呼ばれます。
フィードバック(またはリカレントまたはインタラクティブ)ネットワークでは、ネットワークにループを導入することにより、両方向に信号を送ることができます。フィードバックネットワークは強力であり、非常に複雑になる可能性があります。以前の入力から導出された計算はネットワークにフィードバックされ、一種のメモリを提供します。フィードバックネットワークは動的です。それらの「状態」は、平衡点に達するまで連続的に変化しています。入力が変化し、新しい平衡を見つける必要があるまで、平衡点に残ります。
フィードフォワードニューラルネットワークは、一連の予測変数または入力変数と1つ以上の応答変数または出力変数との関係をモデル化するのに最適です。言い換えれば、これらは、多くの入力変数が出力変数にどのように影響するかを知りたい機能マッピング問題に適しています。多層パーセプトロン(MLP)とも呼ばれる多層フィードフォワードニューラルネットワークは、実際に最も広く研究され使用されているニューラルネットワークモデルです。
フィードバックネットワークの例として、Hopfieldのネットワークを思い出すことができます。ホップフィールドのネットワークの主な用途は、連想メモリとしてです。連想メモリは、入力パターンを受け入れ、入力に最も密接に関連付けられている保存されたパターンとして出力を生成するデバイスです。アソシエートメモリの機能は、対応する保存されたパターンを呼び出し、出力でパターンのクリアバージョンを生成することです。ホップフィールドネットワークは通常、バイナリパターンベクトルに関する問題に使用され、入力パターンは格納されているパターンの1つのノイズの多いバージョンである可能性があります。ホップフィールドネットワークでは、保存されたパターンはネットワークの重みとしてエンコードされます。
コホーネンの自己組織化マップ(SOM)は、フィードフォワード多層ネットワークとは著しく異なる別のニューラルネットワークタイプを表します。フィードフォワードMLPでのトレーニングとは異なり、SOMの各入力パターンに関連付けられた既知のターゲット出力がなく、トレーニングプロセス中にSOMが入力パターンを処理し、学習してデータをクラスター化またはセグメント化するため、SOMトレーニングまたは学習はしばしば教師なしと呼ばれます重みの調整により(次元削減とデータクラスタリングの重要なニューラルネットワークモデルになります)。通常、2次元マップは、入力間の相互関係の順序が保持されるように作成されます。クラスターの数と構成は、トレーニングプロセスによって生成された出力分布に基づいて視覚的に決定できます。トレーニングサンプルに入力変数のみがある場合、
(図はDana VrajitoruのC463 / B551人工知能Webサイトからのものです。)
George Dontasが書いていることは正しいですが、実際のRNNの使用は、時系列/シーケンシャルタスクという単純なクラスの問題に制限されています。
RNNは、Hammerによる測定可能なシーケンスからシーケンスへのマッピングを表すことができることが示されています。
そのため、最近ではRNNがあらゆる種類のシーケンシャルタスク(時系列予測、シーケンスラベリング、シーケンス分類など)に使用されています。SchmidhuberのRNNのページで概要を確認できます。
RNNとFNNは名前が異なると言う代わりに。だから彼らは違います。、より興味深いのは、動的システムのモデリングという点で、RNNはFNNと大きく異なるのでしょうか?
リカレントニューラルネットワークとフィードフォワードニューラルネットワークの間で、以前の時間遅延(FNN-TD)などの追加機能を備えた動的システムをモデル化するための議論がありました。
90年代から2010年代にそれらの論文を読んだ後の私の知識から。FNN-TDは静的メモリであるのに対し、RNNは動的メモリを使用するという点で、バニラRNNの方がFNNよりも優れていることを文学の大部分が好んでいます。
ただし、これら2つを比較する数値研究はあまりありません。初期の[1]は、動的システムのモデリングにおいて、FNN-TDは、ノイズがない場合はバニラRNNと同等のパフォーマンスを示し、ノイズがある場合は少し悪いパフォーマンスを示すことを示しました。動的システムのモデリングに関する私の経験では、FNN-TDで十分であることがよくあります。
FNN-TDは、いわゆるメモリー効果を処理する最も一般的で包括的な方法です。残忍であるため、理論的にはあらゆる種類、あらゆる種類、あらゆるメモリ効果をカバーします。唯一の欠点は、実際にはあまりにも多くのパラメーターを使用することです。
RNNのメモリは、以前の情報の一般的な「畳み込み」として表されています。一般に、2つのスカラーシーケンス間の畳み込みは可逆的なプロセスではなく、逆畳み込みはほとんどの場合不適切であることがわかっています。
したがって、RNNは実際には畳み込みを行うことで以前のメモリ情報を損失して圧縮しますが、FNN-TDはある意味でメモリ情報を失うことなくそれらを公開します。隠れユニットの数を増やすか、バニラRNNよりも多くの時間遅延を使用することにより、畳み込みの情報損失を減らすことができます。この意味で、RNNはFNN-TDよりも柔軟性があります。FNN-TDのようにRNNはメモリ損失を達成できず、パラメーターの数が同じ順序であることを示すのは簡単です。
FNN-TDではできないが、RNNには長い時間の効果があることを言及したい人がいるかもしれません。これについては、継続的な自律動的システムの場合、Takens埋め込み理論から、一見長い時間と同じパフォーマンスを達成するために、一見短い時間のメモリを持つFNN-TDに存在する埋め込みの一般的なプロパティであることに言及したいだけですRNNのメモリ。RNNとFNN-TDが90年代初期の連続的な動的システムの例でそれほど大きく変わらない理由を説明しています。
次に、RNNの利点について説明します。自律力学系のタスクでは、より多くの前項を使用しますが、理論上は前項が少ないFNN-TDを使用するのと事実上同じですが、数値的にはノイズに対してより堅牢であるという点で役立ちます。[1]の結果はこの意見と一致しています。
[1]Gençay、Ramazan、およびTung Liu。「フィードフォワードネットワークとリカレントネットワークを使用した非線形モデリングと予測。」Physica D:非線形現象108.1-2(1997):119-134。
[2] Pan、Shaowu、およびKarthik Duraisamy。「クロージャモデルのデータ駆動型ディスカバリ。」arXivプレプリントarXiv:1803.09318(2018)。