如何解决如何在LSTM中找到时间步长?
我有一个Bi-LSTM模型,我想弄清楚它的计算复杂性。我在互联网上读过
使用随机梯度下降(SGD)优化技术按权重和时间步学习LSTM模型的计算复杂度为O(1)。因此,每个时间步的学习计算复杂度为O(W)。
但是如何找到模型中的时间步长?我的模特是
model = Sequential()
model.add(Embedding(max_words,768,input_length=max_len,weights=[embedding]))
model.add(BatchNormalization())
model.add(Activation('tanh'))
model.add(Bidirectional(LSTM(16)))
model.add(BatchNormalization())
model.add(Activation('tanh'))
model.add(Dropout(0.6))
model.add(Dense(2,activation='softmax',use_bias=True,kernel_regularizer=regularizers.l1_l2(l1=1e-5,l2=1e-4),bias_regularizer=regularizers.l2(1e-4),activity_regularizer=regularizers.l2(1e-5)))
model.summary()
模型摘要是
Model: "sequential_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
embedding_1 (Embedding) (None,768) 37147392
_________________________________________________________________
batch_normalization_2 (Batch (None,768) 3072
_________________________________________________________________
activation_2 (Activation) (None,768) 0
_________________________________________________________________
bidirectional_1 (Bidirection (None,32) 100480
_________________________________________________________________
batch_normalization_3 (Batch (None,32) 128
_________________________________________________________________
activation_3 (Activation) (None,32) 0
_________________________________________________________________
dropout_1 (Dropout) (None,32) 0
_________________________________________________________________
dense_1 (Dense) (None,2) 66
=================================================================
Total params: 37,251,138
Trainable params: 37,249,538
Non-trainable params: 1,600
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。