2、样本权重原理:数学定义、损失函数影响与概率关系

好,咱们进入正题。样本权重这东西,说白了就是给每个样本分配一个「重要性系数」。你想想看,在信贷风控场景里,一个违约客户和一个正常客户,它们对模型的价值能一样吗?显然不能。

2.1 样本权重的数学定义

先看最基础的定义。假设我们有 N 个样本,每个样本 (x_i, y_i) 对应一个权重 w_i。这个权重是个非负实数,通常满足:

w_i ≥ 0, 且 Σ w_i = N(归一化后)

我个人习惯把权重理解为「这个样本被重复了多少次」。比如权重为 2,就相当于这个样本在训练集中出现了两次。嗯,这个直觉很重要。

权重的常见设定方式有两种:

  • 实例权重:每个样本单独赋予权重,比如根据时间衰减(越近的样本权重越大)
  • 类别权重:同一类别的样本共享权重,比如正样本权重 = 负样本数 / 正样本数

我在项目中遇到过一种情况:某次做信用卡申请评分卡,好客户有 10 万条,坏客户只有 2000 条。如果不加权,模型基本就躺平了——全预测成好客户,准确率 98%,但风控完全失效。

2.2 权重如何影响损失函数

这是核心中的核心。咱们以逻辑回归的交叉熵损失为例,看看权重是怎么插进去的。

不加权的损失函数长这样:

L = - (1/N) * Σ [ y_i * log(p_i) + (1 - y_i) * log(1 - p_i) ]

加了权重之后:

L_w = - (1/Σ w_i) * Σ [ w_i * ( y_i * log(p_i) + (1 - y_i) * log(1 - p_i) ) ]

看出来了吗?每个样本的损失项前面乘上了它的权重 w_i。分母也变成了权重和,而不是样本数 N。这样做的目的是保持损失值的量级不变。

关键点:权重越大,该样本对梯度更新的贡献就越大。说白了,模型会更努力地去拟合高权重的样本。

我曾经踩过一个坑:某次做反欺诈模型,我把欺诈样本的权重设成了 100 倍。结果模型过拟合了——它把几个噪声样本也当成了欺诈模式,上线后误杀率飙升。嗯,权重不是越大越好。

2.3 权重与概率的关系

这里有个很多人搞混的点:权重到底改变了什么?是改变了模型学到的概率分布吗?

答案是:权重改变了模型对先验概率的估计

不加权时,模型预测的概率 p(y=1|x) 反映的是训练集中正样本的比例。比如训练集里正样本占 5%,模型预测的概率均值也会接近 5%。

加了权重后,模型预测的概率反映的是加权后的正样本比例。举个例子:

样本类型 原始数量 权重 加权数量
正样本(坏客户) 100 10 1000
负样本(好客户) 1000 1 1000

加权后,正样本比例变成了 1000/(1000+1000) = 50%。模型预测的概率会向 50% 靠拢,而不是原来的 9.1%。

避坑指南:如果你需要模型输出真实的违约概率(比如用于巴塞尔协议下的资本计量),记得对概率做校准。我一般用 Platt Scaling 或者 Isotonic Regression 来把加权后的概率映射回真实概率。

2.4 核心知识体系

下面这张图是我自己总结的样本权重原理框架,你看一眼就能串起来:

样本权重原理知识体系 数学定义 • w_i ≥ 0 • Σ w_i = N(归一化) • 实例权重 vs 类别权重 损失函数影响 • 加权交叉熵 • 梯度加权更新 • 过拟合风险 概率关系 • 先验概率偏移 • 加权后概率校准 • Platt Scaling 应用场景:不平衡分类、时间衰减、样本质量加权 ⚠️ 常见误区 1. 权重不是越大越好,过大会导致过拟合 2. 加权后的概率需要校准才能用于业务决策 3. 权重归一化很重要,否则学习率需要重新调

2.5 实际应用中的注意事项

最后聊几个实战中容易翻车的地方:

  • 权重归一化:如果不做归一化,权重总和可能很大,导致学习率需要重新调整。我一般习惯把权重归一化到样本数 N。
  • 权重与正则化的关系:权重大的样本,模型会优先拟合它,但正则化项(L1/L2)是不加权的。这意味着高权重样本更容易导致过拟合。
  • 权重与采样策略:权重本质上是一种「软采样」。你可以用权重替代欠采样/过采样,但两者效果不完全等价。我个人偏好权重,因为它保留了所有样本信息。

警告:千万不要在验证集和测试集上也使用权重!权重只用于训练过程。验证集和测试集必须保持原始分布,否则你评估的模型性能是虚假的。

好了,样本权重的原理就聊到这儿。记住三个核心点:权重是重要性系数、它通过损失函数影响模型、它改变了概率估计。搞懂这些,后面讲具体实现时你就不会懵了。


公众号:蓝海资料掘金营,微信deep3321