keras层到底如何工作?

时间:2019-05-24 15:50:15

标签: keras neural-network lstm embedding

我尝试创建具有7个分类的情感分析。 假设我有100.000个唯一的单词(已经转换为100.000个整数),最长的输入是41个。 我创建了3层嵌入,LSTM和密集层。

model = Sequential();
model.add(Embedding(100000, 50, input_length = 41))
model.add(LSTM(75, dropout=0.2, recurrent_dropout=0.0))
model.add(Dense(7, activation='softmax'))
optimizer = Adam(lr=0.00001)
model.compile(loss='sparse_categorical_crossentropy', optimizer=optimizer, metrics=['accuracy'])

基于上面的代码,我试图创建如下的插图模型:

illustration

据我了解, X t 是要输入的41整数。嵌入层会将每个整数转换为长度为50的实值向量。 每个已转换的向量都是LSTM层的输入(X 1 -X 41

  1. 插图是否正确?
  2. 我已经创建了多少个LSTM单元(据我的理解是41)?
    由于LSTM层的return_sequences和return_state默认为false,因此它将变成多对一吗?
    如果是,h 41 是唯一将用于分类的输出值?
  3. 对于密集层,h 41 是否会连接到每个具有softmax激活功能的神经元?每个神经元都会产生y的值?
  4. LSTM层/插图的影响力是75个单位是什么?

0 个答案:

没有答案