MTH303 Linear Statistical Models
专题:偏差的推导 与 三种算法的手算迭代
Deviance for Logistic Regression, and Newton / Fisher /
IRLS by Hand
一个数据集,从
迭代到收敛
One dataset, iterated to convergence by three methods
:第 5 章讲义 ch5_main.pdf、补篇
supp_main.pdf
MTH303 Teaching Group
School
of Mathematics and Physics
XJTLU
:verify_iterations.py
这份讲义做什么 What this note
does
两个具体的请求,两份具体的答案:
偏差(deviance)在逻辑回归里怎么一步步推出来?
第 5 章只给了
,然后直接跳到
。中间那一步牵涉"饱和模型的
",
必须用极限处理——本讲义把它逐行写出来,并用一个六观测的数据集手算出
。
Newton–Raphson、Fisher scoring、IRLS
能不能手算到收敛? 能。本讲义用同一个逻辑回归数据集, 从
出发,把三种方法的第一步各算一遍(数字完全相同),再给出
到收敛的完整迭代表(5 步),最后用 probit 展示"非典则时
Newton 与 Fisher 会分道扬镳"。
数据集与记号 The dataset
and the notation
|
1 |
2 |
3 |
4 |
5 |
6 |
|
0 |
1 |
2 |
3 |
4 |
5 |
|
0 |
0 |
1 |
1 |
0 |
1 |
,单变量逻辑回归:,。
设计矩阵的两个基本量:
(这两个数在第 §3 节手算时会反复用到。)
记号与第 5
章一致:,,,
(有的书写
)是工作响应。
先给结论,好让手算有目标
拟合概率
,
并且可以当堂验算两条"典则不变量":
定义(复习)
两行
尺度化偏差:;偏差:。
二项与伯努利
,所以本节
。展开成逐观测的形式:
其中
是饱和模型(,每个观测一个参数)对应的自然参数。
逻辑回归里,饱和模型的
是
伯努利:,,。饱和模型取
,于是
不能直接把
代进 (见对应公式/小节)。正确做法是:先把
作为一个整体求极限,再相减。下面两步就是这件事。
六步推导(伯努利)
取
。用
:
所以
的观测在饱和模型下的贡献是
,不是
——两项的无穷大互相抵消了。
取
。此时
,而
:
第 3 步:把两个情形合并
两步合起来:
这个""就是常识:饱和模型把每个观测都解释得完美,所以它的对数似然是
(伯努利情形)。
第 4 步:拟合项
由
与
:
这正是单个观测的对数似然
。
第 5 步:相减
把 (见对应公式/小节) 与第 4 步代入 (见对应公式/小节):
右端就是
——因为饱和对数似然是
。
第 6 步:写成"逐点贡献"的形式(手算用这个)
式 (见对应公式/小节) 里每一项只取
或
,于是
这是手算最方便的形式:预测得越"自信地错",贡献越大。
与常见写法对照
教材常写
。它与
(见对应公式/小节) 完全等价:
而第一项在
时为
,于是回到
(见对应公式/小节)。保留
的写法是为了在
时不丢常数——见下一小节。
分组二项():那个
是怎么消失的
计数响应
时
,饱和值是
,对应的
只要
就是有限数;
或
时同样取极限(结论不变)。
第 1 步:饱和项
相减:
第 2 步:拟合项与相减
同理(把
换成
):
两式相减,
正好抵消:
数值抽检(
)
,。
用
核对:,
,两者之差乘
得
。
把这套公式用在我们的六观测数据上
用上节的
(),逐点算
,再求和。
|
|
|
|
贡献公式 |
|
| 1 |
0 |
0 |
0.15655105 |
|
0.34051180 |
| 2 |
1 |
0 |
0.26688782 |
|
0.62091308 |
| 3 |
2 |
1 |
0.41658131 |
|
1.75134725 |
| 4 |
3 |
1 |
0.58341869 |
|
1.07770036 |
| 5 |
4 |
0 |
0.73311218 |
|
2.64185375 |
| 6 |
5 |
1 |
0.84344895 |
|
0.34051180 |
| 合计 |
|
三个可以当堂讲的观察
(1) 第 5
个观测贡献最大():
时模型预测
,却观测到
——预测越自信地错,偏差越大。
(2) 第 1 与第 6
个观测贡献相同():因为设计对称()且
,模型给出
,于是
。
(3)
,其中偏差残差
。
的"平方和"结构就是这样来的。
两个常见错误
(1) 直接把
代进公式,得到
或
,从而误以为偏差发散。正确做法是先算
的整体极限(第 1、2 步)。
(2) 忘记
的抵消,在
时多出一项
。
三种算法:更新式与它们的关系
Three algorithms and how they relate
先写清楚三种方法各自"用什么、更新什么",然后才动手算。
三个更新式
把得分
在当前点线性化并令其为零:
好处:
不含
,只需一阶量(
与
),而且总正定。
IRLS:把它写成加权最小二乘
对逻辑回归,三者是同一个迭代
三行代数
逻辑回归(典则连接
):
二阶导里没有
,所以
——Newton
与 Fisher 的步长处处相同。 再把
写成
(因为
),就得到
IRLS 的式子。
| 方法 |
用哪个矩阵 |
一步的形式 |
在 logit 下 |
| Newton |
|
|
与 Fisher 完全相同 |
| Fisher |
|
|
同上 |
| IRLS |
、 |
|
同一个步的算法写法 |
这不等于"三种方法没区别"
它们只在典则连接下重合。换成
probit(§5),,Newton
与 Fisher 立刻分家——届时 Newton 6 步收敛,Fisher 要 14
步,极限相同。
手算第 1
步:三种方法各走一遍 Iteration 1 by hand, three ways
起点:
,于是
先算两个公共量:
与
得分:
因为
、、。
信息矩阵:
逆矩阵:
方法一:Newton–Raphson
两个分量正好是分数:,。
方法二:Fisher scoring
,与上一步同一个矩阵,所以
与 Newton 逐位相同。这不是巧合:逻辑回归的二阶导不含
。
方法三:IRLS(加权最小二乘)
工作响应:,即
加权右端:
(,。)于是
第 1 步的三个数字
三种方法给出同一组数——这正是 §2 的结论在具体数据上的体现。
迭代到收敛 Iterating to
convergence
第 2
步的中间量(想自己复算的话从这里开始)
用
算
,再算
:
|
1 |
2 |
3 |
4 |
5 |
6 |
|
0 |
1 |
2 |
3 |
4 |
5 |
|
|
|
|
|
|
|
|
0.19332 |
0.29794 |
0.42905 |
0.57095 |
0.70206 |
0.80668 |
|
0.15595 |
0.20917 |
0.24497 |
0.24497 |
0.20917 |
0.15595 |
|
|
|
|
|
|
|
由此
解出
。顺便注意这条式子里的
:因为
关于
对称、
成对互补(),每个迭代点都恰好有
。这是这组数据带来的便利;一般数据在未收敛时
。
完整迭代表
|
|
|
|
|
|
| 1 |
|
|
|
|
|
| 2 |
|
|
|
|
|
| 3 |
|
|
|
|
|
| 4 |
|
|
|
|
|
| 5 |
|
|
|
|
|
二次收敛,看得见
步长序列
,相邻比值是
比值本身在迅速变小——这正是二次收敛的样子(误差大致按平方缩小,有效数字每步翻倍)。所以逻辑回归"通常
4–5 步"是有道理的。
收敛后的三条验收
可以当堂核对
(1) 得分归零:
,即
(2) 典则不变量:
、。
(3) 偏差与似然:
,,且
(饱和似然为
)。
停止准则怎么写
三种都合法:(上表用的就是这个)、
、或
。
不要用"
不再变化"单独作判据:
在
附近是二阶平的,
看起来没变时
可能还差一点。
换成
probit:Newton 与 Fisher 分家 Probit: where the three methods part
company
同一份数据、同一个起点
,只把
logit 换成 probit。此时
(),
而观测信息多出一项(因为
):
于是
。
第 1 步仍然相同——原因很巧
在
处
、,而那一项的系数里含有
与
,两者同时为
,所以额外项恰好为零:
两种方法的第一步一模一样。差异从第 2 步开始。
|
Newton
|
Newton
|
Fisher
|
| 1 |
|
|
|
| 2 |
|
|
|
| 3 |
|
|
|
| 4 |
|
|
|
| 5 |
(已收敛) |
|
|
|
|
| 14 |
|
|
两条路径的三个结论
(1) 极限相同:
——同一似然,同一最大值。
(2) 速度不同: Newton 6 步,Fisher
14 步。Fisher 的
每步只缩小到约
倍(线性收敛),Newton 则近似平方缩小。
(3) 原因清楚:
,Fisher
用的是"平均曲率",在远离解时低估了曲率;Newton
用真实曲率,所以快。典则连接下两者相等,差异消失。
小结与检查清单 Summary
and a checklist
偏差:手算就用这两个式子
伯努利:
二项(计数):
两者都等于
;推导的关键是先算
的整体极限,而不是把
直接代进去。
三种算法:一句话各自是什么
Newton
用真实曲率;Fisher
用平均曲率;IRLS
把 Fisher 写成加权最小二乘。
典则连接(本讲义的
logit)下,三者逐位相同;非典则(probit、伽马配 log
等)下 Newton 与 Fisher 路径不同、极限相同,IRLS 只对应 Fisher。
六条检查清单
(1) 偏差公式里
时用
、
时用
,别写反。
(2)
时检查
有没有抵消。
(3) 典则模型收敛后验算
与
。
(4) 用
判停,不要只看
。
(5) 逻辑回归里 Newton 与 Fisher
的结果应当逐位相同;若不同,说明代码里某一处把
和
混了。
(6)
换非典则连接后若两者仍完全相同,反而要怀疑:是不是根本没把
用上。
:ch5_main.pdf(第 5
章)
supp_main.pdf(补篇)
links_main.pdf(链接专题)
This page was generated by DeepSeek 4.1 Flash from the course LaTeX source; the derivations and numerical steps are reproduced verbatim.
本页由 DeepSeek 4.1 Flash 依据课程 LaTeX 讲义生成,推导与数值迭代过程均按原讲义保留。