分类问题-样本权重(sample_weight)和类别权重(class_weight)

样本权重是对损失函数来说的对于类别少的样本 通过调节其对
损失函数的影响程度来达到提高预测精度

  1. 类型权重参数: class_weight

class_weight有什么作用?在分类模型中,我们经常会遇到两类问题:

  第一种是误分类的代价很高。比如对合法用户和非法用户进行分类,将非法用户分类为合法用户的代价很高,我们宁愿将合法用户分类为非法用户,这时可以人工再甄别,但是却不愿将非法用户分类为合法用户。这时,我们可以适当提高非法用户的权重class_weight={0:0.9, 1:0.1}。

  第二种是样本是高度失衡的,比如我们有合法用户和非法用户的二元样本数据10000条,里面合法用户有9995条,非法用户只有5条,如果我们不考虑权重,则我们可以将所有的测试集都预测为合法用户,这样预测准确率理论上有99.95%,但是却没有任何意义。这时,我们可以选择balanced(scikit-learn 逻辑回归类库使用小结),让类库自动提高非法用户样本的权重。

2. 样本权重参数: sample_weight

  样本不平衡,导致样本不是总体样本的无偏估计,从而可能导致我们的模型预测能力下降。遇到这种情况,我们可以通过调节样本权重来尝试解决这个问题。调节样本权重的方法有两种,第一种是在class_weight使用balanced。第二种是在调用fit函数时,通过sample_weight来自己调节每个样本权重。

    在scikit-learn做逻辑回归时,如果上面两种方法都用到了,那么样本的真正权重是class_weight*sample_weight.

原理 => 样本或类别的权重在训练模型最终通过损失函数实现(以逻辑回归为例):

算法会把每个样本的训练损失乘以它的权重class_weight*sample_weight,损失函数为:
J(θ)=−(class_weight∗sample_weight)lnL(θ)=−(class_weight∗sample_weight)∑i=1m(y(i)log(hθ(x(i)))+(1−y(i))log(1−hθ(x(i)))) 。

应用 => 1. 做受众选择(人群扩展、人群定向)模型,若种子包包括目标商品转化和行为用户(购买较少,加入线上加购、收藏作为正样本),可考虑加大转化用户的样本权重。

2.DSP中CVR预估,广告主同时对ROI提出要求时,可尝试把客单价转化为样本权重列(spark lr: Weight_Col)参与到模型训练以提升ROI。

3. QLMX:第四届拍拍贷魔镜杯冠军方案分享 - 日期权重调整: 现金流预测中统计分析月初的还款量较大,月底的还款量较小,将每月月初的loss权重增到到1.12,月末的loss权重的loss减小到0.79。

4.

清凇:Deep Neural Network for YouTube Recommendation论文精读 zhuanlan.zhihu.com图标
  • 有点击的为正样本,有PV无点击的为负样本,正样本根据观看时长进行加权( weighted logistic regression), 其目标其实为预测期望观看时长
  • 6
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值