【发布时间】:2018-11-02 20:47:14
【问题描述】:
我正在进行二进制分类情感分析,无论是正面还是负面,我的 lstm 代码都可以正常工作,但我正在将 lstm 代码转换为 cnn,“input_length”的值错误为 30,但接收到的输入具有形状(无, 1)
我的输入形状是 (30,1) 我的批量大小是 lstm 中的 24
model.add(Embedding(30,30,input_length=30))
model.add(Conv1D(padding='valid',activation='relu',strides=1))
model.add(Dropout(0.2))
model.add(Dense(30))
model.add(Dropout(0.2))
model.add(Activation('relu'))
model.add(Dense(1))
model.add(Activation('sigmoid'))
model.compile(loss='binary_crossentropy',optimizer='adam',metrics=['accuracy'])
model.fit(inputBatch, ponlabel,batch_size=24,epochs=20,validation_data=(inputBatch, ponlabel))
为了参考,我已经放了我的 LSTM 代码。
model.add(LSTM(100, input_shape=(30, 1)))
model.add(Dense(30, activation="relu"))
model.add(Dense(1, activation="sigmoid"))
model.compile(loss='mean_absolute_error', optimizer='adam',metrics=["accuracy"])
model.fit(inputBatch, ponlabel,
batch_size=24, epochs=20, verbose=1)
【问题讨论】:
标签: python tensorflow keras lstm