私はここで間違っているかもしれないが、ここに行く。 私はこのpostのコードを使用しています。完全なLSTMシーケンスの出力の使い方は?テンソルフロー
具体
outputs, states = rnn.rnn(lstm_cell, _X, initial_state=_istate)
# Linear activation
# Get inner loop last output
return tf.matmul(outputs[-1], _weights['out']) + _biases['out']
のコードが上記のコードは、1つの予測方式に多くを使用します。
私はこのコードで多くのスキームに多くを使用することができれば知っていただきたいと思います。 そして、すべてのLSTMユニットの出力を使用してクラスを予測します。 私は
return tf.matmul(outputs, _weights['out']) + _biases['out']
と最後の行を交換しようとしている。しかし、私は
File "/media/anilil/Data/charm/Cnn/train_lstm_ucf.py", line 165, in <module>
pred = RNN(x, istate, weights, biases,keep_prob)
File "/media/anilil/Data/charm/Cnn/train_lstm_ucf.py", line 163, in RNN
return tf.matmul(outputs, _weights['out']) + _biases['out']
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/math_ops.py", line 938, in matmul
a = ops.convert_to_tensor(a, name="a")
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.py", line 529, in convert_to_tensor
ret = conversion_func(value, dtype=dtype, name=name, as_ref=as_ref)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/constant_op.py", line 178, in _constant_tensor_conversion_function
return constant(v, dtype=dtype, name=name)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/constant_op.py", line 161, in constant
tensor_util.make_tensor_proto(value, dtype=dtype, shape=shape))
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/tensor_util.py", line 319, in make_tensor_proto
_AssertCompatible(values, dtype)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/tensor_util.py", line 256, in _AssertCompatible
raise TypeError("List of Tensors when single Tensor expected")
TypeError: List of Tensors when single Tensor expected
背景情報(非重要な)エラーあなたの入力のための
感謝を取得します。このアプローチがより良い結果をもたらすかどうかは私自身は分かりません。
私は複製しようとしていますthis paper 特にこの文書のactivity recognitionです。
CNNを1つのフレームでトレーニングして、そのフレームがどのクラスに属するかを予測し、その密なレイヤーの機能を使用してLSTMをトレーニングし、単一フレーム間の時間的関係を理解し、認識精度。
私はCNNで結果を再現し、61%の単一フレーム精度(表1:RGBシングルフレーム)の精度を得ました。
私はこのネットワークから(fc-6)フィーチャを抽出し、それをLSTMへの入力として与えましたが、71.2%の精度向上の代わりに、51%のLSTM精度が得られました。なぜこれが起こるかわからない。 (彼らが使用していたLSTMモデルは私の推測とは異なるかもしれません)
それについてのご意見もありがとうございます。
非常にエレガントな答え!あなたはこれを試したことがありますか?すべての出力をクラス予測のために組み合わせましたか?私はこれが実際に一般的な予測パフォーマンスを向上させることができるのだろうかと思います。 –
私は自分ではしませんでしたが、最後のステップからクラスを取得するのではなく、異なるタイムステップの結果を集約している人を知っています。 とにかく、OPケースでは、彼は実際にタイムステップごとに1つの出力を必要とする問題があると思うので、彼の最適化ではなく、むしろ要件です。 – Ishamael