费雪信息 (Fisher information)

------------------------------------------------------------------------------

作者:知乎用户
链接:https://www.zhihu.com/question/26561604/answer/33275982
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

------------------------------------------------------------------------------

首先我们看一下 Fisher Information 的定义:
假设你观察到 i.i.d 的数据 X_1, X_2, \ldots X_n 服从一个概率分布f(X; \theta),\theta是你的目标参数(for simplicity, 这里\theta是个标量,且不考虑 nuissance parameter),那么你的似然函数(likelihood)就是:
L(\bold{X};\theta) = \prod_{i=1}^n f(X_i;\theta)
为了解得Maximum Likelihood Estimate(MLE),我们要让log likelihood的一阶导数得0,然后解这个方程,得到\hat{\theta}_{MLE}
这个log likelihood的一阶导数也叫,Score function :
S(\bold{X};\theta) = \sum_{i=1}^n \frac{\partial log f(X_i;\theta)}{\partial \theta}

那么Fisher Information,用I(\theta)表示,的定义就是这个Score function的二阶矩(second moment)I(\theta) = E[S(X;\theta)^2]
一般情况下(under specific regularity conditions)可以很容易地证明,E[S(\bold{X};\theta)]= 0, 从而得到:
I(\theta) = E[S(X;\theta)^2]-E[S(X;\theta)]^2 = Var[S(X;\theta)]
于是得到了Fisher Information的第一条数学意义:就是用来估计MLE的方程的方差。它的直观表述就是,随着收集的数据越来越多,这个方差由于是一个Independent sum的形式,也就变的越来越大,也就象征着得到的信息越来越多。

而且,如果log likelihood二阶可导,在一般情况下(under specific regularity conditions)可以很容易地证明:
E[S(\bold{X};\theta)^2] = -E(\frac{\partial^2}{\partial \theta^2}log L(\bold{X};\theta))
于是得到了Fisher Information的第二条数学意义:log likelihood在参数真实值处的负二阶导数的期望。这个意义好像很抽象,但其实超级好懂。
首先看一下一个normalized Bernoulli log likelihood长啥样:

对于这样的一个log likelihood function,它越平而宽,就代表我们对于参数估计的能力越差,它高而窄,就代表我们对于参数估计的能力越好,也就是信息量越大。而这个log likelihood在参数真实值处的负二阶导数,就反应了这个log likelihood在顶点处的弯曲程度,弯曲程度越大,整个log likelihood的形状就越偏向于高而窄,也就代表掌握的信息越多。

然后,在一般情况下(under specific regularity conditions),通过对score function在真实值处泰勒展开,然后应用中心极限定理,弱大数定律,依概率一致收敛,以及Slutsky定理,可以证明MLE的渐进分布的方差是 I^{-1}(\theta),即 Var(\hat{\theta}_{MLE}) = I^{-1}(\theta), 这也就是 Fisher Information的第三条数学意义。不过这样说不严谨,严格的说,应该是 \sqrt{n}(\hat{\theta}_{MLE}-\theta) \xrightarrow{D} N(0,I^*(\theta)^{-1}), 这里 I^*(\theta)是当只观察到一个X值时的Fisher Information,当有n个 i.i.d 观测值时, I^*(\theta) = I(\theta)/n。所以这时的直观解释就是,Fisher Information反映了我们对参数估计的准确度,它越大,对参数估计的准确度越高,即代表了越多的信息。



-----------------------------------------------------------------------------

作者:小Q痴子
链接:https://www.zhihu.com/question/26561604/answer/145734266
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

------------------------------------------------------------------------------

参数估计的本质是,假设样本的数据来自于某一个分布,然后利用样本中蕴含的信息来估计参数。一个自然的问题就是:对于分布里的未知参数,这个样本数据给出了多少信息呢?Fisher Information 就衡量了这样的“信息”。

什么样的样本给出的信息更多?直觉上思考这个问题,如果一个事件发生的概率很大,那发生这件事并不能带来太多信息;相反,如果一个事件发生的概率很小,那发生这件事可以带来比较多的信息。

现在我们再回顾一下最大似然估计(Maximum Likelihood Estimation)的基本思想。对于随机变量X \sim f(x|\theta) ,直觉上,当\theta 取到参数的真实值时,似然函数的值应该很大,最大似然估计的思想就是认为 当\theta 取到参数的真实值时似然函数的值应该取到最大值,或者(对数)似然函数的一阶导数为0。

定义对数似然函数为l (x|\theta)=\log f(x|\theta) ,从而l'(x|\theta)=\frac{\partial}{\partial \theta} \log f(x|\theta) = \frac{f'(x|\theta)}{f(x|\theta)},其中f'(x|\theta)f(x|\theta)关于\theta的导数。

根据上面的两段分析,如果l'(x|\theta)非常接近于0,这将是意料之中的事情,因此样本没有带来太多关于参数\theta的信息;相反,如果|l'(x|\theta)|很大,或者说[l'(x|\theta)]^2很大,那么样本就提供了比较多的关于参数\theta的信息。所以,我们可以用[l'(x|\theta)]^2来衡量X提供的信息(information)。但是X是个随机变量,于是我们就考虑[l'(x|\theta)]^2的期望值。

于是就有了Fisher Information的定义(1):
I(\theta)=E{[l'(X|\theta)^2]}=\int [l'(X|\theta)^2] f(x|\theta) dx
如果假设可以交换求导和积分的顺序,那么
\int f'(x|\theta)dx=\frac{\partial}{\partial \theta} \int f(x|\theta) dx =0
\int f''(x|\theta)dx=\frac{\partial^2}{\partial \theta^2} \int f(x|\theta) dx =0
容易看出,
E[l'(X|\theta)]=\int l'(x|\theta)f(x|\theta)dx=\int \frac{f'(x|\theta)}{f(x|\theta)}f(x|\theta)dx=\int f'(x|\theta)dx=0

所以Fisher Information的定义(1)可以改写成定义(2):
I(\theta)=Var [l'(X|\theta)]

(其中用到Var[l'(X|\theta)]=E [l'(X|\theta)]^2 - E^2 [l'(X|\theta)]。)
注意到
l''(x|\theta)=\frac{\partial}{\partial \theta} [\frac{f'(x|\theta)}{f(x|\theta)}]=\frac{f''(x|\theta)f(x|\theta)-[f'(x|\theta)]^2}{[f(x|\theta)]^2}=\frac{f''(x|\theta)}{f(x|\theta)}-[l'(x|\theta)]^2
因此
E[l''(x|\theta)]=\int [\frac{f''(x|\theta)}{f(x|\theta)}-[l'(x|\theta)]^2] f(x|\theta)dx=\int f''(x|\theta)dx - E[l'(x|\theta)]^2=-I(\theta)

至此我们有了关于Fisher Information的第(3)个表达式:
I(\theta)=-E[l''(x|\theta)]=-\int [\frac{\partial ^2}{\partial \theta ^2} \log f(x|\theta)] f(x|\theta) dx
综上所述,我们有三个办法来计算Fisher Information。实际上在大多数问题中,(3)将是最方便的。


### 最大 Fisher 信息量原理概述 最大 Fisher 信息量原理是一种统计学理论,在 IT 领域具有广泛的应用价值。Fisher 信息量衡量的是某一随机变量的概率分布函数相对于其参数的敏感程度,即通过观测数据能够获取关于未知参数的信息多少[^4]。 在机器学习和人工智能领域,这一原则被用来优化模型训练过程中的参数估计精度以及提升算法性能。例如,在深度神经网络中,利用 Fisher 信息矩阵可以实现更高效的权重更新策略,从而加速收敛并提高泛化能力[^5]。 ### 在 IT 领域的具体应用场景 #### 参数估计与模型校准 当构建预测模型时,通常需要基于有限样本集来估算模型内部各组件之间的关系强度或者影响因子大小。此时如果采用最大化 Fisher Information 方法,则能够在一定程度上减少由于采样不足所造成的偏差风险,并使得最终得到的结果更加接近实际情况[^6]。 ```python import numpy as np def fisher_information_matrix(theta, likelihood_function): """ 计算给定似然函数下的费雪信息矩阵 :param theta: 模型参数列表 :param likelihood_function: 定义好的概率密度/质量函数 :return: 对应于输入theta处的费雪信息矩阵 """ hessian = -np.linalg.inv(np.gradient(np.log(likelihood_function(*theta)))) return hessian ``` #### 特征选择与降维处理 对于高维度的数据集合来说,可能存在许多冗余甚至相互干扰的因素存在其中;因此有必要对其进行必要的筛选操作以便后续分析工作得以顺利开展下去。借助于上述提到过的准则之一——最小描述长度(MDL),我们可以进一步推导得出另一种形式表达方式就是所谓的“极大似然估计+正则项约束”,而这正好对应着我们想要寻找的那个最优子空间方向向量组群组合而成的整体结构特性表现出来而已[^7]! --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值