蘭州網(wǎng)站建設(shè)多少錢河南做網(wǎng)站優(yōu)化
Fisher信息矩陣與Hessian矩陣:區(qū)別與聯(lián)系全解析
在統(tǒng)計(jì)學(xué)和機(jī)器學(xué)習(xí)中,Fisher信息矩陣(FIM)和Hessian矩陣是兩個(gè)經(jīng)常出現(xiàn)的概念,它們都與“二階信息”有關(guān),常用來(lái)描述函數(shù)的曲率或參數(shù)的敏感性。你可能聽(tīng)說(shuō)過(guò),Fisher信息矩陣可以定義為對(duì)數(shù)似然函數(shù)二階導(dǎo)數(shù)的負(fù)期望值,看起來(lái)很像Hessian矩陣的某種形式。那么,這兩者到底有什么區(qū)別,又有哪些聯(lián)系呢?今天我們就來(lái)一探究竟。
Fisher信息矩陣是什么?
Fisher信息矩陣是統(tǒng)計(jì)學(xué)中的一個(gè)核心工具,用來(lái)衡量概率分布 ( p ( x ∣ θ ) p(x|\theta) p(x∣θ) ) 中包含的參數(shù) ( θ \theta θ ) 的信息量。它有兩種等價(jià)定義:
-
基于得分函數(shù)(Score Function):
I ( θ ) i j = E [ ? log ? p ( x ∣ θ ) ? θ i ? log ? p ( x ∣ θ ) ? θ j ∣ θ ] I(\theta)_{ij} = E\left[ \frac{\partial \log p(x|\theta)}{\partial \theta_i} \frac{\partial \log p(x|\theta)}{\partial \theta_j} \bigg| \theta \right] I(θ)ij?=E[?θi??logp(x∣θ)??θj??logp(x∣θ)? ?θ]
這是得分函數(shù)的協(xié)方差,反映了參數(shù)變化引起的似然波動(dòng)。 -
基于二階導(dǎo)數(shù):
I ( θ ) i j = ? E [ ? 2 log ? p ( x ∣ θ ) ? θ i ? θ j ∣ θ ] I(\theta)_{ij} = -E\left[ \frac{\partial^2 \log p(x|\theta)}{\partial \theta_i \partial \theta_j} \bigg| \theta \right] I(θ)ij?=?E[?θi??θj??2logp(x∣θ)? ?θ]
這是對(duì)數(shù)似然函數(shù)二階偏導(dǎo)數(shù)的負(fù)期望值。
這兩種定義在正則條件下(比如可微性和積分交換性)是等價(jià)的,我們稍后會(huì)證明。
通俗理解
Fisher信息矩陣像一個(gè)“信息探測(cè)器”,告訴你通過(guò)數(shù)據(jù)能了解多少關(guān)于 ( θ \theta θ ) 的知識(shí)。它是期望值,代表分布的平均特性。
Hessian矩陣是什么?
Hessian矩陣則是一個(gè)更廣義的概念,出現(xiàn)在數(shù)學(xué)和優(yōu)化領(lǐng)域。對(duì)于任意函數(shù) ( f ( θ ) f(\theta) f(θ) ),Hessian矩陣 ( H ( θ ) H(\theta) H(θ) ) 定義為:
H ( θ ) i j = ? 2 f ( θ ) ? θ i ? θ j H(\theta)_{ij} = \frac{\partial^2 f(\theta)}{\partial \theta_i \partial \theta_j} H(θ)ij?=?θi??θj??2f(θ)?
在統(tǒng)計(jì)學(xué)或機(jī)器學(xué)習(xí)中,如果 ( f ( θ ) = ? log ? p ( x ∣ θ ) f(\theta) = -\log p(x|\theta) f(θ)=?logp(x∣θ) )(負(fù)對(duì)數(shù)似然,作為損失函數(shù)),Hessian就是:
H ( θ ) i j = ? ? 2 log ? p ( x ∣ θ ) ? θ i ? θ j H(\theta)_{ij} = -\frac{\partial^2 \log p(x|\theta)}{\partial \theta_i \partial \theta_j} H(θ)ij?=??θi??θj??2logp(x∣θ)?
注意,這里的Hessian是一個(gè)具體的數(shù)據(jù)函數(shù),依賴于觀測(cè)值 ( x x x )。
通俗理解
Hessian矩陣像一張“曲率地圖”,告訴你函數(shù)在某一點(diǎn)的凹凸性或變化速度。在優(yōu)化中(如牛頓法),它直接用來(lái)調(diào)整步長(zhǎng)。
Fisher信息矩陣與Hessian的聯(lián)系
從定義上看,Fisher信息矩陣和Hessian矩陣似乎很像,尤其是Fisher的二階導(dǎo)數(shù)定義:
I ( θ ) i j = ? E [ ? 2 log ? p ( x ∣ θ ) ? θ i ? θ j ∣ θ ] I(\theta)_{ij} = -E\left[ \frac{\partial^2 \log p(x|\theta)}{\partial \theta_i \partial \theta_j} \bigg| \theta \right] I(θ)ij?=?E[?θi??θj??2logp(x∣θ)? ?θ]
而Hessian是:
H ( θ ) i j = ? ? 2 log ? p ( x ∣ θ ) ? θ i ? θ j H(\theta)_{ij} = -\frac{\partial^2 \log p(x|\theta)}{\partial \theta_i \partial \theta_j} H(θ)ij?=??θi??θj??2logp(x∣θ)?
它們的聯(lián)系顯而易見(jiàn):Fisher信息矩陣是Hessian矩陣在真實(shí)參數(shù) ( θ \theta θ ) 下的期望值。換句話說(shuō),Fisher取了Hessian的平均,抹去了單個(gè)數(shù)據(jù)的隨機(jī)性,反映了分布的整體特性。
證明兩種定義的等價(jià)性
為什么 ( I ( θ ) i j = E [ s i s j ] = ? E [ ? 2 log ? p ? θ i ? θ j ] I(\theta)_{ij} = E\left[ s_i s_j \right] = -E\left[ \frac{\partial^2 \log p}{\partial \theta_i \partial \theta_j} \right] I(θ)ij?=E[si?sj?]=?E[?θi??θj??2logp?] )?我們來(lái)推導(dǎo)一下:
得分函數(shù) ( s i = ? log ? p ? θ i s_i = \frac{\partial \log p}{\partial \theta_i} si?=?θi??logp? ),其二階導(dǎo)數(shù)為:
? s i ? θ j = ? 2 log ? p ? θ i ? θ j \frac{\partial s_i}{\partial \theta_j} = \frac{\partial^2 \log p}{\partial \theta_i \partial \theta_j} ?θj??si??=?θi??θj??2logp?
計(jì)算得分函數(shù)的協(xié)方差:
I ( θ ) i j = E [ s i s j ] I(\theta)_{ij} = E[s_i s_j] I(θ)ij?=E[si?sj?]
考慮 ( E [ s i ] = 0 E[s_i] = 0 E[si?]=0 )(得分函數(shù)期望為零,請(qǐng)參考筆者的另一篇博客:統(tǒng)計(jì)學(xué)中的得分函數(shù)(Score Function)是什么?它和Fisher信息矩陣有什么關(guān)系?),我們對(duì) ( s i s_i si? ) 求偏導(dǎo)的期望:
E [ ? s i ? θ j ] = E [ ? 2 log ? p ? θ i ? θ j ] E\left[ \frac{\partial s_i}{\partial \theta_j} \right] = E\left[ \frac{\partial^2 \log p}{\partial \theta_i \partial \theta_j} \right] E[?θj??si??]=E[?θi??θj??2logp?]
另一方面:
? s i ? θ j = ? ? θ j ( 1 p ? p ? θ i ) = ? 1 p 2 ? p ? θ j ? p ? θ i + 1 p ? 2 p ? θ i ? θ j \frac{\partial s_i}{\partial \theta_j} = \frac{\partial}{\partial \theta_j} \left( \frac{1}{p} \frac{\partial p}{\partial \theta_i} \right) = -\frac{1}{p^2} \frac{\partial p}{\partial \theta_j} \frac{\partial p}{\partial \theta_i} + \frac{1}{p} \frac{\partial^2 p}{\partial \theta_i \partial \theta_j} ?θj??si??=?θj???(p1??θi??p?)=?p21??θj??p??θi??p?+p1??θi??θj??2p?
= ? s i s j + ? 2 log ? p ? θ i ? θ j = -s_i s_j + \frac{\partial^2 \log p}{\partial \theta_i \partial \theta_j} =?si?sj?+?θi??θj??2logp?
取期望:
E [ ? 2 log ? p ? θ i ? θ j ] = E [ s i s j ] + E [ ? s i ? θ j ] E\left[ \frac{\partial^2 \log p}{\partial \theta_i \partial \theta_j} \right] = E[s_i s_j] + E\left[ \frac{\partial s_i}{\partial \theta_j} \right] E[?θi??θj??2logp?]=E[si?sj?]+E[?θj??si??]
由于 ( E [ s i ] = 0 E[s_i] = 0 E[si?]=0 ),且在正則條件下可以交換積分和導(dǎo)數(shù):
E [ ? s i ? θ j ] = ? ? θ j E [ s i ] = 0 E\left[ \frac{\partial s_i}{\partial \theta_j} \right] = \frac{\partial}{\partial \theta_j} E[s_i] = 0 E[?θj??si??]=?θj???E[si?]=0
所以:
E [ ? 2 log ? p ? θ i ? θ j ] = E [ s i s j ] E\left[ \frac{\partial^2 \log p}{\partial \theta_i \partial \theta_j} \right] = E[s_i s_j] E[?θi??θj??2logp?]=E[si?sj?]
取負(fù)號(hào):
I ( θ ) i j = E [ s i s j ] = ? E [ ? 2 log ? p ? θ i ? θ j ] I(\theta)_{ij} = E[s_i s_j] = -E\left[ \frac{\partial^2 \log p}{\partial \theta_i \partial \theta_j} \right] I(θ)ij?=E[si?sj?]=?E[?θi??θj??2logp?]
這證明了兩種定義的等價(jià)性。
Fisher信息矩陣與Hessian的區(qū)別
盡管有聯(lián)系,兩者在使用和性質(zhì)上有顯著差別:
1. 定義基礎(chǔ)
- Fisher信息矩陣:基于概率分布 ( p ( x ∣ θ ) p(x|\theta) p(x∣θ) ),是期望值,反映分布的統(tǒng)計(jì)特性。
- Hessian矩陣:基于具體函數(shù)(比如 ( ? log ? p ( x ∣ θ ) -\log p(x|\theta) ?logp(x∣θ) )),依賴特定數(shù)據(jù) ( x x x ),是瞬時(shí)值。
2. 隨機(jī)性
- Fisher:取了期望,消除了數(shù)據(jù)的隨機(jī)波動(dòng),是理論上的平均曲率。
- Hessian:直接計(jì)算某次觀測(cè)的二階導(dǎo)數(shù),受數(shù)據(jù)噪聲影響,可能不穩(wěn)定。
3. 應(yīng)用場(chǎng)景
- Fisher:用于統(tǒng)計(jì)推斷,比如Cramér-Rao下界,衡量參數(shù)估計(jì)的理論精度。
- Hessian:用于優(yōu)化算法(如牛頓法),直接處理?yè)p失函數(shù)的局部曲率。
4. 計(jì)算復(fù)雜度
- Fisher:需要知道分布并計(jì)算期望,理論上精確但實(shí)踐中常需近似(如K-FAC)。
- Hessian:只需對(duì)具體數(shù)據(jù)求二階導(dǎo)數(shù),但在大規(guī)模模型中計(jì)算和存儲(chǔ)成本高。
舉例:正態(tài)分布
對(duì)于 ( x ~ N ( μ , σ 2 ) x \sim N(\mu, \sigma^2) x~N(μ,σ2) ):
-
Fisher:
I μ μ = ? E [ ? 1 σ 2 ] = 1 σ 2 I_{\mu\mu} = -E\left[ -\frac{1}{\sigma^2} \right] = \frac{1}{\sigma^2} Iμμ?=?E[?σ21?]=σ21?
(二階導(dǎo)數(shù)為常數(shù),期望不變) -
Hessian:
H μ μ = ? ? 2 log ? p ? μ 2 = 1 σ 2 H_{\mu\mu} = -\frac{\partial^2 \log p}{\partial \mu^2} = \frac{1}{\sigma^2} Hμμ?=??μ2?2logp?=σ21?
(對(duì)于單次觀測(cè),值固定)
這里兩者相等,但如果數(shù)據(jù)有噪聲或分布復(fù)雜,Hessian會(huì)波動(dòng),而Fisher保持穩(wěn)定。
實(shí)際中的聯(lián)系與應(yīng)用
1. 大樣本近似
在最大似然估計(jì)(MLE)中,當(dāng)樣本量很大時(shí),Hessian矩陣的平均值趨近于Fisher信息矩陣:
1 n ∑ i = 1 n H ( θ ; x i ) ≈ I ( θ ) \frac{1}{n} \sum_{i=1}^n H(\theta; x_i) \approx I(\theta) n1?i=1∑n?H(θ;xi?)≈I(θ)
這為參數(shù)估計(jì)的協(xié)方差提供了近似:( Cov ( θ ^ ) ≈ I ( θ ) ? 1 \text{Cov}(\hat{\theta}) \approx I(\theta)^{-1} Cov(θ^)≈I(θ)?1 )。
2. 優(yōu)化中的融合
- 牛頓法:直接用Hessian調(diào)整步長(zhǎng),但計(jì)算昂貴。
- 自然梯度下降:用Fisher信息代替Hessian,結(jié)合統(tǒng)計(jì)特性,效率更高。
- 折中方案:如K-FAC,用Fisher的近似加速Hessian類優(yōu)化。
3. 參數(shù)正交性
Fisher的非對(duì)角元素 ( I i j = 0 I_{ij} = 0 Iij?=0 ) 表示參數(shù)正交,而Hessian的非對(duì)角元素反映具體數(shù)據(jù)的參數(shù)耦合。Fisher提供理論指導(dǎo),Hessian提供實(shí)踐反饋。
總結(jié)
Fisher信息矩陣和Hessian矩陣是一對(duì)“親戚”:Fisher是Hessian的期望版本,前者關(guān)注分布的統(tǒng)計(jì)信息,后者關(guān)注具體數(shù)據(jù)的曲率。它們?cè)诮y(tǒng)計(jì)推斷和優(yōu)化中各有側(cè)重,但在理論和實(shí)踐中常常相輔相成。理解它們的區(qū)別與聯(lián)系,能幫助我們?cè)谀P驮O(shè)計(jì)和訓(xùn)練中更靈活地選擇工具——是追求理論精度,還是優(yōu)化實(shí)際收斂?答案就在這兩者之中。
后記
2025年2月24日23點(diǎn)00分于上海,在Grok3大模型輔助下完成。