zoukankan      html  css  js  c++  java
  • 特征选择之卡方检验

      特征选择的常用方法之一是卡方检验,作为一个filter model的代表,卡方检验属于简单易计算的Feature weight algorithm(通过一定的measure方法给特征赋上一定的weight来表征与类别之间的相关度,通过weight大于一定阈值或选取topk个weight来进行特征选择)。卡方检验和信息增益是feature weight algorithm常用且效果较优的算法。

      卡方检验是概率论与数理统计中常用的假设检验的思想:通过观察实际值和理论值的偏差来确定原假设是否成立。首先假设两个变量是独立的(此为原假设),然后观察实际值和理论值之间的偏差程度,若偏差足够小,则认为偏差是很自然的样本误差,接受原假设。若偏差大到一定程度,则否则原假设,接受备择假设。

      关于卡方检验的思想和例子,可参考:http://blog.csdn.net/fty8788/article/details/8156723

      上文中提到的例子:考察attribute词 “篮球”和类别“体育”的相关性,计算偏差的卡方值,进行特征选择。这里不再赘述。

      

    ++++++++++我是分割线++++++++++

    理解卡方检验:

    使用卡方检验时,简单代入公式即可。简单复习了一下假设检验的知识(都还给老师了,实在对不住自己……),简单总结如下,有不对之处感谢指正:

    卡方检验使用的是单个分布的卡方检验拟合法:

    对篮球的有无和体育是否这两对值分离时,假设两个是独立的,即篮球在四中情况下的分布概率(用频率近似概率)分别为:A+B/N  A+B/N   C+D/N C+D/N

    对篮球的分布是否符合上述假设进行检验:

    chi2 = sum(1 to k) n/pi (fi/n - pi)^2 ~chi(k-1)分布

    公式左边简化得到:

    chi2 = sum(1 to k) (fi - npi)^2 / npi = sum(1 to k) (fi - E)^2 / E ~chi(k-1)

    于是,卡方检验的公式由此得到。

    对以上假设进行检验时,相关了一个显著水平siglevel。显著水平表示当原假设成立时拒绝原假设的概率,是一个小概率事件的概率。

    对上述例子,if chi2 >= chi2(siglevel) 拒绝原假设,或可表示为P(chi2 >= G) = siglevel

    减少siglevel,即拒绝原假设的概率变小,G变大,即对chi2的阈值变高,必须出现一个很大的偏差才能拒绝原假设。因此可以通过调节siglevel调整拒绝原假设的卡方阈值。

    ++++++++++++碎碎念+++++

    概率论博大精深,大一上课单纯以为这只是数学知识,拿来算算概率就可以了。完全没意识到高数、概率论和线性代数与码农千丝万缕的联系,

    把教材都买回来了,希望有一天能融为一体,游刃有余吧。2014,小小加油。

  • 相关阅读:
    推荐几款Vue后台管理系统的框架,以便备用
    vue常用开发ui框架(app,后台管理系统,移动端)及插件
    CSS的flex布局看完这篇你就懂了
    network中的js和xhr
    使用better-scroll插件 点击事件失效
    javaScript -- touch事件详解(touchstart、touchmove和touchend)
    BetterScroll在vue中v-for渲染数据后滚动失效
    布局总结四:利用行高来撑开高度
    git中Please enter a commit message to explain why this merge is necessary.
    Vue中使用Ajax与后台交互
  • 原文地址:https://www.cnblogs.com/changxiaoxiao/p/3522144.html
Copyright © 2011-2022 走看看