开发者:上海品职教育科技有限公司 隐私政策详情

应用版本:4.2.11(IOS)|3.2.5(安卓)APP下载

梦梦 · 2023年06月06日

关于AIC和BIC

老师好,您能否举几个具体的例子,什么是T(样本容量)?什么是k(参数个数)?我不知道自己理解的对不对?为什么用ln的形式呢?您能简单说说吗?

梦梦 · 2023年06月08日

1、也就是说“模型的参数个数”指的是模型中的“得塔、fai和西塔”对吗? 2、例子中的“ARMA(1, 1) 的 AIC = -2log(L) + 2K1”的“-2”是指样本容量是“-2”?

2 个答案
已采纳答案

pzqa27 · 2023年06月08日

嗨,爱思考的PZer你好:


1、也就是说“模型的参数个数”指的是模型中的“得塔、fai和西塔”对吗?

是的

 2、例子中的“ARMA(1, 1) 的 AIC = -2log(L) + 2K1”的“-2”是指样本容量是“-2”?

不是啊,样本容量是观测值的个数,我这里写的2log(L)是AIC的另一种表达形式,不是原版书上的形式

----------------------------------------------
努力的时光都是限量版,加油!

梦梦 · 2023年06月08日

原来如此,明白了

pzqa27 · 2023年06月07日

嗨,从没放弃的小努力你好:


什么是T(样本容量)?

这个是指观测值的个数,比如我们观测了30天的数据,这里样本容量就是30

什么是k(参数个数)?

比如在ARMA模型中,参数K表示模型的参数个数

假设我们尝试了ARMA(1, 1)、ARMA(2, 1)和ARMA(1, 2)三个模型,并计算出它们的AIC值分别为:

ARMA(1, 1) 的 AIC = -2log(L) + 2K1

ARMA(2, 1) 的 AIC = -2log(L) + 2K2

ARMA(1, 2) 的 AIC = -2log(L) + 2K3

其中,K1 = 1 + 1 + 1 = 3,K2 = 2 + 1 + 1 = 4,K3 = 1 + 2 + 1 = 4。

假设计算结果如下:

ARMA(1, 1) 的 AIC = 100

ARMA(2, 1) 的 AIC = 95

ARMA(1, 2) 的 AIC = 98

根据AIC原则,AIC值较小的模型拥有更好的拟合优度和较低的复杂度。在这个例子中,ARMA(2, 1)模型的AIC值最小,因此我们选择ARMA(2, 1)作为最优模型。

为什么用ln的形式呢?

AIC最原始的样子是AIC = -2log(L) + 2K,其中,log(L)表示ARIMA模型的最大似然估计的对数似然值。在AIC中,取对数的目的是为了简化计算并减少数值计算的不稳定性。

  1. 简化计算:对于似然函数的连乘运算,特别是在复杂模型或大规模数据集的情况下,计算量可能非常大。取对数后,连乘运算转换为了连加运算,简化了计算的复杂度,降低了计算的开销。
  2. 避免数值问题:对于非常小的概率或概率密度,直接进行连乘运算可能导致数值下溢或损失精度。通过取对数,将概率转换为对数概率,可以避免这些数值问题。对数概率通常具有更合理的数值范围,并且保持数值的稳定性。
  3. 方便模型比较:AIC的目标是在考虑模型拟合优度和复杂度的情况下选择最优模型。取对数后,AIC的表达式中的连乘项变为连加项,使得不同模型之间的AIC值可以更方便地进行比较。较小的AIC值表示模型对数据的拟合较好且具有较低的复杂度。
  4. 简化参数估计:在估计模型参数的过程中,通常需要对似然函数求导。对数似然函数的求导更加简单,而且常见的最优化算法也更容易基于梯度进行参数估计。因此,对数似然函数在参数估计过程中更方便使用。


----------------------------------------------
就算太阳没有迎着我们而来,我们正在朝着它而去,加油!

  • 2

    回答
  • 0

    关注
  • 241

    浏览
相关问题