样本类别均衡化
样本类别数量不均衡,对当前模型的影响很严重。假设1000人中50人是小偷,预测很难准。
但样本类别均衡胡会是比例较小的权重较高,以此提高模型性能。
API:
model = svm.SVC(kernel='linear',class_weight='balanced') (kernel = 'rbf'(圈起来),class_weight={0:1,1:1})
拿一条直线 按样本数量均衡 类别权重相等(0:10会更加照顾少的样本)
model.fit(train_x,train_y)
案例:好评与差评(95:5),预测当前NBA比赛会不会有人受伤(100:5)
如果遇到样本数量不均衡,如下解决办法:
1)设置类别权重 class_weight,均衡化样本数量的差异.
2) 上采样或下采样(将样本数量少的增加,或者将多的减少)