最优模型选择的准则:AIC、BIC准则

最优模型选择的准则:AIC、BIC准则选择最优模型的指导思想是从两个方面去考察:一个是似然函数最大化,另一个是模型中的未知参数个数最小化。似然函数值越大说明模型拟合的效果越好,但是我们不能单纯地以拟合精度来衡量模型的优劣,这样回导致模型中未知参数越来越多,模型变得越来越复杂,会造成过拟合。所以一个好的模型应该是拟合精度和未知参数个数的综合最优化配置。AIC准则AIC准则是由日本统计学家Akaike与1973年提出的,全称是最小…

大家好,又见面了,我是你们的朋友全栈君。

最优模型选择的准则:AIC、BIC准则

选择最优模型的指导思想是从两个方面去考察:一个是似然函数最大化,另一个是模型中的未知参数个数最小化。似然函数值越大说明模型拟合的效果越好,但是我们不能单纯地以拟合精度来衡量模型的优劣,这样回导致模型中未知参数越来越多,模型变得越来越复杂,会造成过拟合。所以一个好的模型应该是拟合精度和未知参数个数的综合最优化配置。

1. AIC准则

AIC准则是由日本统计学家Akaike与1973年提出的,全称是最小化信息量准则(Akaike Information Criterion)。它是拟合精度和参数个数的加权函数:
AIC=2(模型参数的个数)-2ln(模型的极大似然函数)

2. BIC准则

AIC为模型选择提供了有效的规则,但也有不足之处。当样本容量很大时,在AIC准则中拟合误差提供的信息就要受到样本容量的放大,而参数个数的惩罚因子却和样本容量没关系(一直是2),因此当样本容量很大时,使用AIC准则选择的模型不收敛与真实模型,它通常比真实模型所含的未知参数个数要多。BIC(Bayesian InformationCriterion)贝叶斯信息准则是Schwartz在1978年根据Bayes理论提出的判别准则,称为SBC准则(也称BIC),弥补了AIC的不足。SBC的定义为:
BIC = ln(n)(模型中参数的个数) - 2ln(模型的极大似然函数值)

小结

在进行ARMA参数的选择是,AIC准则和BIC准则的提出可以有效弥补根据自相关图和偏自相关图定阶的主观性,在有限的阶数范围内帮助我们寻找相对最优拟合模型。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142143.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 常用哈希函数介绍_简单说哈希函数是什么

    常用哈希函数介绍_简单说哈希函数是什么哈希函数介绍什么是哈希?在记录的关键字与记录的存储地址之间建立的一种对应关系叫哈希函数。哈希函数就是一种映射,是从关键字到存储地址的映射。通常,包含哈希函数的算法的算法复杂度都假设为O(1),这就是为什么在哈希表中搜索数据的时间复杂度会被认为是”平均为O(1)的复杂度”.在讲解具体内容前,首先我们要清楚以下几个概念:冲突(碰撞)对于不同的关键字ki、kj,若ki!=kj,但H(ki)=H(kj)的现象叫冲突(collision),即不同的输入却有相同的输出。我们应该尽量避免冲突,因为冲

    2025年6月27日
    0
  • bool 函数用法「建议收藏」

    bool 函数用法「建议收藏」 BOOL是布尔型变量,也就是逻辑型变量的定义符,类似于float、double等,只不过float定义浮点型,double定义双精度浮点型。在objective-c中提供了相似的类型BOOL,它具有YES值和NO值。布尔型变量的值只有真(true)和假(false),可用于逻辑表达式,也就是“或”“与”“非”之类的逻辑运算和大于小于之类的关系运算,逻辑表达式运算结果为真或为假。(百科) …

    2022年4月28日
    109
  • c语言如何遍历数组,C语言数组遍历

    c语言如何遍历数组,C语言数组遍历C语言数组遍历教程C语言for循环遍历数组详解语法for(i=0;i<count;i++){//arr[i]}说明其中count是数组的元素的个数,此时,数组的每一个元素是arr[i]。C语言while循环遍历数组详解语法inti=0;while(i<count){//arr[i]i++;}说明其中count是数组的元素的个数,此时,数组的每一个元…

    2022年7月22日
    7
  • Dockerfile add_在docker中使用ubuntu

    Dockerfile add_在docker中使用ubuntu前言Dockerfile中提供了两个非常相似的命令COPY和ADD,本文尝试解释这两个命令的基本功能,以及其异同点,然后总结其各自适合的应用场景。Build上下文的概念在使用dock

    2022年8月6日
    1
  • C语言背包问题优化[通俗易懂]

    C语言背包问题优化[通俗易懂]#include#defineV1500intf[V];intweight[10];intvalue[10];#definemax(x,y)(x)>(y)?(x):(y)intmain(){intN,M;scanf(“%d%d”,&N,&M);for(inti=1;

    2022年7月14日
    14
  • Stream流的常用方法[通俗易懂]

    Stream流的常用方法[通俗易懂]1、快速创建ListListlist=Stream.of(“1″,”2”).collect(Collectors.toList());2、取对象的某一列低效方式:List<String>userNameList=newArrayList<>();for(String)List<String>userNameList=list.stream().map(User::getName).collect(Collectors.toList(

    2022年10月5日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号