跳到主内容

什么是特征选择?哪些特征应该留下来

2026-10-06 发布 来源:我告诉你AI导航 阅读

训练 AI 模型时,很多人习惯把宽表整列丢进去:一份用户行为表三百多列,点击次数、停留时长、设备型号、近三十天的各类计数全在里面。结果常常不如只留二十列的版本。特征选择处理的就是这件事——从原有特征里挑出真正带信息的那一部分。它解决...

训练 AI 模型时,很多人习惯把宽表整列丢进去:一份用户行为表三百多列,点击次数、停留时长、设备型号、近三十天的各类计数全在里面。结果常常不如只留二十列的版本。特征选择处理的就是这件事——从原有特征里挑出真正带信息的那一部分。它解决什么问题、三种做法各付什么代价、什么情况下会骗人,是下面要讲清的三件事。

特征越多,模型反而越难学

多余的特征通过三条路径损伤模型。其一是维度灾难:特征一多,样本在高维空间里变得稀疏,点与点之间的距离趋于接近,依赖距离的算法(KNN、核方法、聚类)首当其冲。其二是噪声累积:无关列里的随机波动会被模型当成规律记住,样本量越小越明显。其三是共线性:两个高度相关的特征同时进入线性模型,系数会变得不稳定,符号甚至与常识相反。

这三种损伤并不均匀叠加。样本少、特征多的时候,恶化速度比多数人预想的快,所以「先多放一些,让模型自己选」在小数据上通常是坏主意。

三种筛法,代价差一个量级

三种做法在「用什么给特征打分」上分道扬镳,代价也随之拉开。

方法打分依据代价会漏掉什么
过滤法单个特征与标签的统计量:方差、卡方、互信息、相关系数扫一遍统计量,几乎不训练模型需要组合才起作用的特征;特征之间的冗余也看不出来
包裹法目标模型在验证集上的实际效果每换一组就要重训,组合数量随特征数指数增长算力;特征上百时基本跑不动
嵌入法训练中自然产生的系数或分裂增益一次训练完成,开销随模型规模上升共线特征之间重要性被分摊,排名不稳

过滤法几乎不训练模型,适合在几百列里先粗筛一遍;嵌入法一次训练就能拿到结果,是多数场景的默认选项;包裹法只在特征数不多、单次训练又不贵时值得,否则算力会先耗光。

它和降维常被混为一谈。特征选择保留原有列,选出来的东西能直接向人解释;降维把原列组合成新列,压缩率可能更高,但新列往往说不清含义,思路见PCA 降维。需要向业务方或审计解释「为什么用这个变量」时,优先走特征选择。

包裹法为什么更准也更贵

它直接用目标模型在验证集上的表现给一组特征打分,优化的正是你真正关心的指标,选出的子集在下游通常更合用。代价在搜索空间:n 个特征有 2^n 种组合,即便退一步用贪心的前向或后向逐步增减,每一轮都要重训一次模型,配上交叉验证还要再乘折数。特征上百时,这一步的开销往往超过训练最终模型本身。

还有一层隐性成本:包裹法容易过拟合验证集。反复用同一份验证数据挑特征,等于让验证集参与了训练,最终评估会偏乐观。折数多一点,或者另留一份数据复核,能缓解这个问题。

筛选必须发生在训练集内部

最常见的错误是先在全量数据上算相关性、方差或互信息,挑出前若干列,再划分训练集和测试集。这样一来,测试集的分布已经参与了「哪些特征入选」这个决定,评估分数会系统性偏高,上线后回落到真实水平。正确做法是把筛选封进流水线,在交叉验证的每一折里只用该折的训练部分拟合筛选器,再对验证部分做同样的变换。

时间序列还有一层:不能随机打乱划分,要用滚动窗口,让每次筛选只看到当时可获得的数据。否则用上了未来的分布,效果同样是虚的。

模型说没用的特征,未必能删

特征重要性只描述「在这个模型、这份数据、这个目标下」的贡献。换模型、换时间段、换标签定义,排名都会变。更麻烦的是共线特征会互相掩护:删掉一个,另一个顶上来,单看排名会误判某个特征无用,实际上它携带的信息只是被邻居代表了。

它也给不出因果。某个特征与标签强相关,可能只是代理了另一个没被观测到的因素,据此做干预往往出错,这类判断需要实验设计,筛选替代不了。

还有几类特征不能因为「模型不需要」就删:监管或审计要求保留的字段、业务方用来做解释的维度、以及现在无关但业务变化后可能变相关的变量。筛掉之后再想捡回来,往往要重跑整条链路。另外,特征选择修不了数据本身的问题——标签噪声、采样偏差、缺失机制,它一概无能为力,相关内容可以对照过拟合的成因与正则化的思路一起看。

怎么判断一次筛选是否可信

四个检查:换几次重采样(bootstrap 或不同随机种子)后入选集合是否稳定;去掉入选特征后模型指标掉多少,掉得少说明它们本来就不关键;留下的特征之间是否还高度相关;以及每个入选特征在业务上能否说清它代表什么。最后一条最常被跳过,却最影响落地——一个说不清含义的强特征,上线后没人敢用。

树模型自带的重要性可以直接取用,代价是它对共线特征处理得更粗糙,取值类别多的特征还会被高估,所以决策树一类模型给出的排名更适合当参考,不适合当判决。

速查:特征选择四问

  • 筛选是在训练折内做的,还是用全量数据做的
  • 入选集合换几次重采样还稳定吗
  • 留下的特征之间是否还高度相关
  • 每个特征能否用一句业务语言说清

反馈页面信息

请描述需要更正的地方,页面标题和网址会自动附上。

也可以发邮件至 [email protected]