+-
R语言极值推断:广义帕累托分布GPD使用极大似然估计、轮廓似然估计、Delta法

原文链接:http://tecdat.cn/?p=22566 

本文是极端值推断的内容。我们在广义帕累托分布上使用最大似然方法。

极大似然估计

在参数模型的背景下,标准技术是考虑似然的最大值(或对数似然)。考虑到一些技术性假设,如 ,的某个邻域,那么

其中表示费雪信息矩阵。在此考虑一些样本,来自广义帕累托分布,参数为 ,因此 

如果我们解决极大似然的一阶条件,我们得到一个满足以下条件的估计

这种渐进正态性的概念如下:如果样本的真实分布是一个具有参数的GPD,那么,如果n足够大,就会有一个联合正态分布。因此,如果我们产生大量的样本(足够大,例如200个观测值),那么估计的散点图应该与高斯分布的散点图相同。

> for(s in 1:1000){
+ param\[s,\]=gpd(x,0)$par.ests


> image(x,y,z)

得到一个3D的表示

> persp(x,y,t(z)
+ xlab="xi",ylab="sigma")

有了200个观测值,如果真正的基础分布是GPD,那么,联合分布是正态的。

Delta德尔塔法

另一个重要的属性是德尔塔法。这个想法是,如果是渐进正态,足够平滑,那么也是渐进高斯的。

从这个属性中,我们可以得到(这是极值模型中使用的另一个参数化)的正态性,或者在任何四分位数上 。我们运行一些模拟,再一次检查联合正态性。

> for(s in 1:1000)
+ gpd(x,0)$par.ests
+ q=sha * (.01^(-xih) - 1)/xih
+ tvar=q+(sha + xih * q)/(1 - xih)
dmnorm(cbind(vx,vy),m,S)
> image(x,y,t(z)

正如我们所看到的,在样本大小为200的情况下,我们不能使用这个渐进式的结果:看起来我们没有足够的数据。但是,如果我们在n=5000运行同样的代码,

   

``````
> n=5000

我们得到和的联合正态性。这就是我们可以从这个结果中得到的delta-方法。

轮廓似然( Profile Likelihood )

另一个有趣的方法是Profile 似然函数的概念。因为尾部指数,在这里是辅助参数。
这可以用来推导出置信区间。在GPD的情况下,对于每个 ,我们必须找到一个最优的 。我们计算Profile 似然函数,即 。而我们可以计算出这个轮廓似然的最大值。一般来说,这个两阶段的优化与(全局)最大似然是不等价的,计算结果如下

+  profilelikelihood=function(beta){
+  -loglik(XI,beta) }
+  L\[i\]=-optim(par=1,fn=profilelik)$value }

如果我们想计算轮廓似然的最大值(而不是像以前那样只计算网格上的轮廓似然的值),我们使用

+  profile=function(beta){
+  -loglikelihood(XI,beta) }
(OPT=optimize(f=PL,interval=c(0,3)))

我们得到结果和最大似然估计的相似。我们可以用这种方法来计算置信区间,在图表上将其可视化

> line(h=-up-qchisq(p=.95,df=1)
>  I=which(L>=-up-qchisq(p=.95,df=1))
>  lines(XIV\[I\]

竖线是参数95%置信区间的下限和上限。

最受欢迎的见解

1.R语言POT超阈值模型和极值理论分析

2.R语言极值理论EVT:基于GPD模型的火灾损失分布分析

3.R语言有极值(EVT)依赖结构的马尔可夫链(MC)对洪水极值分析

4.R语言回归中的hosmer-lemeshow拟合优度检验

5.matlab实现MCMC的马尔可夫切换ARMA – GARCH模型估计

6.R语言区间数据回归分析

7.R语言WALD检验 VS 似然比检验

8.python用线性回归预测股票价格

9.R语言如何在生存分析与Cox回归中计算IDI,NRI指标