Class_weight: TypeError: unhashable type: ‘numpy.ndarray‘

笔者在运行下面这段代码时:

class_weights = compute_class_weight(class_weight = 'balanced',
classes = np.unique(train_label_), y = train_label_)

遇到报错:

TypeError: unhashable type: 'numpy.ndarray'

 此时:train_label.shape : (sample ,2):此时用了

train_label =np_utils.to_categorical(train_label,num_classes=2)

后将shape改为(sample ,1)问题即解决。

此时又出现新的报错:

ValueError: classes should include all valid labels that can be in y

将代码做出如下更改即可:

ss_weights = compute_class_weight(class_weight = 'balanced',
classes = np.unique(train_label), y = np.ravel(train_label))

这里要注意的是,class_weight参数的接收形式:clases=[0, 1];y=[0,0,0,0,1,1,1,1]。shape:(1,sample)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值