编码:
model = Sequential()
model.add(Embedding(max_features, 32))
model.add(SpatialDropout1D(0.2))
model.add(LSTM(100, dropout=0.2, recurrent_dropout=0.2))
model.add(Dense(num_classes, activation="sigmoid"))
model.compile(loss='categorical_crossentropy',
optimizer='adam',
metrics=['accuracy'])
model.fit(x_train, y_train, batch_size=256, epochs=15,
validation_data=(x_test, y_test), verbose=2)
scores = model.evaluate(x_test, y_test,
batch_size=256)
是否有用于文本分类的更好/高效的神经网络架构?
首先引起您注意的是所选激活函数和损失(误差)函数之间的差异。激活函数
sigmoid用于二分类,与损失函数结合使用binary_crossentropy:如果分类结果可以超过两个 (3+) 值,则 应用作激活函数
softmax,并且 应用作损失categorical_crossentropy。最合适的架构是能够为您提供最佳结果并满足所有边界条件的架构。