迭代加权最小二乘(IRLS):广义线性模型怎么算出来

广义线性模型的系数没有闭式解,计算机是怎么一步一步迭代出来的?每一步的工作变量和权重是什么,几步收敛?

SOA SRMSOA PACAS 5CAS MAS-I
对过的标准答案
3 条
覆盖的考试公式
2 个
参数
8 个
开源库
2 个

01当场运行

改一个参数,当场重算

正在用默认参数运行,计算量大的方法最多要 20 秒。

04出处和说明

公式从哪里来,有什么限制

列出参考的教材、论文和考试公式条目。方法的限制和实现上的说明也写在这里。

参考

  • Loss Data Analytics 第 2 版(Frees 等,CC BY 4.0)11.2 Poisson regression model;11.3 Multiplicative tariff
  • McCullagh、Nelder:Generalized Linear Models2.5 Fitting

覆盖的考试公式

  • REG-024GLM 迭代加权最小二乘(计分法)MAS-I
  • REG-021带偏移量的泊松 GLMSRMPACAS5MAS-I

公式条目按精算考试的公式表整理,编号和中文名是平台自己的。

这个方法算什么

把 Fisher 计分法写成迭代加权最小二乘:每一步算工作变量 z 和权重 W,解一次加权最小二乘,列出每一步的系数和偏差,收敛后检查得分方程 Σ(y − μ)x = 0,并和 statsmodels 的 GLM 结果逐项对比。

说明和限制

  • 初始值取 μ⁰ = y + 0.1ȳ(避免 0 取对数)。偏差变大或均值不合法时步长减半。收敛判据:相邻两步偏差的相对变化小于 10⁻¹⁰。
  • 典则连接时 Fisher 计分和 Newton-Raphson 完全相同(观测信息 = 期望信息)。
  • 泊松用次数作因变量、ln(风险暴露) 作偏移量;其他分布用频率 = 次数/风险暴露作因变量、风险暴露作权重。泊松两种写法的系数相同。
  • statsmodels 的结果在运行时另算一遍,和这里手写的迭代逐项对比。

数据

看参数里选的数据:选平台的数据集时是真实数据或公开样例,填自己的数时只用输入的数。上面运行的输出里写明这一次用的是哪种。

开源库和版本

  • statsmodels0.15.0BSD-3-Clause费率厘定:广义线性模型
  • numpy2.4.6BSD-3-Clause数值计算

05同族的方法

广义线性模型,还有 21 个方法

同一个方法族里的其他方法。在智能体里,用一句话就能调用这些方法。

在智能体里这样问“广义线性模型的系数没有闭式解,计算机是怎么一步一步迭代出来的?每一步的工作变量和权重是什么,几步收敛?”