問題タブ [attention-model]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tensorflow - Tensorflow 逐次行列乗算
次の形状の 2 つのテンソルがあります。
私がやりたいことは、すべての[100] dimensional
ベクトルに対して、対応する行列tensor2
との行列乗算を取得して、次元ベクトルの数を取得することです。これは行列と同じです。[max_time, 100] dimensional
tensor1
batch_size
max_time
[batch_size, max_time] dimensional
知っている人のために:私は基本的に、seq2seqモデルのエンコーダーによって与えられたエンコードされた入力に対してコンテンツベースの注意を実装しようとしています。すべての[max_time]
次元ベクトルは、後でソフトマックスした注意値です。
tensorflowがパッケージAttentionWrapper
内のさまざまなヘルパーと同様に提供していることを認識しています。contrib
ただし、ハイブリッド注意マスクを取得するために注意メカニズムを実験しているため、これを実行したいと考えています。
やってみましたtf.while_loop
が、?
ループを広げる形に引っ掛かりました。ベクトル化された実装も、私にはあまり単純ではないように思えます。助けてください。
tensorflow - 注意メカニズムのために LSTM からの以前の出力と非表示の状態を使用する方法は?
私は現在、次の論文からアテンション メカニズムをコーディングしようとしています: "Effective Approaches to Attention-based Neural Machine Translation", Luong, Pham, Manning (2015) . (私はドット スコアでグローバルな注意を使用します)。
ただし、lstm デコードから非表示および出力状態を入力する方法がわかりません。問題は、時間 t での lstm デコーダーの入力が、t-1 からの出力と隠れ状態を使用して計算する必要がある量に依存することです。
コードの関連部分は次のとおりです。
ループの内側の部分は、私が確信していないものです。変数「initial_input」と「last_encoder_state」を上書きすると、テンソルフローは計算グラフを覚えていますか?