[经验分享] 【统计小百科】你知道AIC准则么?[通俗易懂]

[经验分享] 【统计小百科】你知道AIC准则么?[通俗易懂]2019独角兽企业重金招聘Python工程师标准>>>…

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

  AIC信息准则即Akaike information criterion,是衡量统计模型拟合优良性的一种标准,又由与它为日本统计学家赤池弘次创立和发展的,因此又称赤池信息量准则。它建立在熵的概念基础上,可以权衡所估计模型的复杂度和此模型拟合数据的优良性。

       在一般的情况下,AIC可以表示为: AIC=2k-2ln(L),其中:k是参数的数量,L是似然函数。 假设条件是模型的误差服从独立正态分布。 让n为观察数,RSS为剩余平方和,那么AIC变为: AIC=2k+nln(RSS/n)。

       增加自由参数的数目提高了拟合的优良性,AIC鼓励数据拟合的优良性但是尽量避免出现过度拟合(Overfitting)的情况。所以优先考虑的模型应是AIC值最小的那一个。赤池信息准则的方法是寻找可以最好地解释数据但包含最少自由参数的模型。

       经常地,对一堆数据进行建模的时候,特别是分类和回归模型,我们有很多的变量可供使用,选择不同的变量组合可以得到不同的模型,例如我们有5个变量,2的5次方,我们将有32个变量组合,可以训练出32个模型。但是哪个模型更加的好呢?目前常用有如下方法:
AIC=-2 ln(L) + 2 k  中文名字:赤池信息量 akaike information criterion
BIC=-2 ln(L) + ln(n)*k 中文名字:贝叶斯信息量 bayesian information criterion
HQ=-2 ln(L) + ln(ln(n))*k  hannan-quinn criterion

       构造这些统计量所遵循的统计思想是一致的,就是在考虑拟合残差的同时,依自变量个数施加“惩罚”。但,倘若因此就说它们是同一个指标,恐怕还是有些不妥,毕竟“惩罚”的力度还是不尽相同的。此外,这些信息量的用途不仅限于选择模型,还能用于选取合适的变换等等。而在那些时候,这些信息量又是另一个模样,也就是说它们有许多变体。因此,它们也被称为AIC准则、BIC准则等等。它们中的每一个体现的都是一系列的标准,而非单独的一个简单式子。

       注意这些规则只是刻画了用某个模型之后相对“真实模型”的信息损失(因为不知道真正的模型是什么样子,所以训练得到的所有模型都只是真实模型的一个近似模型),所以用这些规则不能说明某个模型的精确度,即三个模型A, B, C,在通过这些规则计算后,我们知道B模型是三个模型中最好的,但是不能保证B这个模型就能够很好地刻画数据,因为很有可能这三个模型都是非常糟糕的,B只是烂苹果中的相对好的苹果而已。

       这些规则理论上是比较漂亮的,但是实际在模型选择中应用起来还是有些困难的,例如上面我们说了5个变量就有32个变量组合,如果是10个变量呢?2的10次方,我们不可能对所有这些模型进行一一验证AIC, BIC,HQ规则来选择模型,工作量太大。

 

 

因为AIC和BIC一般为负值 也就是绝对值越大 负得越多越好 你可以查一下AIC和BIC的计算公式 一般都是分为两个部分 一部分是度量拟合效果,另一部分是对参数个数增加的惩罚

转载于:https://my.oschina.net/u/1161889/blog/1549141

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

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

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


相关推荐

  • goldengate双向同步_mysql数据库定时同步

    goldengate双向同步_mysql数据库定时同步前言:最近刚好在弄数据库同步,网上查了些资料再加上自己整理了一些,做个分享!一、GoldenGate的安装官方文档:Oracle®GoldenGate安装和配置OracleGolde

    2022年8月2日
    5
  • WebService学习整理-JDK的wsimport命令和cxf的wsdl2java命令的区别和使用

    WebService学习整理-JDK的wsimport命令和cxf的wsdl2java命令的区别和使用

    2022年2月24日
    42
  • 【JavaScript】支持js代码的博客有…

    【JavaScript】支持js代码的博客有…原文地址:支持js代码的博客有哪些?作者:liancaiping1、支持js代码的博客谷歌博客,雅虎奇摩,博客大巴,jimdo博客,和讯博客要等级(230000分).2、现在新浪博客怎么才能有效的使用js呢在新浪博客放广告,现在网络上主要流行的两种方法,这里尽量简单化的给您说明。把广告以代码形式放到免费空间里,然后链接到你的博客教程如下:(1).登陆goog

    2022年7月14日
    15
  • pushd popd命令「建议收藏」

    pushd popd命令「建议收藏」在本系列的第一部分中,我们通过讨论 cd- 命令的用法,重点介绍了Linux中的命令行导航。还讨论了一些其他相关要点/概念。现在进一步讨论,在本文中,我们将讨论如何使用 pushd 和 popd 命令在Linux命令行上获得更快的导航体验。在我们开始之前,值得说明的一点是,此后提到的所有指导和命令已经在Ubuntu14.04和Bashshell(4.3.11)上

    2022年6月28日
    37
  • 关于ASMM和AMM[通俗易懂]

    关于ASMM和AMM[通俗易懂]关于ASMM和AMMhttp://blog.itpub.net/29800581/viewspace-1263875/http://blog.csdn.net/deanza/article/details/9635461现在的Oracle正在往智能化方向发展。如果我们现在找一些8i/9i时代的Oracle书籍,怎么样配置合适的数据库各内存池大小是非常重要的话题。但是进入10g之后,自动内存池调节成…

    2022年6月7日
    71
  • 简述计算机的发展史和应用领域_简述计算机的发展史

    简述计算机的发展史和应用领域_简述计算机的发展史计算机发展史`分类和应用领域第1章计算机基础知识计算机发展史、分类和应用领域数值、字符、汉字和图像编码计算机组成和原理计算机安全基础知识1.1计算机概述计算机技术的迅猛发展,促使人类走向丰富多彩的信息社会。信息时代的生产方式和生活方式具有数字化、集成化、智能化、移动化、个性化等特点。1.1.1计算机的发展世界上第一台电子数字式计算机ENIAC于1946年2月15日诞生在美国宾夕法…

    2022年10月11日
    2

发表回复

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

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