特征选择方法汇总

卢总 - 特征选择方法汇总

特征选择三种方法:

  • Filter(过滤法)

  • Wrapper(包装法)

  • Embedded(嵌入法)

过滤法

卡方检验

直接看sklearn代码:

首先做OHE

Y = LabelBinarizer().fit_transform(y)

做完之后 Y Y Y的shape是 N × K N\times K N×K

observed = safe_sparse_dot(Y.T, X)          # n_classes * n_features

K , N × N , M K,N\times N,M K,N×N,M

形成一个 K × M K\times M K×M的矩阵,表示每个类别对应的特征之和

observed
Out[6]: 
array([[250.3, 171.4,  73.1,  12.3],
       [296.8, 138.5, 213. ,  66.3],
       [329.4, 148.7, 277.6, 101.3]])

在这里插入图片描述

最后算卡方的代码:

def _chisquare(f_obs, f_exp):
    """Fast replacement for scipy.stats.chisquare.

    Version from https://github.com/scipy/scipy/pull/2525 with additional
    optimizations.
    """
    f_obs = np.asarray(f_obs, dtype=np.float64)

    k = len(f_obs)
    # Reuse f_obs for chi-squared statistics
    chisq = f_obs
    chisq -= f_exp
    chisq **= 2
    with np.errstate(invalid="ignore"):
        chisq /= f_exp
    chisq = chisq.sum(axis=0)
    return chisq, special.chdtrc(k - 1, chisq)

自变量对因变量的相关性
在这里插入图片描述
A A A是观测, E E E是期望, 其shape都是 K × M K\times M K×M

自变量有 N N N种取值,因变量有 M M M种取值,考虑自变量等于 i i i且因变量等于 j j j的样本频数的观察值与期望的差距,构建统计量

KL散度、相对熵

MIC

Fisher

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值