weixin_44347319
C医生
采纳率14.3%
2019-04-01 16:31

ValueError: multilabel-indicator format is not supported的报错原因?

报错ValueError: multilabel-indicator format is not supported?
这个报错意思比较明确,不支持多分类,但我模型里y的label定义就是0和1,binary,为啥会有这个报错?
一个图像2分类的keras模型,总样本量=120,其中label"0"=110,label"1"=10,非平衡,

代码如下:
data = np.load('D:/a.npz')
image_data, label_data= data['image'], data['label']

skf = StratifiedKFold(n_splits=3, shuffle=True)

for train, test in skf.split(image_data, label_data):
train_x=image_data[train]
test_x=image_data[test]
train_y=label_data[train]
test_y=label_data[test]

train_x = train_x.reshape(81,50176)
test_x = test_x.reshape(39,50176)
train_y = keras.utils.to_categorical(train_y,2)
test_y = keras.utils.to_categorical(test_y,2)

model = Sequential()
model.add(Dense(units=128,activation="relu",input_shape=(50176,)))
model.add(Dense(units=128,activation="relu"))
model.add(Dense(units=128,activation="relu"))
model.add(Dense(units=2,activation="sigmoid"))

model.compile(optimizer=SGD(0.001),loss="binary_crossentropy",metrics=["accuracy"])
model.fit(train_x, train_y,batch_size=32,epochs=5,verbose=1)
y_pred_model = model.predict_proba(test_x)[:,1]
fpr_model, tpr_model, _ = roc_curve(test_y, y_pred_model)

报错提示如下:
---> 63 fpr_model, tpr_model, _ = roc_curve(test_y, y_pred_model)
ValueError: multilabel-indicator format is not supported

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • weixin_45215465 闭上眼才看见最干净的世界 1月前

    您好,请问这个问题您解决了嘛?

    点赞 评论 复制链接分享

相关推荐