模型中AIC和BIC以及loglikelihood的关系 您所在的位置:网站首页 检验功效函数越小越好 模型中AIC和BIC以及loglikelihood的关系

模型中AIC和BIC以及loglikelihood的关系

#模型中AIC和BIC以及loglikelihood的关系| 来源: 网络整理| 查看: 265

「在进行建模时,经常要对模型进行评价:」

这个模型好不好?这几个模型哪个好?这两个模型是否达到显著性差异?

我们常用的参数有「AIC」「BIC」「loglikelihood」,本篇介绍一下这几个参数的含义,以及是如何计算的,下面我们一起来看一下吧。

1. AIC的解释

赤池信息准则(Akaike Information Criterion,AIC)

AIC是衡量统计模型拟合优良性的一种标准,由日本统计学家赤池弘次在1974年提出,它建立在熵的概念上,提供了权衡估计模型复杂度和拟合数据优良性的标准。

通常情况下,AIC计算公式为:

k是模型参数个数,L是似然函数

从一组可供选择的模型中选择最佳模型时,通常选择AIC最小的模型。

当两个模型之间存在较大差异时,差异主要体现在似然函数项,当似然函数差异不显著时,上式第一项,即模型复杂度则起作用,从而参数个数少的模型是较好的选择。

一般而言,当模型复杂度提高(k增大)时,似然函数L也会增大,从而使AIC变小,但是k过大时,似然函数增速减缓,导致AIC增大,模型过于复杂容易造成过拟合现象。

目标是选取AIC最小的模型,AIC不仅要提高模型拟合度(极大似然),而且引入了惩罚项,使模型参数尽可能少,有助于降低过拟合的可能性。

2. BIC的解释

贝叶斯信息准则(Bayesian Information Criterion,BIC)

BIC(Bayesian InformationCriterion)贝叶斯信息准则与AIC相似,用于模型选择,1978年由Schwarz提出。训练模型时,增加参数数量,也就是增加模型复杂度,会增大似然函数,但是也会导致过拟合现象,针对该问题,AIC和BIC均引入了与模型参数个数相关的惩罚项,BIC的惩罚项比AIC的大,考虑了样本数量,样本数量过多时,可有效防止模型精度过高造成的模型复杂度过高。

k为模型参数个数n为样本数量L是似然函数

k*ln(n)惩罚项在维数过大且训练样本数据相对较少的情况下,可以有效避免出现维度灾难现象。

3. AIC和BIC的比较

AIC和BIC的公式中前半部分是一样的,

后半部分是惩罚项,当n ≥ 10^2 的时候,即kln(n) ≥ 2k,这时候BIC的惩罚性得分更多(分数越大,模型越差),所以,BIC相比AIC在大数据量时对模型参数惩罚得更多,导致BIC更倾向于选择参数少的简单模型。

4. 实例演示

「ASReml-R 文档中的计算方法:」

这里:

Ri为似然函数的loglikelihoodti为参数个数v为残差的自由度

用两个模型:

模型1:动物模型,固定因子是SEX和BYEAR,随机因子是加性模型模型2:动物模型,固定因子是SEX和BYEAR,随机因子是加性效应和母体环境效应m1 = asreml(BWT ~ SEX + BYEAR, random = ~ vm(ANIMAL,ainv), residual = ~ idv(units),data = dat) summary(m1)$varcomp

# m2 单性状动物模型 + 母体效应 m2 = asreml(BWT ~ SEX + BYEAR, random = ~ vm(ANIMAL,ainv) + MOTHER , residual = ~ idv(units),data = dat) summary(m2)$varcomp4.1 模型1的AIC和BIC

这里,m1的loglik为-1093.197,这个值是AIC和BIC公式的ln(L):

所以,这里的参数个数是2,所以手动计算AIC的公式为:

结果可以看出,手动计算的AIC和函数计算的AIC,结果一致。

手动计算BIC的公式:

这里的n是模型残差的自由度。

可以看到,手动计算的BIC和手动计算的BIC结果一致。

4.2 模型2的AIC和BIC

「代码:」

m2$loglik -2*m2$loglik+ 2*3 summary(m2)$aic -2*m2$loglik+ 3*log(m2$nedf) summary(m2)$bic

注意,这里的参数是3,而不是2.

「AIC的结果:完全一致」

「BIC的结果:完全一致」

4.3 模型1和模型2比较

「loglikelihood比较」这里的比较,是比较loglikelihood的绝对值,绝对值越小,说明模型拟合越好。当然,这是单纯的比较似然函数,没有考虑参数的影响。

可以看到,模型2优于模型1.

m1$loglik m2$loglik

「AIC比较」这里,AIC值越小,说明模型拟合越好。

这里模型2优于模型1.

summary(m1)$aic summary(m2)$aic

「BIC结果比较」这里,BIC值越小,说明模型拟合越好。

结果可以看出,模型2优于模型1.

summary(m1)$bic summary(m2)$bic5. LRT似然比检验

似然比检验用来评估两个模型中哪个模型更适合当前数据分析。

具体来说,一个相对复杂的模型与一个简单模型比较,来检验它是不是能够显著地适合一个特定的数据集。

「ASReml中的LRT描述:」

「LRT检验的前提」

两个模型的固定因子一致两个模型随机因子属于nested关系(包含关系,分级巢式模型)

LRT应用的一个前提条件是这些待比较的模型应该是分级的巢式模型。具体来讲,是说相对于简单模型,复杂模型仅仅是多了一个或者多个附加参数。增加模型参数必定会导致高似然值成绩。因此根据似然值的高低来判断模型的适合度是不准确的。LRT提供了一个客观的标准来选择合适的模型。

LRT检验的公式:

其中L1为复杂模型最大似然值,L2为简单标准模型最大似然值LR近似的符合卡方分布。为了检验两个模型似然值的差异是否显著,我们必须要考虑自由度。LRT 检验中,自由度等于在复杂模型中增加的模型参数的数目。这样根据卡方分布临界值表,我们就可以判断模型差异是否显著。

「手动计算公式:」

可以看到,两模型之间的差异达到极显著,所以模型2显著优于模型1.

1-pchisq(-2*(m1$loglik-m2$loglik),1)

「公式计算:」

lrt.asreml(m1,m2,boundary = F)

手动计算和公式计算,两者结果是一致的。

❝欢迎关注我的公众号:育种数据分析之放飞自我。主要分享R语言,Python,育种数据分析,生物统计,数量遗传学,混合线性模型,GWAS和GS相关的知识。


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有