我正在建立一个LSTM模型,以便使用Keras对一些评论数据进行分类。输出仅为1或0。
在将文本数据输入lstm层之前,我添加了一个词嵌入层。我的部分代码如下所示。这是max_feature是词汇量。字向量的大小为2。每个文档的大小为maxlen。所有文档已经被填充为相同的长度。
但是,我总是对LSTM层的长度感到困惑。该长度应与我的文件长度(最大)相同吗?输入每个文档中的所有单词,并获得输出?.....
有很多在线资源介绍LSTM。但是在实现方面,我觉得没有很多人给出明确的解释...
如果有人可以澄清这一点,我们将不胜感激。
# max_features: vocabulary size
# word vector size: 2
# maxlen: my document size, already padded to the same length
# Build our model
print('Build model...')
model = Sequential()
model.add(Embedding(input_dim=max_features, output_dim= 2, input_length=maxlen ))
model.add(LSTM(units= ???? ))
model.add(Dense(1))
model.add(Activation('sigmoid'))
model.compile(loss='binary_crossentropy',
optimizer='adam',
metrics=['accuracy'])