首页 文章

Keras分类模型

提问于
浏览
3

我需要帮助来构建用于分类的keras模型 . 我有

输入:167个光谱点

输出11类被调查物质 .

但是在一个数据集中可能是具有多种物质的物质的幽灵(例如包含2,3,4类) . 我尝试使用 categorical_crossentropy ,但它仅适用于非交叉类 .

KerasDoc

注意:当使用categorical_crossentropy损失时,您的目标应该是分类格式(例如,如果您有10个类,则每个样本的目标应该是一个10维向量,在对应于索引的索引处为全0期望为1样本的类) . 要将整数目标转换为分类目标,可以使用Keras实用程序to_categorical:

我的代码:

model = Sequential()
model.add(Dense(64, input_dim=167))
model.add(Dense(32))
model.add(Dense(11))
model.add(Activation('sigmoid'))
model.compile(loss='categorical_crossentropy', optimizer='rmsprop', metrics=['accuracy'])

我尝试了很多模型,但无法取得好成绩 .

1 回答

  • 1

    您可能应该选择 sigmoidbinary_crossentropySee here

    PS:这不是你的情况,但对于 categorial_crossentropy ,理想情况下你应该使用 softmax 激活 . softmax输出优化的内容,仅最大化一个类 .

    (如果有人想用一个好的或更好的“优化器”补充这个答案,请随意) .

相关问题