当前位置: 首页 > news >正文

RuntimeWarning: invalid value encountered in divide

看到这么多RuntimeWarning: invalid value encountered in divide
简单来说,这是Scikit-learn 的 F-test (f_classif)在向你吐槽:“我的分母变成 0 了!”


1. 为什么会出现这个报错?

F-test 的核心逻辑是计算组间方差组内方差的比值。公式简化后如下:

F=MSbetweenMSwithinF = \frac{\text{MS}_{between}}{\text{MS}_{within}}F=MSwithinMSbetween

出现invalid value encountered in divide通常是因为以下两个原因之一:

  • 常量特征(Constant Features):某个特征在某一类样本(比如全是 NSTEMI 患者)中完全没有变化,导致组内方差为 0。
  • 重复值过多:虽然在 Step 0 删除了全样本方差为 0 的特征,但在交叉验证(Outer Fold)的过程中,数据被切分了。可能在当前的训练集中,某些特征变成了“局部常量”,导致分母为 0。

2. 这会影响你的模型结果吗?

基本不影响。

  • 当 F-test 遇到 0 除以 0 或XXX除以 0 时,它会把该特征的 F 值设为NaN
  • Scikit-learn 通常会将这些NaN处理为极小值或 0,从而在特征选择时自动忽略这些特征。
  • 从你日志中看到的AUC=0.9527来看,模型运行非常成功,说明特征选择和随机森林(RF)都在正常工作。

3. 如何解决/消除这些警告?

如果你想让日志看起来干净一点,可以尝试以下几种方法:

A. 更加严格的预处理(推荐)

在 Step 0 之后,加入对近乎常量特征的筛选。有些特征虽然方差不为 0,但 99% 的值都是一样的。

fromsklearn.feature_selectionimportVarianceThreshold# 剔除 99% 样本都相同的特征selector=VarianceThreshold(threshold=(.99*(1-.99)))X_train=selector.fit_transform(X_train)
B. 临时忽略警告

如果你确定数据没问题,只是不想看到这些红字,可以在代码头部加入:

importnumpyasnpimportwarnings# 忽略运行时警告warnings.filterwarnings('ignore',category=RuntimeWarning)# 或者针对 numpy 的除法警告np.seterr(divide='ignore',invalid='ignore')
C. 检查数据缩放

F-test 对数据分布比较敏感。虽然你提到 Step 0 没有标准化,但通常建议在进行 F-test 前对特征进行简单的缩放(如StandardScalerMinMaxScaler),这有助于数值计算的稳定性。


总结

这是一个计算层面的警告而非逻辑错误。它提示你数据中存在一些在子集下失去区分度的特征。既然你的best_k=100并且跑出了很高的 AUC,说明程序已经自动帮你剔除了那些表现异常的特征。

http://www.jsqmd.com/news/435692/

相关文章:

  • 2026年成都房产典当公司推荐:基于多场景融资需求评价,针对额度与安全核心痛点精准指南 - 品牌推荐
  • C++内存七大坑:新手必看的C++内存避坑指南
  • 2026年汝窑茶具专业选型指南:汝窑盖碗/月白汝窑/汝窑茶壶/办公杯优质供应商推荐 - 品牌推荐官
  • 2026年重庆古奥标识在景区智慧导览标识领域排名及品牌推荐 - 工业设备
  • 面向开发者:淘宝商品评论 API 的使用场景与技术实现(Python 实战版)
  • 在Virtualbox上配置Ubuntu的若干坑
  • 2026年拖链行业新风向:为何机床商务网成为采购首选? - 品牌推荐大师1
  • 分析2026年石磨面粉机械品牌制造商,费用低又靠谱的有哪些 - mypinpai
  • 2026年工控主板厂家推荐:智能制造趋势评测,涵盖机器人及智慧医疗应用场景 - 品牌推荐
  • 锂离子电池穿刺不燃技术取得突破
  • 尝试了各种大模型,都无法从草图及描述直接画出来
  • 2026年工控一体机厂家推荐:基于多行业应用实测评价,针对定制化与成本控制痛点精准指南 - 品牌推荐
  • 题解:蓝桥云课 178 全球变暖
  • 2026年工控主板厂家推荐:智能制造趋势评测,涵盖机器人及数字工业场景核心痛点 - 品牌推荐
  • 创客匠人的生态共建:从单向输出到用户共创的知识服务新范式
  • 2026油烟检测仪/油烟浓度检测仪品牌实力排行TOP10|口碑与性价比综合榜单 - 品牌推荐大师1
  • AI生态包含哪些内容问问四川谦与谦寻科技有限公司精准获客平台
  • 题解:蓝桥云课 3423 安全序列
  • 亿坊·专业家政系统开发|功能全面,支持售后保障+源码交付!
  • zblog升级之后出现后台登录错误
  • java集合面试题
  • 固定床反应器知名品牌(2026年最新版):权威推荐与对比 - 品牌推荐大师1
  • vs加载新项目如何跳过添加的临时模块进行信任检查
  • 分期乐购物额度怎么安全回收?这份避坑攻略请收好 - 可可收
  • 第三方抖音买单系统开发,可直接对接官方接口! - 阿里AI专家
  • 题解:蓝桥云课 3367 破损的楼梯
  • 闲置支付宝立减金别浪费!可可收教你最稳妥的处理方法 - 可可收
  • 测试用随笔
  • 题解:蓝桥云课 182 小朋友崇拜圈
  • 2026年工控一体机厂家推荐:基于行业应用深度评测,直击兼容性与服务响应核心痛点 - 品牌推荐