私は、TimeDistributedラッパーがKerasで何をするのか把握しようとしています。KerasのTimeDistributedレイヤーの役割は何ですか?
私は、TimeDistributedが "入力のすべての一時的スライスにレイヤーを適用します。"
しかし、私はいくつかの実験を行い、理解できない結果を得ました。要するに、LSTM層に関連して、TimeDistributedとJust Dense層は同じ結果をもたらす。両方のモデルについて
model = Sequential()
model.add(LSTM(5, input_shape = (10, 20), return_sequences = True))
model.add(TimeDistributed(Dense(1)))
print(model.output_shape)
model = Sequential()
model.add(LSTM(5, input_shape = (10, 20), return_sequences = True))
model.add((Dense(1)))
print(model.output_shape)
、Iは(なし、10、1)の出力形状を得ました。
誰でもRNNレイヤの後にTimeDistributedとDenseレイヤの違いを説明できますか?
ここでは違いはありませんが、[ここ](https://github.com/fchollet/keras/issues/278)でディスカッションを行います。私は元の意図は、入力を平坦化してから再形成することで、異なる時間ステップを接続し、より多くのパラメータを持つ 'Dense'レイヤと、時間ステップを分離したまま(したがってパラメータを少なくする)' TimeDistributed'とを区別することでした。あなたのケースでは、 'Dense'は500人のパラメータを持っているはずです。' TimeDistributed'のみ50 – gionni
@gionniいいえ、パラメータ数は同じです(両方とも6です)。だから、事実上違いはありません。 –
まあ、違いがあった場合のパラメータの数です。現時点ではない – gionni