AI在金融中的应用Courseware

第二章

熵和集成算法

不确定性度量、信息增益与模型融合

本章从信息熵、交叉熵、KL 散度、JS 散度和互信息出发,解释决策树、随机森林、Boosting 与反欺诈模型融合的理论基础。

本课件中的数学公式已在本地构建阶段预渲染为静态 HTML/MathML,并使用随站点发布的本地字体与 CSS;页面不加载浏览器端公式渲染脚本。

01

信息熵基础

熵衡量概率分布的不确定性。分布越平均,不确定性越高;分布越集中,不确定性越低。

天气预报为什么有信息量

如果天气预报说“明天可能晴、可能雨、可能阴”,你其实没有得到多少有用信息,因为不确定性还是很高。若预报说“明天 90% 会下雨”,你就会带伞,因为不确定性明显下降。

熵衡量的正是这种不确定性。金融模型也是一样:如果模型对某类客户总是拿不准,那么这类客户的信息熵就高;如果加入某些变量后风险判断变清楚,说明这些变量提供了信息。

高熵

各种结果都差不多可能,难以下判断

低熵

概率集中,判断更明确

信息增益

新证据让不确定性下降

为什么要听多个模型的意见

如果你买一部手机,只听一个人的建议可能有偏差;多看几位熟人的意见、专业评测和用户评论,结论通常更稳。集成学习也是这个思路。

随机森林像让很多棵树分别判断再投票,Boosting 像一组老师轮流批改错题,后一个模型重点处理前一个模型没看好的样本。

单模型

一个判断,容易受样本偶然性影响

Bagging

多个模型独立判断后投票

Boosting

后续模型重点纠正前面模型的错误

H(X)=−∑i=1npilog⁡piH(X)=-\sum_{i=1}^{n}p_i\log p_i
  • 在信用风险中,如果某类客户的违约与不违约概率接近,模型面对该客户群的不确定性较高。
  • 在市场预测中,熵可以衡量价格方向预测分布是否集中。如果上涨、下跌、震荡三个状态概率相近,交易决策应更保守。
  • 连续变量的微分熵写作 h(X)=−∫f(x)log⁡f(x) dxh(X)=-\int f(x)\log f(x)\,dx,但它与离散熵的解释并不完全相同,不能简单比较绝对值。
怎么理解

熵可以理解成“拿到这个信息之前,我有多拿不准”。如果一个客户群体违约和不违约几乎各占一半,模型就很难下判断。

普惠金融例子

某乡镇商户在旺季和淡季现金流差异很大。若模型不区分季节,风险分布会显得很混乱;加入季节变量后,熵可能明显下降。

课堂追问

一个变量让风险分布更清晰,是否一定说明它可以用于授信决策?还需要检查什么?

02

交叉熵与分类损失

交叉熵衡量真实分布与预测分布之间的距离,是分类模型中最常用的损失函数之一。

H(p,q)=−∑i=1npilog⁡qiH(p,q)=-\sum_{i=1}^{n}p_i\log q_i
  • 在二分类违约预测中,交叉熵可写为 −[ylog⁡y^+(1−y)log⁡(1−y^)]-[y\log \hat y+(1-y)\log(1-\hat y)]。模型对真实类别越自信,损失越小;对真实类别给出极低概率时,损失会迅速放大。
  • 交叉熵比简单错误率更适合训练概率模型,因为它不仅关心分类是否正确,也关心预测概率是否校准。
  • 金融风控报告中应同时观察 AUC、KS、Brier score 与概率校准曲线,避免只看准确率。
怎么理解

交叉熵惩罚“自信地犯错”。在金融中,自信地把高风险客户判成低风险,比不确定地判断更危险。

普惠金融例子

如果模型对某小微企业给出 0.02 的违约概率,但后来违约,交叉熵损失会很大。这提醒我们要关注概率校准,而不是只看分类对错。

课堂追问

为什么风控模型需要概率校准,而不能只输出“通过/拒绝”?

03

KL 散度、JS 散度与分布漂移

金融数据会随宏观周期、监管政策和平台行为变化而发生分布漂移。散度指标可以帮助识别模型何时失效。

DKL(P∥Q)=∑ipilog⁡piqiD_{KL}(P\Vert Q)=\sum_i p_i\log\frac{p_i}{q_i}
  • KL 散度不对称,即 DKL(P∥Q)≠DKL(Q∥P)D_{KL}(P\Vert Q)\neq D_{KL}(Q\Vert P)。因此解释时要明确谁是基准分布,谁是当前分布。
  • JS 散度通过中间分布 M=12(P+Q)M=\frac{1}{2}(P+Q) 对称化:DJS(P,Q)=12DKL(P∥M)+12DKL(Q∥M)D_{JS}(P,Q)=\frac{1}{2}D_{KL}(P\Vert M)+\frac{1}{2}D_{KL}(Q\Vert M)。
  • 在反欺诈系统中,如果近期交易金额、时间分布或设备指纹分布与训练期显著不同,应触发模型重训或策略复核。
怎么理解

分布漂移就是“今天的客户已经不像训练模型时的客户”。金融场景中,这种变化经常由政策、平台规则或宏观周期触发。

普惠金融例子

如果某地电商平台补贴结束,小微商户流水结构会变化。模型仍按补贴期数据判断,可能低估真实风险。JS 散度可以作为预警指标。

课堂追问

模型上线后,应该按月监控哪些变量的分布变化?

04

互信息与特征选择

互信息衡量一个变量对另一个变量不确定性的减少程度。它能捕捉非线性依赖,是金融特征筛选的重要工具。

I(X;Y)=H(Y)−H(Y∣X)=∑x,yp(x,y)log⁡p(x,y)p(x)p(y)I(X;Y)=H(Y)-H(Y\mid X)=\sum_{x,y}p(x,y)\log\frac{p(x,y)}{p(x)p(y)}
  • 互信息高说明某个变量对目标变量有信息贡献,但不等于因果关系成立。
  • 与相关系数相比,互信息能识别非线性关系。例如交易频率与违约风险可能呈 U 型关系,线性相关系数会低估其价值。
  • 在金融建模中,可先用互信息筛选候选变量,再结合经济含义、稳定性检验和模型解释方法进行保留。
怎么理解

互信息回答的是“这个变量能减少多少不确定性”,不是“这个变量是否有因果作用”。

普惠金融例子

手机充值频率可能与收入稳定性有关,因此对信用风险有信息量。但它未必是违约的原因,直接用于拒贷时要谨慎。

课堂追问

一个变量预测能力很强,但解释上可能涉及隐私或歧视,应如何处理?

05

决策树中的熵应用

决策树通过不断寻找能够最大幅度降低不确定性的划分变量来建立规则。

Gain(S,A)=H(S)−∑v∈Values(A)∣Sv∣∣S∣H(Sv)Gain(S,A)=H(S)-\sum_{v\in Values(A)}\frac{|S_v|}{|S|}H(S_v)
  • ID3 使用信息增益,C4.5 使用信息增益率,CART 常使用基尼不纯度。三者目标相近,都是为了找到更纯的子节点。
  • 基尼不纯度为 Gini(S)=1−∑k=1Kpk2Gini(S)=1-\sum_{k=1}^{K}p_k^2,计算简单,常用于 CART 和随机森林。
  • 在信贷审批中,树模型生成的分裂规则容易被业务部门理解,但单棵树方差较高,因此需要集成学习提升稳定性。
怎么理解

决策树的每一次分裂都像在问一个业务问题:先看哪个信息,最能把风险高低分开?

普惠金融例子

在小额经营贷中,第一层分裂可能是“近三个月流水是否明显下降”,第二层再看“是否有连续逾期记录”。这比直接给一个黑箱分数更容易沟通。

课堂追问

树模型规则越细越好吗?过细的规则可能带来什么问题?

06

Bagging、随机森林与 Boosting

集成学习通过组合多个弱学习器降低方差或偏差。Bagging 侧重降低方差,Boosting 侧重逐步修正偏差。

f^bag(x)=1B∑b=1Bf^b(x)\hat f_{bag}(x)=\frac{1}{B}\sum_{b=1}^{B}\hat f_b(x)
  • Bagging 使用 Bootstrap 重采样训练多个模型,再平均或投票。随机森林进一步在每个节点随机抽取候选特征,降低树之间的相关性。
  • Boosting 使用加法模型 FM(x)=∑m=1Mηfm(x)F_M(x)=\sum_{m=1}^{M}\eta f_m(x),每一轮重点拟合前一轮的残差或负梯度。
  • XGBoost 强调二阶梯度、正则化和稀疏感知;LightGBM 通过直方图和叶子优先生长提升大规模数据效率。
金融应用提示

在小额贷款违约预测中,随机森林可作为稳健基准,梯度提升模型可进一步提升非线性识别能力,但必须配合样本外验证和模型解释。

怎么理解

可以把 Bagging 理解成“多人独立判断后投票”,Boosting 理解成“下一位专家重点纠正上一位专家看错的样本”。

普惠金融例子

普惠金融客户数据噪声大,随机森林能降低单棵树对偶然样本的敏感性;Boosting 往往预测更强,但更需要防止过拟合。

课堂追问

如果业务部门要求稳定、透明、容易解释,你会优先选择哪类集成模型?

07

反欺诈中的模型融合

  • 欺诈样本稀少且策略快速变化,应结合监督模型、异常检测、规则引擎和人工复核队列。
  • Isolation Forest 适合发现少数异常点,但不能直接等同于欺诈标签。异常只是风险线索,需要结合业务证据。
  • 高级融合策略包括加权投票、Stacking、分层模型和成本敏感学习。关键是把误报成本、漏报成本和审核资源纳入目标函数。
怎么理解

反欺诈不要指望一个模型解决全部问题。更实际的架构是规则、异常检测、监督模型和人工审核共同工作。

普惠金融例子

某账户突然在夜间出现多笔异地小额转账,异常检测会报警;但是否欺诈还要结合设备、关系网络和客户确认结果。

课堂追问

为什么异常不等于欺诈?误把异常都当欺诈会产生什么后果?