keras中的多类多维标签分类

问题描述

如果我有一个二进制分类任务,那么神经网络的最后一层应该是:

output= tensorflow.keras.layers.Dense(1,activation='sigmoid')(x)
model.compile(loss='binary_crossentropy')

如果分类问题是多类的,标签是标量并且是k个离散值之一,我通常将标量标签编码为k维一热表示并进行修改

output= tensorflow.keras.layers.Dense(k,activation='softmax')(x)
model.compile(loss='categorical_crossentropy')

如果我有一个具有k个二进制目标的二进制分类任务,我将修改为:

output= tensorflow.keras.layers.Dense(k,activation='sigmoid')(x)
model.compile(loss='binary_crossentropy')

但是,当我有多个输出并且每个输出有多个类别时,我仍然无法弄清楚什么是正确的网络设计。 例如[[0,1],[7,2],..]

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)