近来看了一些toolbox的代码,发现AIC BIC的计算在不同的toolbox计算不一样?
例如:MFE 中AICBIC函数是这么算的
aic = log(seregression^2) + 2*K/T;
sbic = log(seregression^2) + log(T)*K/T;
这跟教科书的定义是一致的
MS_Regress toolbox中则是这么算的
Spec_Output.AIC=2*numel(param)-2*Spec_Output.LL;
Spec_Output.BIC=-2*Spec_Output.LL+numel(param)*log(Spec_Output.nObs*nEq);
output.LL是Log L的值
这两种算法的结果似乎差别很大
ARMA和MS_regime都是用MLE估计的,为什么会有这样的差别?该以哪个为准?请高手解答?