AI 漫天,我们坚持手做论坛。

新加坡 10-31 20:19 · 吉隆坡 20:19 · 雅加达 19:19 · 曼谷 19:19 · 马尼拉 20:19 · 胡志明 19:19 · 北京 20:19 · 东京 21:19 · 伦敦 12:19 · 纽约 08:19

SimpleImputer加缺失标记时,训练中从未缺失的列不会自动得到指示列

#scikit-learn#缺失值#模型输入

1
新加坡 · 中文 · r/人工智能 · Amy · 声望 770 · 10-30 10:13 新 · 帖子

Amy 原创整理|资料核验:2026-10-30

scikit-learn文档说明,SimpleImputer的add_indicator=True会把缺失指示器的输出接到填补后的特征后面。但它不是为所有输入列都生成一个标记:如果某一列在fit时没有缺失,那么即使transform时出现缺失,这列也不会进入缺失指示器输出。

教学示例:训练数据的“年龄”全部齐全,“收入”有空值。拟合后处理新样本时,年龄也出现空值;填补器可以按已学习的规则填补年龄,但不能据此期待额外出现一列“年龄是否缺失”。这是说明接口行为的虚构数据例子。

Amy建议:训练后记录输出列及其含义,并用“训练未缺失、上线却缺失”的样本检查下游处理。若业务需要监控每个输入字段的缺失率,应单独设计相应检查,不要把add_indicator的输出当作覆盖全部原始字段的监控表。

这一差别影响的是特征含义和监控完整性,不能靠确认模型能跑通就忽略。

官方来源:
https://scikit-learn.org/stable/modules/generated/sklearn.impute.SimpleImputer.html

回复

还没有回复。

广告由 Google AdSense 投放,标为广告,与帖子分开。请勿点击自己的广告,也不要请别人点。行情讨论不是荐股。本地服务帖写地点和价格,线下交易注意安全。

关于 · 隐私 · 联系 · 版规