タグ付けされた質問 「rnn」

再帰型ニューラルネットワーク(RNN)は、ユニット間の接続が有向サイクルを形成する一種の人工ニューラルネットワークです。


5
LSTMユニットとセルの理解
私はしばらくの間LSTMを研究してきました。私はすべてがどのように機能するかを高いレベルで理解しています。ただし、Tensorflowを使用して実装する場合、BasicLSTMCellには多数のユニット(つまりnum_units)パラメーターが必要であることに気付きました。 LSTMのこの非常に徹底的な説明から、単一のLSTMユニットが次のいずれかであることがわかりました。 これは実際にはGRUユニットです。 のパラメーターnum_unitsは、BasicLSTMCellレイヤー内で相互に接続するこれらの数を参照していると想定しています。 それは疑問を残します-この文脈での「セル」とは何ですか?「セル」は、通常のフィードフォワードニューラルネットワークのレイヤーと同等ですか?



1
アテンションメカニズムとは何ですか?
ここ数年、さまざまなディープラーニングの論文で注意メカニズムが使用されてきました。Open AIの研究責任者であるIlya Sutskever氏は、熱心に称賛しています:https ://towardsdatascience.com/the-fall-of-rnn-lstm-2d1594c74ce0 パデュー大学のEugenio Culurcielloは、純粋に注意ベースのニューラルネットワークを優先して、RNNとLSTMを放棄すべきだと主張しています。 https://towardsdatascience.com/the-fall-of-rnn-lstm-2d1594c74ce0 これは誇張のように見えますが、純粋に注意に基づくモデルがシーケンスモデリングタスクで非常にうまく機能していることは否定できません。 ただし、注意ベースのモデルとは正確には何ですか?そのようなモデルの明確な説明をまだ見つけていません。履歴値を与えられた多変量時系列の新しい値を予測したいとします。LSTMセルを持つRNNでそれを行う方法は非常に明確です。アテンションベースのモデルで同じことをどのように行うのでしょうか?

3
トレーニング損失は時間とともに増加します[複製]
この質問にはすでに回答があります: コスト関数の変化はどのようにプラスになりますか? (1つの答え) ニューラルネットワークが学習しない場合はどうすればよいですか? (5つの答え) 先月閉鎖されました。 モデル(リカレントニューラルネットワーク)をトレーニングして、4種類のシーケンスを分類しています。トレーニングを実行すると、トレーニングバッチのサンプルの90%以上を正しく分類するまで、トレーニングの損失が減少します。しかし、数エポック後に、トレーニングの損失が増加し、精度が低下することに気付きました。トレーニングセットでは、パフォーマンスが時間の経過とともに悪化することなく改善されると予想されるため、これは私にとって奇妙に思えます。クロスエントロピー損失を使用しており、学習率は0.0002です。 更新:学習率が高すぎることが判明しました。学習率が十分に低い場合、この動作は観察されません。しかし、私はまだこの奇妙なことを見つけます。これが起こる理由についての良い説明は大歓迎です

3
RNN / LSTMネットワークの重みが時間を超えて共有されるのはなぜですか?
私は最近LSTMに興味を持ち始めましたが、その重みが時を越えて共有されていることを知って驚きました。 時間にわたって重みを共有する場合、入力時間シーケンスは可変長になる可能性があることを知っています。 共有ウェイトを使用すると、トレーニングするパラメーターがはるかに少なくなります。 私の理解から、LSTMと他の学習方法を比較する理由は、学習したいデータにある種の時間的/シーケンシャルな構造/依存性があると信じているためです。可変長の「豪華」を犠牲にして、長い計算時間を受け入れると、共有ウェイトのないRNN / LSTM(つまり、異なるウェイトを持つタイムステップごとに)のパフォーマンスが向上しませんか?

4
フィードバックRNNとLSTM / GRUの違い
時系列データに適用されるさまざまなリカレントニューラルネットワーク(RNN)アーキテクチャを理解しようとしていますが、RNNを説明するときによく使用されるさまざまな名前と少し混同されています。Long Short Term Memory(LSTM)とGated Recurrent Unit(GRU)の構造は、基本的にフィードバックループを備えたRNNですか?


2
ニューラルネットワークのサンプル、タイムステップ、機能の違い
LSTMニューラルネットワークに関する次のブログをご覧ください:http ://machinelearningmastery.com/understanding-stateful-lstm-recurrent-neural-networks-python-keras/ 著者は、LSTMのさまざまな構成のために、入力ベクトルXを[サンプル、タイムステップ、フィーチャ]として再形成します。 著者は書いている 実際、文字のシーケンスは、個別の機能の1つのタイムステップではなく、1つの機能のタイムステップです。ネットワークにより多くのコンテキストを与えましたが、期待したほど多くのシーケンスを与えていません これは何を意味するのでしょうか?

1
コネクショニスト時間分類(CTC)とは何ですか?
私は、光学式文字認識(OCR)プロジェクトを実行したいと考えています。いくつかの調査を行った後、興味深いと思われるアーキテクチャに出会いました:CNN + RNN + CTC。私は畳み込みニューラルネットワーク(CNN)とリカレントニューラルネットワーク(RNN)に精通していますが、コネクショニスト時間分類(CTC)とは何ですか?素人の言葉で説明をお願いします。

1
RNN:いつBPTTを適用するか、重みを更新するか?
音素分類に関するGravesの2005年の論文(とりわけ)を使用して、シーケンスラベリングへのRNNの高レベルの適用を理解しようとしています。 問題を要約すると、個々の音素(無音、各オーディオファイルの各サンプルに音素記号が付けられるようにします。) この論文の主旨は、隠れ層にLSTMメモリセルを持つRNNをこの問題に適用することです。(彼はいくつかのバリアントと他のいくつかの手法を比較として適用しています。私は今のところ、物事を単純に保つために、単方向LSTMにのみ関心があります。) 私はネットワークのアーキテクチャを理解していると思います。オーディオ作業の標準的な方法で前処理された、オーディオファイルの10 msウィンドウに対応する入力レイヤー。LSTMセルの非表示層、およびすべての可能な61個の電話記号のワンホットコーディングを備えた出力層。 LSTMユニットを通過するフォワードパスとバックワードパスの(複雑ですが簡単な)方程式は理解できたと思います。それらは単なる微積分と連鎖規則です。 この論文といくつかの類似の論文を数回読んだ後、私が理解していないのは、バックプロパゲーションアルゴリズムを正確に適用するタイミングと、ニューロンのさまざまな重みを正確に更新するタイミングです。 2つのもっともらしい方法が存在します。 1)フレーム単位のバックプロップと更新 Load a sentence. Divide into frames/timesteps. For each frame: - Apply forward step - Determine error function - Apply backpropagation to this frame's error - Update weights accordingly At end of sentence, reset memory load another sentence and continue. または、 2)文ごとのバックプロップと更新: …
15 lstm  rnn 

3
RNNで時系列に逆伝播するのはなぜですか?
リカレントニューラルネットワークでは、通常、いくつかのタイムステップを順方向に伝播し、ネットワークを「展開」してから、入力シーケンス全体に逆方向に伝播します。 シーケンスの個々のステップごとに重みを更新しないのはなぜですか?(切り捨ての長さ1を使用するのと同じで、展開するものは何もありません)これにより、消失勾配の問題が完全に排除され、アルゴリズムが大幅に簡素化され、おそらくローカルミニマムで動けなくなる可能性が低くなり、最も重要なことにはうまく機能するようです。この方法でモデルをトレーニングしてテキストを生成しましたが、結果はBPTTトレーニングモデルで見た結果に匹敵するようでした。混乱しているのは、これまで見たRNNに関するすべてのチュートリアルが、BPTTを使用するように言っているからです。まるで適切な学習に必要であるかのように、そうではありません。 更新:回答を追加しました

2
LSTMユニットを持つRNNも「勾配の爆発」に悩まされるのはなぜですか?
RNN(特にLSTMユニット)がどのように機能するかについての基本的な知識があります。LSTMユニット、つまりセルと、値の流れを制御するいくつかのゲートのアーキテクチャの図式的な考えがあります。 しかし、明らかに、従来のRNNである逆伝播を使用してトレーニング中に発生する「勾配の消失と爆発」問題をLSTMがどのように解決するかを完全に理解していないようです。私は数学を完全に理解するために論文を読む機会がありませんでした。 この回答は、LSTMユニットを備えたRNNが「勾配の消失」問題をどのように解決するかについて簡単に説明しています。数学的には、その理由は、ゼロにならない、すなわち消滅しない誘導体の存在がないようです。その結果、著者は「勾配が消えないパスが少なくとも1つある」と述べています。私見、この説明は少しあいまいです。 その間、私はニューラルネットワークを使用したシーケンスからシーケンスへの学習(Ilya Sutskever、Oriol Vinyals、Quoc V. Le)の論文を読んでおり、その論文のセクション「3.4 Training details」には、 LSTMは勾配の消失の問題に悩まされることはありませんが、勾配が爆発する可能性があります。 LSTMユニットを備えたRNNは、「消失」と「爆発勾配」の両方の問題を解決すると常に考えていましたが、明らかに、LSTMユニットを備えたRNNも「爆発勾配」に苦しんでいます。 直観的に、それはなぜですか?数学的には、その理由は何ですか?

3
不規則な時間間隔のRNN?
RNNは、シーケンシャルデータの時間依存性のキャプチャに非常に適しています。ただし、シーケンス要素の間隔が等間隔でない場合はどうなりますか? たとえば、LSTMセルへの最初の入力は月曜日に行われ、火曜日から木曜日まではデータがありません。最後に、金曜日、土曜日、日曜日のそれぞれに新しい入力が行われます。1つの可能性は、火曜日から木曜日に供給されるある種のNULLベクトルを持つことですが、NULLエントリがデータを汚染するため、およびリソースの浪費であるため、これはばかげた解決策のようです。 何か案は?RNNはそのような場合をどのように処理しますか?RNN以外の方法がある場合は、それらの提案も歓迎します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.