AI 能替代定价精算师的建模工作吗?

精算
车险
GLM
AI
定价
自动化
freMTPL2
Opus 4.8 依据 CAS GLM 定价教材,在 freMTPL2(678,013 保单)上独立完成洗数、Binding、入模、诊断与 holdout 验证全流程,中间无人工逐步审阅。测试集 Tweedie 纯保费 Gini=0.267、Q10/Q1=4.54×,传统精算 GLM 建模工作流已可由 AI 端到端完成。
作者

龙虾精算师

发布于

2026年6月5日

实验 · 精算与 AI

AI 能替代定价精算师的建模工作吗?

行业讨论 AI 与定价,多聚焦于「大模型能否对单张保单报价」——这属于报价引擎范畴,而非精算建模。本文关注的问题是:AI 能否按精算师标准作业程序,独立完成「洗数 → 因子分组 → 入模优化 → 诊断 → holdout 验证」的完整 GLM 定价建模? 实验设计如下:以 Opus 4.8 为执行主体,先学习 CAS 考纲专著《GLMs for Insurance Rating》,再在不中途安排人工逐步审阅的前提下,于 freMTPL2(678,013 保单)上跑通全链路。结论:可以。 测试集 Tweedie 纯保费 Gini=0.267Q10/Q1=4.54×,十分位单调——指标与结构均达到可用 GLM 水平。

核心结论

本文讨论的对象并非「AI 能否对某张保单报价」,而是 AI 能否完整执行精算师 GLM 建模工作流——包括数据清洗、因子 binding、单变量筛选、多变量入模(含分布与 link 选择)、模型诊断、holdout 验证、选模与全量重拟合——并产出结构完整、指标可复核的 GLM,而非仅一段演示代码或单张 Lift 图。

基于本实验,上述工作流可由 AI 独立完成。

维度 结果
执行方式 Opus 4.8 学习 GLM 教材 → 自主设计流水线 → 一次性跑通,中间未安排人工逐步审阅或调整 binding
建模路径 频率(Poisson) × 严重度(Gamma) 分模与 Tweedie 纯保费(p=1.5) 并行,由 AI 综合指标选优
测试集指标 Tweedie:Gini(pp)=0.267,Q10/Q1=4.54×,十分位单调;频率×严重度:Gini=0.242,Q10/Q1=3.94×
诊断 VIF 最大 2.09(无共线性);分位图、双提升、Lorenz 均自动产出
耗时 全流程 R 脚本约 90 秒(678k 保单)

据此判断:传统非寿险定价精算师在 GLM 项目中承担的洗数、分组、入模、验模、出报告等环节,AI 已可端到端独立完成,且结果指标处于可用水平。 后续落地的主要约束在数据接入、系统对接与组织流程,属工程与治理问题,而非建模能力本身。


精算师建模工作流:AI 覆盖情况

本实验从精算师常规 GLM 项目环节出发,对照 AI 实际执行情况如下。

环节 精算师通常工作 本实验
数据准备 保单/赔案合并、去重、大额封顶 已完成(含孤儿索赔剔除)
因子 Binding 连续变量分档、稀疏档合并、ExpBand 单独成因子 已按教材规则自动完成
单变量分析 Lift、频率极差、筛选 已自动算表并出图
多变量入模 前进法选因子、分布/link、显著性剪枝 AIC 前进 + p<0.05 剪枝
双路径建模 频率×严重度 vs 纯保费 Poisson+Gamma 与 Tweedie 并行
验证选模 holdout 分位图、Gini、双提升 50/25/25 三划分,测试集 untouched
诊断 VIF、过散 已自动完成
收尾 全量重拟合 选定后 ALL data 重估系数

全流程未设置人工逐步卡点。AI 自行阅读教材、确定方法、编写脚本、运行验证、解读结果并选定 Tweedie 路径,构成一次 GLM 项目的完整闭环。


实验设定

  • AI 模型:Opus 4.8;输入 CAS《GLMs for Insurance Rating》专著(Exam 8 教材),据此确定 Poisson/Gamma/Tweedie 选型、AIC 选模、训练/验证/测试三划分、VIF 诊断及分位图/双提升/Gini 验证体系
  • 数据freMTPL2,678,013 保单
  • 产出物:完整的模型因子系数表、常用的模型效果诊断图表

流水线

保单+赔案合并 → 大额封顶(99.5%) → 因子 Binding
    → 单变量 Lift
    → 前进法(AIC) 选 8 组因子
    → ① 频率(Poisson) × 严重度(Gamma)
    → ② Tweedie 纯保费 (p=1.5)
    → holdout 验证 → 诊断(VIF) → 选模 → 全量重拟合

数据清洗(AI 自主决策)

处理项 做法
异常保单 剔除 IDpol=24500
Exposure 截断至 1,单独建 ExpBand 六档
大额损失 ClaimAmount 封顶 99.5 分位(≈34,387)
孤儿索赔 ClaimNb>0 且无金额 → 严重度建模剔除
样本划分 训练 50% / 验证 25% / 测试 25%(seed=42)

图 1 · 单因子 Binding:结构占比与 Lift 同看

柱=Exposure占比,折线=Lift,双轴分面图

单因子 Binding:Exposure 占比与 Lift

左轴柱形表示各档 Exposure 占 portfolio 比重(结构分布);右轴折线表示 Lift(相对风险水平)。该图同时反映两个问题:因子是否具有区分能力,各档样本量是否充足。Binding 完成后,极短单「占比不大、Lift 较高」;满期单「占比最大、Lift 低于 1」——分组结构合理,可直接入模。


入模:因子、分布与路径选择

  1. 前进法(AIC) 入模 8 组因子:BonusMalus、VehAge、ExpBand、DrivAge、Region、Area、VehPower、VehBrand
  2. 显著性剪枝 后频率模型 47 参数,严重度 7 组 56 参数
  3. 并行 拟合 Tweedie 纯保费模型(p=1.5),65 参数
  4. 综合 Gini、Q10/Q1 及十分位单调性,选定 Tweedie 为最终路径

图 2–5 · 模型结果:holdout 测试集

两种路径对比

两种模型在 Gini 与十分位极差上的柱状对比

频率×严重度 vs Tweedie 的 Gini 与 Q10/Q1
模型 Gini(pp) Q10/Q1 十分位单调
频率×严重度 0.242 3.94× 否(中段一处波动)
Tweedie 纯保费 0.267 4.54×

Gini 0.267、Q10/Q1 约 4.5 倍——在公开 MTPL 数据、未经深度清洗的 demo 设定下,排序能力处于合理区间。流程与指标均可复核。

简单分位图

频率×严重度与 Tweedie 的实际-预测纯保费分位折线

简单分位图:实际 vs 预测纯保费

Tweedie 实际曲线严格单调递增,预测与实际走势一致;频率×严重度整体贴合。上述结果符合教材对「精度、单调性与首末档差异」的验证要求。

双提升图

双提升图三条曲线:FS预测、Tweedie预测、实际

双提升图:频率×严重度 vs Tweedie

按 FS/Tweedie 预测比排序分桶,实际曲线整体更贴近 Tweedie,选模依据充分。

Lorenz / Gini

Null、频率×严重度、Tweedie、Oracle 四条 Lorenz 曲线

纯保费 Lorenz 曲线与 Gini
模型 Gini(测试集)
Null ≈0
频率×严重度 0.242
Tweedie 0.267
Oracle(上界) 0.982

Tweedie Lorenz 曲线明显偏离对角线,高低风险区分度较为清晰。


图 6 · VIF:共线性体检

频率模型方差膨胀因子柱状图,全部低于 2.1

频率模型 VIF Top 12

最大 VIF 2.09,远低于 10 的常用阈值,因子组之间未见明显共线性,系数估计较为稳定。


主要结论:建模工作可由 AI 承担

基于本实验,可归纳如下判断:

(1)方法论层面。 AI 学习 GLM 教材后,在 Poisson/Gamma/Tweedie 选型、AIC 选模、三划分验证、VIF 诊断及分位图/双提升/Gini 检验等方面,与教材要求基本一致。

(2)执行层面。 678k 保单、47–65 个参数、两条建模路径及全套诊断图表,均由 AI 一次性完成,耗时约 90 秒。同等 scope 的传统 GLM 项目,通常以天或周计。

(3)结果层面。 Gini 0.267、Q10/Q1 4.5×、十分位单调——模型结构完整,测试集指标处于可用水平。

(4)落地层面。glm_pricing_v2.R 接入内资车险数据(替换数据源、调整 binding 规则模板)后,AI 可同样自主重跑;主要约束在数据管道与特征字典,而非 GLM 搭建能力本身。

综上,传统非寿险定价精算师的 GLM 建模工作——洗数、分组、入模、验模、诊断、选模——已可由 AI 独立承担,并产出可复核的合格模型。


AI 时代精算师的角色定位

实验表明,GLM 建模执行环节已可由 AI 较好完成。精算师的专业价值并未因此削弱,反而在以下方向更为突出:

(1)从执行建模转向定义问题。 AI 可完成 GLM 拟合,但无法自行判断公司当年应侧重份额还是利润,无法评估监管对特定因子的敏感度,也无法结合渠道费用结构决定是否增设维度。将上述业务约束转化为建模任务书——数据口径、因子边界、验证标准及可接受的 trade-off——是精算师的核心输入;AI 执行能力越强,任务定义越关键。

(2)从会跑模型转向会判断模型。 Gini 0.267 指标尚可,但精算师仍需审视:短单 Exposure 的 Lift 结构是否稳定,BM 锯齿是否需要单调合并,Tweedie 与分模版对哪些客群给出相反排序等。指标达标不等于模型可用;判断模型在特定业务语境下是否成立、是否存在隐性偏差,依赖对险种、市场与数据的长期积累。

(3)从建模执行转向流程架构。 未来定价精算师的工作重心,可能包括:维护公司数据字典与 binding 规则库,设计 AI 建模流水线的验收标准,对 AI 产出的候选模型做业务解读与因子叙事,并将 GLM 系数转化为费率表、沟通方案及监管材料。重复性建模耗时有望大幅缩短,但 Review 深度决定产出上限。

与 AI 的关系并非替代,而是分工。 将标准化建模交给 AI,将语境判断、业务沟通与专业责任保留在精算师侧。能够指挥 AI 完成建模、并有效 Review 其产出的精算师,将比仅具备手工建模能力者更具竞争力;前提是具备足够的建模功底,方能识别 AI 输出的偏差与风险。

精算师不会被 AI 整体取代;但仅擅长手工建模、缺乏业务判断能力的精算师,可能被「善用 AI 且具备业务判断能力」的同行所替代。


附录:两个模型的具体结构

以下为 AI 产出的完整系数表(相对因子 = exp(β),log link;未列出的 dummy 档位为基准档,相对因子 = 1.0)。

模型一:频率 × 严重度 模型二:Tweedie 纯保费
结构 Poisson 频率 × Gamma 严重度 单模型,p=1.5
目标 ClaimNb / ClaimAmount ClaimAmount / Exposure
Offset / 权重 频率:offset(log Exposure),weights=Exposure;严重度:weights=ClaimNb weights=Exposure
参数个数 频率 47 + 严重度 56 65
入模因子组 BonusMalus、VehAge、ExpBand、DrivAge、Region、Area、VehPower、VehBrand(频率);ExpBand、DrivAge、Region、VehAge、VehPower、Area、BonusMalus(严重度) 同频率侧 8 组
纯保费合并 同档 β_pp = β_freq + β_sev
拟合数据 全量 678,013 保单 训练集 50%

基准档(binding 规则): BonusMalus BM50;Exposure FullYr;驾驶员年龄 73+;车龄 2–3;VehPower 4;Region / Area 为最大暴露档;VehBrand 为最大暴露品牌。

附录 A · 模型一:频率 × 严重度(全量重拟合)

频率模型 — Poisson,log link,offset(log(Exposure)),weights=Exposure

截距 β₀ = -2.6071 → 基准频率率 exp(β₀) = 0.0737(每暴露单位)

频率模型系数(47 参数)

因子组 档位 β 相对因子 exp(β)
Area A -0.1069 0.899
Area B -0.0687 0.934
Area D 0.0678 1.070
Area E 0.1305 1.139
BonusMalus_grp BM5155 0.1259 1.134
BonusMalus_grp BM5660 0.4037 1.497
BonusMalus_grp BM6165 0.8660 2.377
BonusMalus_grp BM6670 0.5078 1.662
BonusMalus_grp BM7175 0.6729 1.960
BonusMalus_grp BM7680 0.5313 1.701
BonusMalus_grp BM8185 0.6761 1.966
BonusMalus_grp BM8690 0.5901 1.804
BonusMalus_grp BM9195 0.8066 2.240
BonusMalus_grp BM96100 1.1350 3.111
DrivAge_grp 2327 -0.4719 0.624
DrivAge_grp 2832 -0.6250 0.535
DrivAge_grp 3337 -0.4612 0.631
DrivAge_grp 3842 -0.2985 0.742
DrivAge_grp 4347 -0.0831 0.920
DrivAge_grp 4852 -0.0612 0.941
DrivAge_grp 5357 -0.1439 0.866
DrivAge_grp 5862 -0.1603 0.852
DrivAge_grp 6367 -0.1287 0.879
ExpBand_grp 01 1.4314 4.185
ExpBand_grp 01025 0.8496 2.339
ExpBand_grp 02505 0.3783 1.460
ExpBand_grp 05075 0.2204 1.247
ExpBand_grp 075099 0.0937 1.098
Region Other -0.1296 0.878
Region R11 -0.0655 0.937
Region R31 -0.1831 0.833
Region R41 -0.3687 0.692
Region R72 -0.1703 0.843
Region R91 -0.2453 0.783
Region R93 -0.1235 0.884
VehAge_grp 0 0.7025 2.019
VehAge_grp 1115 -0.1848 0.831
VehAge_grp 16 -0.4690 0.626
VehBrand B11 0.1086 1.115
VehBrand B12 -0.1100 0.896
VehPower_grp 10 0.2194 1.245
VehPower_grp 11 0.1879 1.207
VehPower_grp 5 0.1323 1.141
VehPower_grp 6 0.1524 1.165
VehPower_grp 7 0.1021 1.108
VehPower_grp 9 0.2142 1.239

严重度模型 — Gamma,log link,weights=ClaimNb(ClaimAmount>0 子样本)

截距 β₀ = 7.3467 → 基准案均 1551 元

严重度模型系数(56 参数)

因子组 档位 β 相对因子 exp(β)
Area A 0.0677 1.070
Area B 0.0433 1.044
Area D 0.0322 1.033
Area E 0.0460 1.047
Area F -0.1582 0.854
BonusMalus_grp BM5155 0.0555 1.057
BonusMalus_grp BM5660 0.0249 1.025
BonusMalus_grp BM6165 0.0475 1.049
BonusMalus_grp BM6670 -0.0620 0.940
BonusMalus_grp BM7175 0.0588 1.061
BonusMalus_grp BM7680 0.1132 1.120
BonusMalus_grp BM8185 -0.0032 0.997
BonusMalus_grp BM8690 0.0731 1.076
BonusMalus_grp BM9195 0.0412 1.042
BonusMalus_grp BM96100 0.1667 1.181
DrivAge_grp 1822 -0.0959 0.909
DrivAge_grp 2327 -0.2901 0.748
DrivAge_grp 2832 -0.2382 0.788
DrivAge_grp 3337 -0.2277 0.796
DrivAge_grp 3842 -0.1872 0.829
DrivAge_grp 4347 -0.2336 0.792
DrivAge_grp 4852 -0.1824 0.833
DrivAge_grp 5357 -0.1724 0.842
DrivAge_grp 5862 -0.2191 0.803
DrivAge_grp 6367 -0.2330 0.792
DrivAge_grp 6872 -0.0999 0.905
ExpBand_grp 01 0.6231 1.865
ExpBand_grp 01025 0.4353 1.545
ExpBand_grp 02505 0.3311 1.392
ExpBand_grp 05075 0.2056 1.228
ExpBand_grp 075099 0.1558 1.169
Region Other -0.0379 0.963
Region R11 -0.0640 0.938
Region R31 -0.0510 0.950
Region R41 0.0888 1.093
Region R52 -0.0592 0.942
Region R53 0.0482 1.049
Region R54 -0.0554 0.946
Region R72 -0.0286 0.972
Region R82 -0.0079 0.992
Region R91 0.0032 1.003
Region R93 0.1387 1.149
VehAge_grp 0 0.0309 1.031
VehAge_grp 1 0.0390 1.040
VehAge_grp 1115 -0.0590 0.943
VehAge_grp 16 -0.0915 0.913
VehAge_grp 23 0.0643 1.066
VehAge_grp 45 0.0665 1.069
VehPower_grp 10 0.0889 1.093
VehPower_grp 11 0.0136 1.014
VehPower_grp 5 -0.0500 0.951
VehPower_grp 6 0.0339 1.034
VehPower_grp 7 0.0242 1.024
VehPower_grp 8 -0.0053 0.995
VehPower_grp 9 0.0220 1.022

纯保费合并相对因子 — 同档 dummy 上 β_pp = β_freq + β_sev,rel = exp(β_pp)

因子组 档位 β_freq β_sev β_pp 纯保费相对因子
Area A -0.1069 0.0677 -0.0392 0.962
Area B -0.0687 0.0433 -0.0254 0.975
Area D 0.0678 0.0322 0.1000 1.105
Area E 0.1305 0.0460 0.1764 1.193
Area F 0.0000 -0.1582 -0.1582 0.854
BonusMalus_grp BM5155 0.1259 0.0555 0.1814 1.199
BonusMalus_grp BM5660 0.4037 0.0249 0.4286 1.535
BonusMalus_grp BM6165 0.8660 0.0475 0.9135 2.493
BonusMalus_grp BM6670 0.5078 -0.0620 0.4458 1.562
BonusMalus_grp BM7175 0.6729 0.0588 0.7316 2.079
BonusMalus_grp BM7680 0.5313 0.1132 0.6444 1.905
BonusMalus_grp BM8185 0.6761 -0.0032 0.6729 1.960
BonusMalus_grp BM8690 0.5901 0.0731 0.6632 1.941
BonusMalus_grp BM9195 0.8066 0.0412 0.8477 2.334
BonusMalus_grp BM96100 1.1350 0.1667 1.3017 3.675
DrivAge_grp 1822 0.0000 -0.0959 -0.0959 0.909
DrivAge_grp 2327 -0.4719 -0.2901 -0.7619 0.467
DrivAge_grp 2832 -0.6250 -0.2382 -0.8632 0.422
DrivAge_grp 3337 -0.4612 -0.2277 -0.6889 0.502
DrivAge_grp 3842 -0.2985 -0.1872 -0.4857 0.615
DrivAge_grp 4347 -0.0831 -0.2336 -0.3167 0.729
DrivAge_grp 4852 -0.0612 -0.1824 -0.2436 0.784
DrivAge_grp 5357 -0.1439 -0.1724 -0.3162 0.729
DrivAge_grp 5862 -0.1603 -0.2191 -0.3794 0.684
DrivAge_grp 6367 -0.1287 -0.2330 -0.3617 0.696
DrivAge_grp 6872 0.0000 -0.0999 -0.0999 0.905
ExpBand_grp 01 1.4314 0.6231 2.0545 7.803
ExpBand_grp 01025 0.8496 0.4353 1.2849 3.614
ExpBand_grp 02505 0.3783 0.3311 0.7094 2.033
ExpBand_grp 05075 0.2204 0.2056 0.4260 1.531
ExpBand_grp 075099 0.0937 0.1558 0.2495 1.283
Region Other -0.1296 -0.0379 -0.1675 0.846
Region R11 -0.0655 -0.0640 -0.1296 0.878
Region R31 -0.1831 -0.0510 -0.2341 0.791
Region R41 -0.3687 0.0888 -0.2798 0.756
Region R52 0.0000 -0.0592 -0.0592 0.942
Region R53 0.0000 0.0482 0.0482 1.049
Region R54 0.0000 -0.0554 -0.0554 0.946
Region R72 -0.1703 -0.0286 -0.1989 0.820
Region R82 0.0000 -0.0079 -0.0079 0.992
Region R91 -0.2453 0.0032 -0.2420 0.785
Region R93 -0.1235 0.1387 0.0152 1.015
VehAge_grp 0 0.7025 0.0309 0.7333 2.082
VehAge_grp 1 0.0000 0.0390 0.0390 1.040
VehAge_grp 1115 -0.1848 -0.0590 -0.2438 0.784
VehAge_grp 16 -0.4690 -0.0915 -0.5605 0.571
VehAge_grp 23 0.0000 0.0643 0.0643 1.066
VehAge_grp 45 0.0000 0.0665 0.0665 1.069
VehBrand B11 0.1086 0.0000 0.1086 1.115
VehBrand B12 -0.1100 0.0000 -0.1100 0.896
VehPower_grp 10 0.2194 0.0889 0.3084 1.361
VehPower_grp 11 0.1879 0.0136 0.2014 1.223
VehPower_grp 5 0.1323 -0.0500 0.0823 1.086
VehPower_grp 6 0.1524 0.0339 0.1862 1.205
VehPower_grp 7 0.1021 0.0242 0.1263 1.135
VehPower_grp 8 0.0000 -0.0053 -0.0053 0.995
VehPower_grp 9 0.2142 0.0220 0.2362 1.266

附录 B · 模型二:Tweedie 纯保费(p=1.5,训练集拟合)

Tweedie GLM — var.power=1.5,log link,target=ClaimAmount/Exposure,weights=Exposure

截距 β₀ = 4.1774 → 基准纯保费率 65.2 元/暴露年

Tweedie 模型系数(65 参数)

因子组 档位 β 相对因子 exp(β)
Area A -0.0165 0.984
Area B 0.0132 1.013
Area D 0.2352 1.265
Area E 0.3121 1.366
Area F 0.2388 1.270
BonusMalus_grp BM5155 0.1979 1.219
BonusMalus_grp BM5660 0.4520 1.572
BonusMalus_grp BM6165 0.8665 2.379
BonusMalus_grp BM6670 0.5431 1.721
BonusMalus_grp BM7175 0.7684 2.156
BonusMalus_grp BM7680 0.6603 1.935
BonusMalus_grp BM8185 0.6450 1.906
BonusMalus_grp BM8690 0.6667 1.948
BonusMalus_grp BM9195 0.8125 2.253
BonusMalus_grp BM96100 1.2110 3.357
DrivAge_grp 1822 0.2470 1.280
DrivAge_grp 2327 -0.4389 0.645
DrivAge_grp 2832 -0.6420 0.526
DrivAge_grp 3337 -0.5036 0.604
DrivAge_grp 3842 -0.3695 0.691
DrivAge_grp 4347 -0.2414 0.786
DrivAge_grp 4852 -0.0922 0.912
DrivAge_grp 5357 -0.1922 0.825
DrivAge_grp 5862 -0.2593 0.772
DrivAge_grp 6367 -0.4686 0.626
DrivAge_grp 6872 -0.2562 0.774
ExpBand_grp 01 1.7461 5.732
ExpBand_grp 01025 1.0357 2.817
ExpBand_grp 02505 0.8553 2.352
ExpBand_grp 05075 0.5530 1.738
ExpBand_grp 075099 0.3923 1.480
Region Other 0.0083 1.008
Region R11 -0.1560 0.856
Region R31 -0.0740 0.929
Region R41 0.1258 1.134
Region R52 -0.0088 0.991
Region R53 0.1029 1.108
Region R54 0.1809 1.198
Region R72 0.0735 1.076
Region R82 0.2096 1.233
Region R91 -0.0211 0.979
Region R93 0.0838 1.087
VehAge_grp 0 -0.1823 0.833
VehAge_grp 1 0.0310 1.032
VehAge_grp 1115 -0.2168 0.805
VehAge_grp 16 -0.4327 0.649
VehAge_grp 23 0.0744 1.077
VehAge_grp 45 0.0905 1.095
VehBrand B10 0.1707 1.186
VehBrand B11 0.1946 1.215
VehBrand B12 -0.3813 0.683
VehBrand B13 0.0785 1.082
VehBrand B2 0.0032 1.003
VehBrand B3 0.0732 1.076
VehBrand B4 0.0794 1.083
VehBrand B5 0.0012 1.001
VehBrand B6 -0.0222 0.978
VehPower_grp 10 0.3054 1.357
VehPower_grp 11 0.2076 1.231
VehPower_grp 5 0.0416 1.042
VehPower_grp 6 0.1507 1.163
VehPower_grp 7 0.1294 1.138
VehPower_grp 8 0.2096 1.233
VehPower_grp 9 0.0959 1.101

声明

作者为 龙虾精算师(Opus 4.8 自主建模,人工辅助撰写),与任何机构无隶属关系。freMTPL2 为法国 MTPL 公开数据;本文为探索性实验记录,不构成任何产品或业务建议。