调水温:一次调准很难,边试边调更常见
洗澡时水太冷,你不会先计算一个完美公式再调水龙头。更常见的做法是调一点、试一下,再继续修正。梯度下降和递归更新就是这种“边观察、边调整”的思想。
金融模型面对的是不断变化的数据。客户今天还款、明天经营、下个月行业变化,模型不能永远停留在第一次训练的状态。
模型现在的参数和误差
新样本告诉我们方向偏在哪里
沿着误差下降方向逐步修正
第三章
在线更新、数值稳定与过拟合控制
本章解释最小二乘闭式解在金融场景下的局限,系统介绍梯度下降、SGD、动量、Adam、递归最小二乘以及 LASSO、Ridge 和 Elastic Net。
本课件中的数学公式已在本地构建阶段预渲染为静态 HTML/MathML,并使用随站点发布的本地字体与 CSS;页面不加载浏览器端公式渲染脚本。
普通最小二乘的闭式解清晰优雅,但在大规模、高维、实时更新的金融场景中存在计算和稳定性问题。
洗澡时水太冷,你不会先计算一个完美公式再调水龙头。更常见的做法是调一点、试一下,再继续修正。梯度下降和递归更新就是这种“边观察、边调整”的思想。
金融模型面对的是不断变化的数据。客户今天还款、明天经营、下个月行业变化,模型不能永远停留在第一次训练的状态。
模型现在的参数和误差
新样本告诉我们方向偏在哪里
沿着误差下降方向逐步修正
一个学生为了记住训练题,把每道题答案都背下来,考试换题就不会了。过拟合也是这样:模型把历史样本里的偶然噪声当成规律。
正则化的作用像刹车:不让模型为了追求训练集完美而把参数调得过于极端。普惠金融中,稳健比漂亮的训练集分数更重要。
把噪声当规律
限制模型复杂度
换一批客户仍能保持效果
闭式解适合讲清楚原理,但不一定适合实时业务。金融数据不断进入,模型也需要能逐步更新。
线上小微信贷每天新增申请和还款记录,如果每次都从头训练模型,成本高且反应慢;递归更新能更快吸收新信息。
哪些金融场景必须在线更新?哪些场景可以定期离线重训?
梯度下降把参数估计看作目标函数最小化问题。SGD 每次使用一个或一小批样本更新,适合数据流和大规模训练。
SGD 的直觉是“每看到一条新样本,就把模型方向修正一点”。它不追求一步到位,而追求持续改进。
一个农户按月还款,系统每个月都能观察到新的还款行为。SGD 可以把这些新行为逐步纳入风险评分。
如果新数据中有异常值,SGD 为什么可能比批量训练更容易受冲击?
动量方法通过累积历史梯度方向减少震荡;Adam 进一步为不同参数设置自适应学习率。
动量像给优化方向加了惯性,Adam 像给每个参数配了自己的步伐。它们解决的是“怎么更稳、更快地走到较好解”。
在高维交易特征模型中,有些变量变化频繁,有些变量很稀疏。Adam 的自适应学习率能更灵活地处理这种不均衡。
优化器越复杂,模型一定越好吗?如何用验证集判断?
递归最小二乘直接更新参数估计和协方差矩阵,适合参数可能随时间缓慢变化的金融时间序列问题。
递归最小二乘特别适合“关系会慢慢变”的场景。遗忘因子就是告诉模型:近期数据是否应该更重要。
利率市场化后,客户对存款利率变化的反应可能变快。用遗忘因子可以让模型更重视近期行为,而不是被多年旧数据拖住。
遗忘因子设得太小或太大,分别会有什么风险?
正则化通过在损失函数中加入复杂度惩罚,牺牲少量训练集拟合能力,换取样本外稳定性。
正则化可以理解成给模型“降噪”和“收敛”。金融模型宁可少抓一点训练集细节,也要在未来样本上稳定。
如果一个信用评分模型用了几百个高度相似的交易变量,训练集效果可能很好,但换一个月份就失效。正则化能压制这种脆弱性。
为什么普惠金融模型更需要稳健,而不是只追求训练集准确率?
三类正则化回归对应不同的业务需求:变量筛选、稳定预测和相关特征组处理。
农户信用评分可以先用 LASSO 筛选关键特征,再使用 Ridge 或 Elastic Net 提升稳定性,并通过时间切分验证模型是否能跨期泛化。
LASSO 像筛选变量,Ridge 像把变量影响力压平,Elastic Net 适合“变量很多且互相关联”的中间情况。
农户信贷中,交易次数、交易金额、收款天数可能都反映经营活跃度。Elastic Net 比单纯 LASSO 更可能保留这一组相关变量。
如果要向学生或银行客户经理解释模型,变量少一点是否更有价值?
练习题建议用真实业务语言回答,不要只写公式。先说明业务场景,再说明变量、假设和可能的失败点。
例如“欺诈识别”的回答可以从低欺诈率、误报成本、人工审核资源和客户体验四个角度展开。
如果你的模型把很多正常客户误判为高风险,对普惠金融目标有什么影响?