Asu*_*nda 2 python lstm keras tensorflow recurrent-neural-network
我知道 LSTM 单元内部有许多 ANN。
但是在为同一问题定义隐藏层时,我看到有些人只使用 1 个 LSTM 单元,而其他人则使用 2、3 个 LSTM 单元,如下所示 -
model = Sequential()
model.add(LSTM(256, input_shape=(n_prev, 1), return_sequences=True))
model.add(Dropout(0.3))
model.add(LSTM(128, input_shape=(n_prev, 1), return_sequences=True))
model.add(Dropout(0.3))
model.add(LSTM(64, input_shape=(n_prev, 1), return_sequences=False))
model.add(Dropout(0.3))
model.add(Dense(1))
model.add(Activation('linear'))
Run Code Online (Sandbox Code Playgroud)
没有“规则”,但有指导方针;在实践中,你会试验深度与宽度,每个都不同:
一般来说,宽度提取更多特征,而深度提取更丰富的特征——但如果从给定数据中提取的特征不多,宽度应该减少——数据/问题越“简单”,层越少是合适的。然而,最终,最好不要进行广泛的分析并尝试每个的不同组合——有关更多信息,请参阅此 SO。
最后,避免Dropout并使用LSTM(recurrent_dropout=...)(参见链接的 SO)。
| 归档时间: |
|
| 查看次数: |
4216 次 |
| 最近记录: |