2017-04-07 5 views
2

입력이 크기 인 다단계 모델을 구현하려고합니다. LSTM의 끝에서 d 크기의 벡터를 출력해야합니다. 이 question에서 케라 (keras)의 다 대 일 구현

enter image description here

,

model = Sequential() 
model.add(LSTM(1, input_shape=(timesteps, data_dim))) 

나는 keras에 입력 더 중요한 출력 크기를 지정하는 방법에 대한 여전히 의심입니다 (하나 개의 모델에 많은)를 사용하는 언급 모델

답변

1

제공된 코드는 실제로는 one-to-many 시나리오 용이지만 크기는 1입니다. 출력 크기가 d 인 경우 다음 코드 또한

model = Sequential() 
model.add(LSTM(d, input_shape=(len_seq, d))) 

- 워드 벡터와 함께 난 강력하게 당신이 당신의 유스 케이스를 위해 설계되었습니다 Embedding 레이어를 사용하는 것이 좋습니다. 입력하신 후 LSTM으로 사용하십시오.

+0

에 LSTM을 변경해야 대일 각 타임 스텝 입력에 정수와 LSTM 하나를 출력하는 경우 끝에는 하나의 출력 만 있습니다. 다 대일 코드가 아니어야합니까? – MysticForce

+0

@MysticForce 당신은 해결책을 찾았습니까? 같은 문제로 어려움을 겪고 있습니다. –

0

입력 형태의 3 차원 텐서 (BATCH_SIZE, 시간 단계, input_dims)

그래서 그것은 다음과 같이 보일 것입니다 :

batch_input = np.empty([batch_size] + [timesteps] + [d]) 

하나 개의 출력 (마지막 순서) return_state '때문이있을 것입니다 = False '입니다.

출력 형태는 다음과 같습니다

(batch_size, 1) 

당신의 LSTM 당신이 하나 개의 단위를 가지고 있기 때문에. 그런 다음 'D'치수 출력을 원하는 경우에 당신은 내가 준 코드가 유효 생각

LSTM(d, input_shape=(timesteps, data_dim))