2017-12-30 40 views
0

タイトル: 私はタイムディストリビューションされたラッパーが各タイムスタンプに密集している可能性があることを知っていますが、同じウェイトを使用しています。私は同じ形の高密度を適用したいが、タイムスタンプごとに異なる重みを付けて、誰でも助けることができるのだろうか?ケラスのタイムスタンプごとに異なる重みをRNNに適用する方法は?

+0

は、あなたのモデルは、タイムステップの固定数を

を持っていますか? –

+0

はい!私はパドリングを使って長さを固定しています –

答えて

0

RNNの長さが固定であるとすれば、シーケンスをLambdaレイヤーで分割し、複数のレイヤーに出力することができます。Denseこれは単に回避策に過ぎませんが、特定の状況下では役立つかもしれません。例えば、

timesteps = 5 
inputs = Input(shape=(timesteps, 10)) 
hidden = LSTM(32, return_sequences=True)(inputs) 
hidden_split = Lambda(lambda x: [x[:, t, :] for t in range(timesteps)])(hidden) 
outputs = [Dense(10)(x) for x in hidden_split] 

# you can concatenate the outputs back into a 3D tensor if necessary 
outputs = Concatenate(axis=1)([Reshape((1, -1))(x) for x in outputs]) 
outputs = ... 
model = Model(inputs, outputs) 
関連する問題