2

LSTM レイヤーを使用して、複数のメモリ セルを多重化しています。とはいえ、いくつかの入力オプションがあるので、そのうちの 1 つだけを非表示レイヤーにフィードしたいと考えています。このような方法で LSTM への入力を調整したので、cell_input に加えて、input_gate、forget_gate、および output_gate に基づいて適切なセルが選択されます。

ただし、LSTM レイヤーはメモリ セルの値を変換するようですが、そのまま出力に渡すことを期待しています。

たとえば、便宜上、input_gate、forget_gate、cell_input、および output_gate に対応するグループに出力した次の入力を渡します。

ig: [ 0.  1.  0.  0.  0.  0.] 
fg: [ 0.  0.  0.  0.  0.  0.]
ci: [ 0.5  0.5  0.5  0.5  0.5  0. ]
og: [ 1.  1.  0.  0.  0.  1.]

グループが示すように、LSTM レイヤーがci[0]ci[1]、およびのみをci[5]出力に渡すようにしogます。ただし、出力バッファーに表示される内容は異なります。

LSTM out: [ 0.16597414  0.23799096  0.1135163   0.1135163   0.1135163   0.]

私にとってまったく無意味というわけではありませんが (0 番目と 1 番目のエントリは残りのエントリよりわずかに大きい)、この出力は[.5 .5 0. 0. 0.]私が期待したものではありません。

私が LSTM について学んだことから、メモリ セルから実際の出力への遷移機能はないようです。

4

1 に答える 1