具有极端类别的LSTM神经网络分类

时间:2019-12-20 20:58:57

标签: neural-network recurrent-neural-network

我正在尝试构建一个LSTM分类器,该分类器将读取简短的零件描述文本并将该文本分类为零件编号。零件数量非常多(40k),零件描述文本通常长几个字(最长为16个字)。零件说明在词义方面有些重叠,但是特定部分有很多不同的词。

培训:

  • x_train张量,形状为40k x 16(这是40k零件条目,16个单词列表)

  • y_train张量,形状为40k x 40k(这是40k分类编码,是一热编码的。看起来像单位矩阵)

激活:softmax

损失:categorical_crossentropy

指标:categorical_accuracy

优化器:亚当

嵌入参数:

  • 词汇量:14,000

  • 嵌入向量长度:16

  • 输入长度:16

LSTM输出维数:4000(从帽子中拔出,但仍然不满意)

型号:

model = Sequential()
model.add(Embedding(14000, 16, input_length=16))
model.add(LSTM(4000))
model.add(Dense(14000, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['categorical_accuracy'])

鉴于这些是我的输入,是否有理由期望它可以训练到任何可靠的准确性水平,还是类别的数量太大?

到目前为止,我的精度为0,但是我认为这是因为我的LSTM输出维数太低。

0 个答案:

没有答案