抛硬币和预测违约,都是二元结果,都有概率,熵公式通用,数学形式完全一样。

但一个不需要模型,另一个养活了整个行业。

为什么?

这篇笔记想做的事情是:以这个对比为主线,每往下挖一层,就逼出一个信息论或概率统计的核心概念。硬币始终是"对照组"——每引入一个新概念,先问"对硬币有没有用",再问"对风控有没有用"。有用的差异就是新概念的价值所在。

信息论基础概念(熵、条件熵、互信息、交叉熵等)的定义和推导不在这里重复,可以参考信息论学习笔记

第一层:表面相同——都是二元随机变量

从数学形式看,抛硬币和违约预测没有任何区别。

两者都是二元随机变量 $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.00 bit
违约率 99%0.990.081 bit
公平硬币0.51 bit
违约率 25%0.250.811 bit
违约率 5%0.050.286 bit
违约率 1%0.010.081 bit
必然不违约00 bit

注意 $p = 0.01$ 和 $p = 0.99$ 的熵完全相同——二元熵函数关于 $p = 0.5$ 对称。画成曲线更直观:

00.250.50.75100.51.0pH(Y) bit1%: 0.08125%: 0.81150%: 1.099%: 0.081

两头趋向确定时熵归零,中间 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% 准不准?

这里"准不准"至少有两层含义:

  1. 排序能力(discrimination):高风险的人是不是排在前面?→ 用 AUC 衡量
  2. 校准(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 散度衡量的是:模型比理论最优多浪费了多少。

校准曲线:一张图看清偏差

校准曲线的画法很直观:

  1. 把模型输出的概率按区间分桶(比如 0-10%, 10-20%, …)
  2. 每个桶里计算实际违约率
  3. 画出"预测概率 vs 实际频率"的散点图

完美校准的模型落在 $y = x$ 对角线上。偏离对角线的方向和程度,就是校准偏差的可视化。

0%10%20%30%40%50%0%10%20%30%40%50%模型预测违约概率实际违约率完美校准完美校准模型高估风险模型低估风险
  • 高估风险(橙色,在对角线下方):模型说 25% 会违约,实际只有 18%。会导致过度拒贷、利率定价偏高,损失好客户
  • 低估风险(蓝色,在对角线上方):模型说 25% 会违约,实际有 32%。会导致放贷过于激进,坏账超出预期

回到硬币的对照:硬币不需要校准,因为概率本来就是已知的、精确的。而风控模型的校准问题,本质上是因为概率是估计出来的,估计就可能有偏差。

风控模型的三个评估维度:AUC、KS 与 KL

校准只是模型评估的一个维度。完整地评价一个风控模型,通常要看三件事:排得准不准(AUC)、分得开不开(KS)、漂没漂(KL/PSI)。

AUC:排序能力

AUC(Area Under the ROC Curve)衡量的是模型的排序能力:把所有人按预测违约概率从高到低排,坏人是不是排在好人前面。

ROC 曲线的画法:

  • 横轴是假阳性率(FPR):好人里被错误标记为坏人的比例
  • 纵轴是真阳性率(TPR):坏人里被正确识别的比例
  • 每个分类阈值对应一个 (FPR, TPR) 点,连起来就是 ROC 曲线
00.51.000.51.0假阳性率 (FPR)真阳性率 (TPR)随机 (0.5)好模型 (0.85)差模型 (0.65)
  • 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 曲线之间的最大垂直距离

00.51.000.51.0模型分数累积比例KS好人 CDF坏人 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% 置信区间
10010.010[0, 0.030]
1,000100.0031[0.004, 0.016]
10,0001000.0010[0.008, 0.012]
100,0001,0000.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.36126.5%每 4 个人里可以容忍 1 个违约
24%0.24119.4%每 5 个人里可以容忍 1 个违约
12%0.12110.7%每 10 个人里只能容忍 1 个违约
6%0.0615.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决策价值每个预测连着决策

差异的根源只有一句话:

硬币是纯随机过程,不确定性不可约;违约是条件概率过程,不确定性可以被信息压缩。

信息论和概率统计不是两门独立的课。它们在"不确定性如何被度量、减少和利用"这个问题上,完全交织在一起。