抛硬币和预测违约,都是二元结果,都有概率,熵公式通用,数学形式完全一样。
但一个不需要模型,另一个养活了整个行业。
为什么?
这篇笔记想做的事情是:以这个对比为主线,每往下挖一层,就逼出一个信息论或概率统计的核心概念。硬币始终是"对照组"——每引入一个新概念,先问"对硬币有没有用",再问"对风控有没有用"。有用的差异就是新概念的价值所在。
信息论基础概念(熵、条件熵、互信息、交叉熵等)的定义和推导不在这里重复,可以参考信息论学习笔记。
第一层:表面相同——都是二元随机变量
从数学形式看,抛硬币和违约预测没有任何区别。
两者都是二元随机变量 $Y \in {0, 1}$,给定概率 $p = P(Y=1)$,熵的公式完全一样:
$$ H(Y) = -\bigl[p\log_2 p + (1-p)\log_2(1-p)\bigr] $$
代入具体数字:
| 场景 | $p$ | $H(Y)$ |
|---|---|---|
| 必然违约 | 1.0 | 0 bit |
| 违约率 99% | 0.99 | 0.081 bit |
| 公平硬币 | 0.5 | 1 bit |
| 违约率 25% | 0.25 | 0.811 bit |
| 违约率 5% | 0.05 | 0.286 bit |
| 违约率 1% | 0.01 | 0.081 bit |
| 必然不违约 | 0 | 0 bit |
注意 $p = 0.01$ 和 $p = 0.99$ 的熵完全相同——二元熵函数关于 $p = 0.5$ 对称。画成曲线更直观:
两头趋向确定时熵归零,中间 50/50 时达到最大值 1 bit——越接近"猜不出来",不确定性越高。
看上去只是参数不同。但如果追问一个看似简单的问题——这个 $p$ 从哪来的?——两者就立刻分道扬镳了。
第二层:概率从哪来——已知 vs 估计
硬币:概率是先验已知的
公平硬币的 $p = 0.5$ 来自物理对称性。硬币两面的质量分布均匀、形状对称,所以在没有任何实验的情况下,我们就有理由认为正反概率相等。
这个概率不需要数据来估计,也不会随着样本量变化——它是从问题本身的结构里直接推出来的。
违约:概率是从数据里估计出来的
违约率没有物理对称性可依赖。说"这个客群的违约率是 3%",背后的意思是:我们看了历史数据,统计出来的。
但这马上带来一个问题:估计值本身有不确定性。
如果你观察了 100 个人,其中 3 个违约,违约率"是" 3% 吗?
这取决于你怎么理解"概率"。
频率派 vs 贝叶斯派
这是概率统计里最经典的分歧之一。
频率派认为:违约率是一个固定但未知的参数 $\theta$。我们用样本来估计它,给出点估计和置信区间。
- 点估计:$\hat{\theta} = 3/100 = 0.03$
- 95% 置信区间(Wald 近似):$0.03 \pm 1.96\sqrt{0.03 \times 0.97 / 100} \approx [0.0, 0.063]$
置信区间的含义是:如果反复抽样,95% 的区间会包含真实值。但这一次的区间是否包含真值,频率派无法回答。
贝叶斯派认为:违约率本身是一个随机变量,有自己的分布。先验 + 数据 = 后验。
- 假设先验是 $\text{Beta}(1, 1)$(均匀先验,表示"什么都不知道")
- 观察到 3 次违约、97 次未违约
- 后验是 $\text{Beta}(4, 98)$,均值 $\approx 0.039$,95% 可信区间约 $[0.011, 0.079]$
贝叶斯的可信区间含义更直观:给定数据,违约率有 95% 的概率落在这个范围内。
为什么硬币不需要分这两派
对于公平硬币,频率派和贝叶斯派的结论完全一致:$p = 0.5$。因为概率来自物理结构,没有需要估计的参数,两派没有分歧的空间。
但对于违约率,参数未知且需要从数据中推断——这正是频率派和贝叶斯派分道扬镳的地方。两者的差异不在于数学能力,而在于怎么理解"概率"这个词本身。
flowchart TD
A["概率从哪来?"] --> B["物理对称性"]
A --> C["数据估计"]
B --> D["先验已知<br/>无需区分学派"]
C --> E["频率派<br/>参数是固定未知数"]
C --> F["贝叶斯派<br/>参数有分布"]
E --> G["点估计 + 置信区间"]
F --> H["先验 + 数据 → 后验分布"]第三层:能不能用特征改进预测
这是两者分歧最大的地方,也是风控行业存在的根本原因。
硬币:无特征可用
不管你观测什么——硬币的颜色、抛的人是谁、上一次的结果、今天星期几——都不会帮你更好地预测下一次的结果。
用信息论的语言说:
$$ I(X; Y) = 0, \quad H(Y|X) = H(Y) $$
对于任何特征 $X$,互信息恒为零。没有任何外部信息能减少抛硬币的不确定性。
违约:特征可以压缩不确定性
但违约不一样。如果你知道一个人的逾期记录、负债率、收入水平,你对"他会不会违约"的判断会发生变化。
$$ H(Y|X) < H(Y), \quad I(X; Y) > 0 $$
知道特征 $X$ 之后,条件熵下降了,互信息大于零——特征提供了关于 $Y$ 的有效信息。
两种不确定性
这个差异对应一个更深的区分:
- 不可约不确定性(aleatoric uncertainty):即使你拥有所有信息,也无法消除的随机性。硬币就是纯粹的不可约不确定性。
- 认知不确定性(epistemic uncertainty):因为"不知道"而产生的不确定性。获取更多信息(特征、数据)可以减少它。
风控里的不确定性两者都有:
- 部分不确定性可以通过特征来压缩(认知的)——比如知道一个人的历史逾期记录
- 但即使拥有所有能拿到的信息,仍然有残余的不可预测性(不可约的)——人的行为不是完全确定性的
模型能做的,是把认知不确定性尽量压缩,让 $H(Y|X)$ 逼近不可约部分的下界。
互信息在实际建模中的用途
互信息 $I(X; Y)$ 不只是理论概念,它在特征筛选中有直接的工程应用。
决策树的每一次分裂,本质上就是在选一个使条件熵下降最多的特征——也就是互信息最大的那个。ID3 算法直接用信息增益(互信息)作为分裂标准,C4.5 用信息增益比,但核心思想一样:哪个特征最能减少不确定性,就先用哪个。
风控特征工程的核心问题也可以用一句话概括:
找到一组特征 $X$,使得 $H(Y|X)$ 尽可能低。
第四层:先验本身就是信息
回到第一层的那张表:违约率 25% 时,$H(Y) = 0.811$ bit。
但这里有一个容易被忽略的问题:0.811 bit 并不是不确定性的起点。
如果你真的对一个人"一无所知"——不知道他属于哪个群体,不知道历史违约率,什么信息都没有——那根据最大熵原则,你应该从 $p = 0.5$ 出发,$H(Y) = 1$ bit。
你说"违约率是 25%",这个数字本身就携带了信息。它来自你对某个群体的统计观察——这已经是一次信息压缩了。
所以完整的过程是:
$$ 1 \text{ bit}\ (\text{完全无知}) \xrightarrow{\text{群体基准率}} 0.811 \text{ bit} \xrightarrow{\text{个体特征}} H(Y|X) $$
每一步都是条件熵的压缩。先验不是"什么都没做",而是第一层特征——只不过它是群体级别的,而不是个体级别的。
逻辑回归里能直接看到这个结构
逻辑回归的模型是:
$$ \log\frac{p}{1-p} = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \cdots $$
其中:
- 截距 $\beta_0$ 编码的就是基准率(先验)
- 各系数 $\beta_i$ 编码的是个体特征对先验的偏移
如果所有特征都是 0(或者说"没有个体信息"),模型的输出就退化为基准率。特征的作用是在基准率的基础上做调整。
最大熵原则
“完全无知时假设均匀分布"这件事,在信息论里有一个正式的名字:最大熵原则。
它的逻辑是:在只满足已知约束的前提下,选择熵最大的分布——因为这是"最不做额外假设"的分布。
- 只知道 $Y \in {0, 1}$,没有其他约束 → 最大熵分布是均匀的,$p = 0.5$
- 知道均值为 $\mu$ 的连续变量 → 最大熵分布是指数分布
- 知道均值和方差 → 最大熵分布是正态分布
这和贝叶斯推断的无信息先验(如 Jeffreys 先验)在精神上一致:没有理由偏向任何一边时,就保持最大的不确定性。
信息论和贝叶斯推断在这里交汇了——两者都在回答同一个问题:在有限信息下,怎样做出"最诚实"的推断。
第五层:预测得准不准——校准与交叉熵
硬币:不存在"准不准"的问题
公平硬币的概率是已知的,不需要模型,也不存在"模型预测准不准"这个问题。
违约:概率估计的质量至关重要
风控模型的输出是一个概率值,比如"这个人的违约概率是 12%"。但这个 12% 准不准?
这里"准不准"至少有两层含义:
- 排序能力(discrimination):高风险的人是不是排在前面?→ 用 AUC 衡量
- 校准(calibration):模型说 12%,实际上是不是 12% 的人违约了?→ 用校准曲线衡量
很多场景只关心排序(比如推荐系统排个序就行了),但风控特别在意校准,原因很具体:
- 概率直接进入定价:贷款利率 = 资金成本 + 风险溢价 + 运营成本。风险溢价就是预期损失率,如果违约概率估偏了,定价就会系统性地过高或过低
- 概率直接进入准备金计算:银行需要根据预期损失率提取准备金,高估/低估都有监管后果
- 概率影响额度决策:同一个客户,违约概率 5% 和 15% 的额度策略可能完全不同
交叉熵衡量预测质量
交叉熵正好衡量"用预测分布 $q$ 去逼近真实分布 $p$,要付出多大代价”:
$$ H(p, q) = -\sum_x p(x)\log q(x) $$
在二分类中,这就是常见的 log loss:
$$ L = -\bigl[y\log q + (1-y)\log(1-q)\bigr] $$
如果模型完美校准($q = p$),交叉熵就等于真实分布的熵——这是理论下界,不可能更低了。
如果模型校准有偏差($q \neq p$),交叉熵就会比真实熵多出一个 KL 散度:
$$ H(p, q) = H(p) + D_{KL}(p | q) $$
所以 KL 散度衡量的是:模型比理论最优多浪费了多少。
校准曲线:一张图看清偏差
校准曲线的画法很直观:
- 把模型输出的概率按区间分桶(比如 0-10%, 10-20%, …)
- 每个桶里计算实际违约率
- 画出"预测概率 vs 实际频率"的散点图
完美校准的模型落在 $y = x$ 对角线上。偏离对角线的方向和程度,就是校准偏差的可视化。
- 高估风险(橙色,在对角线下方):模型说 25% 会违约,实际只有 18%。会导致过度拒贷、利率定价偏高,损失好客户
- 低估风险(蓝色,在对角线上方):模型说 25% 会违约,实际有 32%。会导致放贷过于激进,坏账超出预期
回到硬币的对照:硬币不需要校准,因为概率本来就是已知的、精确的。而风控模型的校准问题,本质上是因为概率是估计出来的,估计就可能有偏差。
风控模型的三个评估维度:AUC、KS 与 KL
校准只是模型评估的一个维度。完整地评价一个风控模型,通常要看三件事:排得准不准(AUC)、分得开不开(KS)、漂没漂(KL/PSI)。
AUC:排序能力
AUC(Area Under the ROC Curve)衡量的是模型的排序能力:把所有人按预测违约概率从高到低排,坏人是不是排在好人前面。
ROC 曲线的画法:
- 横轴是假阳性率(FPR):好人里被错误标记为坏人的比例
- 纵轴是真阳性率(TPR):坏人里被正确识别的比例
- 每个分类阈值对应一个 (FPR, TPR) 点,连起来就是 ROC 曲线
- AUC = 0.5:和随机猜一样,没有区分能力
- AUC = 1.0:完美分离,所有坏人都排在好人前面
- 风控实践中,AUC 在 0.70–0.85 算可用,0.85 以上算很好
AUC 和互信息的联系:特征 $X$ 与标签 $Y$ 的互信息 $I(X;Y)$ 越大,模型能捕获的信号越多,AUC 就倾向于越高。但 AUC 只关心排序,不关心概率的绝对值——排序对了但概率全偏了,AUC 照样很高。
KS:好坏分布的最大分离度
KS(Kolmogorov-Smirnov)统计量衡量的是:好人和坏人的分数分布,最多能拉开多远。
具体来说,把好人和坏人分别按模型分数画累积分布函数(CDF),KS 值就是两条 CDF 曲线之间的最大垂直距离。
- KS 越大,说明模型把好人和坏人的分数"推"得越远,越容易找到一个阈值把两群人分开
- 风控实践中,KS 在 0.30–0.50 算可用,0.50 以上算很好
- KS 和 AUC 高度相关,但 KS 更侧重"最优切分点在哪",AUC 更侧重"整体排序质量"
KL 散度与 PSI:分布有没有漂
前面讲交叉熵时已经提到 KL 散度衡量"用 $q$ 逼近 $p$ 多浪费了多少"。在风控的日常监控里,KL 散度有一个直接的工程化身——PSI(Population Stability Index)。
PSI 本质上是 KL 散度的对称版本:
$$ \text{PSI} = \sum_i (p_i - q_i) \cdot \ln\frac{p_i}{q_i} $$
其中 $p$ 是基准时期的分数分布,$q$ 是当前时期的分数分布。
它回答的问题是:
模型的输入或输出分布,和训练时相比,漂了没有?
风控实践中的经验阈值:
| PSI | 含义 |
|---|---|
| < 0.1 | 分布稳定,模型可继续使用 |
| 0.1 – 0.25 | 轻微漂移,需要关注 |
| > 0.25 | 显著漂移,模型可能需要重新训练 |
分布漂移的常见原因包括:渠道结构变化、审批策略调整(选择偏差)、宏观经济波动、数据采集方式变更。
三个指标的分工
把三者放在一起看,正好覆盖了风控模型评估的三个维度:
| 指标 | 问的问题 | 信息论对应 |
|---|---|---|
| AUC | 排序对不对? | 互信息 $I(X;Y)$ 越大,排序越好 |
| KS | 好坏分得开不开? | 条件分布的分离程度 |
| 校准 | 概率准不准? | 交叉熵 $H(p,q)$ 是否接近 $H(p)$ |
| PSI | 分布漂没漂? | KL 散度的对称版本 |
AUC 和 KS 回答"模型好不好",校准回答"模型的概率能不能直接用",PSI 回答"模型还能不能继续用"。
第六层:样本够不够——大数定律与小样本困境
硬币:大数定律的教科书案例
抛一枚公平硬币:
- 抛 10 次,正面比例可能是 0.3 也可能是 0.7,波动很大
- 抛 100 次,比例大概率在 0.4 到 0.6 之间
- 抛 10,000 次,比例几乎一定在 0.49 到 0.51 之间
这就是大数定律:样本均值随样本量增大收敛到总体均值。硬币是最干净的例子,因为 $p$ 已知,我们可以精确计算收敛速度。
标准误差为 $\sqrt{p(1-p)/n}$。对公平硬币($p=0.5$),$n=10000$ 时标准误差只有 0.005——收敛得很快。
违约:稀有事件的估计困境
但违约率通常不是 50%,而是 1%–5%。这意味着:
- 1000 个样本里,只有 10–50 个正样本
- 正样本的统计波动远大于负样本
- 估计的方差主要由正样本数量决定
具体算一下。违约率 $p = 0.01$ 时:
$$ \text{标准误差} = \sqrt{\frac{0.01 \times 0.99}{n}} $$
| 样本量 $n$ | 期望正样本数 | 标准误差 | 95% 置信区间 |
|---|---|---|---|
| 100 | 1 | 0.010 | [0, 0.030] |
| 1,000 | 10 | 0.0031 | [0.004, 0.016] |
| 10,000 | 100 | 0.0010 | [0.008, 0.012] |
| 100,000 | 1,000 | 0.00031 | [0.0094, 0.0106] |
100 个样本里可能一个违约都没有——你会以为违约率是 0%。这不是模型的问题,是数据量不够。
信息论视角:低熵不等于问题简单
回到熵的角度看:
违约率 1% 时,$H(Y) = 0.081$ bit。看起来不确定性很低——结果几乎可以确定(大概率不违约)。
但这不意味着问题简单。恰恰相反:
- 一个"什么都不做"的模型,直接输出"不违约",准确率就有 99%——但毫无业务价值
- 有效信号(违约的模式)被大量正常样本稀释
- 每一个 bit 的互信息都更加珍贵,因为总共可用的"信息空间"就只有 0.081 bit
用一个类比:在一个安静的房间里(低熵),一点点噪声(信号)很容易被听到。但如果你的"麦克风"(样本量)不够灵敏,你可能根本录不到。
类别不平衡的本质
类别不平衡之所以是个问题,根源不在于"正负样本数量不一样"——而在于:
正样本太少,导致正样本区域的条件概率估计不稳定。
模型在负样本多的区域见过足够多的例子,条件概率估得很准;但在正样本稀疏的区域,估计值的方差很大。这是统计估计的基本限制,和模型选择无关。
第七层:从预测到决策——信息的价值
硬币:预测完美也没有决策价值
即使你能完美预测每次抛硬币的结果(当然你不能),这个预测也缺乏实际的决策场景。
赌场不需要预测硬币。它靠的是规则设计(house edge)——让期望收益始终偏向庄家,不管单次结果如何。
违约:每个预测都连着一个决策
风控不一样。模型输出一个违约概率之后,紧接着就是决策:
- 放贷还是拒贷?
- 放多少额度?
- 利率定多少?
- 需要不需要担保?
这些决策的背后是非对称损失:
- 漏掉一个违约者(假阴性)→ 损失本金,可能几万甚至几十万
- 误拒一个好客户(假阳性)→ 损失利润,但金额相对可控
因为损失不对称,最优决策阈值通常不是 $p = 0.5$。
期望损失与决策阈值
假设:
- 放贷给好客户,期望收益 $R$(利息收入)
- 放贷给违约客户,期望损失 $C$(本金损失)
当模型预测违约概率为 $p$ 时:
$$ \text{放贷的期望收益} = (1-p) \cdot R - p \cdot C $$
令期望收益等于零,解出决策阈值:
$$ p^* = \frac{R}{R + C} $$
用国内常见的年化利率来测算。假设本金归一化为 1,违约时全额损失($C = 1$,无担保消费信贷的典型情况),那么 $R$ 就是年化利率本身:
| 年化利率 | $R$ | $C$ | 决策阈值 $p^*$ | 含义 |
|---|---|---|---|---|
| 36% | 0.36 | 1 | 26.5% | 每 4 个人里可以容忍 1 个违约 |
| 24% | 0.24 | 1 | 19.4% | 每 5 个人里可以容忍 1 个违约 |
| 12% | 0.12 | 1 | 10.7% | 每 10 个人里只能容忍 1 个违约 |
| 6% | 0.06 | 1 | 5.66% | 每 18 个人里只能容忍 1 个违约 |
这张表直观地解释了几个业务现象:
- 高利率产品能服务更高风险的人群——36% 年化可以容忍 26.5% 的违约率,所以现金贷、消费分期能覆盖征信较差的客群
- 低利率产品对风控精度要求极高——6% 年化只能容忍 5.66% 的违约率,银行房贷、大额信用贷必须把坏人挑得很准
- 利率越低,每一 bit 互信息的经济价值越大——因为容错空间更小,模型区分好坏人的能力直接决定盈亏
反过来看,这也解释了为什么监管降低利率上限(比如从 36% 降到 24%)会导致部分客群被拒贷——不是风控模型变了,而是决策阈值从 26.5% 收紧到了 19.4%,一部分原本"高风险但可以覆盖"的客户变成了"高风险且无法覆盖"。
当然,实际业务中 $R$ 不只是利率,还要扣除资金成本、运营成本;$C$ 也不一定是全额损失,有担保物的贷款回收率可能 50%–70%。但核心公式不变——利率和损失的比值决定了你能容忍多高的违约率。
这就是为什么风控模型不能只看 AUC(排序能力),还必须看校准:决策阈值 $p^*$ 要和模型的概率输出在同一个标尺上才有意义。
信息的经济价值
最后一个问题:一个 bit 的互信息,在业务上值多少钱?
假设不用模型(纯粹看群体基准率),你只能对所有人收取相同的利率来覆盖平均违约损失。
有了模型之后,你可以区分高风险和低风险客户——低风险客户可以给更低的利率(增强竞争力),高风险客户要么拒绝要么加价。这个"区分能力"直接来自特征提供的互信息。
互信息越大,风险分层越精细,定价越准确,利润空间越大。所以信息论里那个抽象的 $I(X; Y)$,在风控的语境下可以被翻译成:
每多知道一点关于客户是否违约的信息,就能把定价做得更精准一点,利润就多一点。
结语
从同一个二元结构出发,硬币和违约一层层分道扬镳:
| 层次 | 核心问题 | 硬币 | 违约 |
|---|---|---|---|
| 1 | 表面结构 | 二元,$p=0.5$ | 二元,$p$ 待估计 |
| 2 | 概率来源 | 物理对称性 | 数据估计 |
| 3 | 特征能否改进 | 不能 | 能 |
| 4 | 先验的角色 | 不适用 | 第一层压缩 |
| 5 | 预测质量 | 不需要模型 | 校准至关重要 |
| 6 | 样本需求 | 大数定律保证 | 稀有事件困难 |
| 7 | 决策价值 | 无 | 每个预测连着决策 |
差异的根源只有一句话:
硬币是纯随机过程,不确定性不可约;违约是条件概率过程,不确定性可以被信息压缩。
信息论和概率统计不是两门独立的课。它们在"不确定性如何被度量、减少和利用"这个问题上,完全交织在一起。