python - 使用 Keras LSTM 预测 10+ 类:model.predict 的标签输出不一致
问题描述
我正在使用 keras bi-lstm 来预测 14 个类。这是我的标签索引:
label_index=`{'1':0,'2':1,'D':2,'7':3,'8':4,'9':5,'10':6,'11':7,'12':8,'13':9,'14':10,'15':11,'16':12,'17':13}`
这是我的模型设置的一部分:
model.add(Bidirectional(LSTM(64)))
model.add(Dropout(0.5))
model.add(Dense(14, activation='softmax'))
model.compile('adam', 'sparse_categorical_crossentropy', metrics=['accuracy'])
Dense 函数中的“14”是类数。当我查看 的标签分布时pred = model.predict(x_test, verbose=0)
,我发现:
Counter({'1': 54,
'10': 88,
'11': 5,
'12': 2,
'13': 6,
'14': 5,
'3': 65,
'4': 5,
'5': 3,
'6': 28,
'7': 10,
'8': 3,
'9': 3})
这个“14”是从哪里来的???它不在我的索引中。而且没有“0”!我猜在多类情况下, kera.predict 不能输出零。我应该为“pred”中的每个元素减去 1 吗?
解决方案
推荐阅读
- c - 当我尝试使用函数中通过引用传递的预分配矩阵读取值时出现分段错误
- android - Socket io 在 Android 9.0 上不起作用 - io.socket.engineio.client.EngineIOException xhr poll 错误
- php - 在浏览器中打开文本文件
- python - pyplot 显示不好,图像太暗
- python - 无法在 Windows 上安装 jupyter
- python - 更改散点图上的颜色
- django - 在不同的 url 上输出用户输入的视图
- plot - 二项式中断图的八度除法
- javascript - 如何使用 html5 css3 和 javascript 中的范围滑块翻转图像?
- amazon-s3 - 使用 Elastic Beantalk 部署 Web 应用程序,无需自动缩放