【机器学习】feature_importances_ 参数源码解析
在用sklearn的时候经常用到feature_importances_ 来做特征筛选,那这个属性到底是啥呢。
分析源码发现来源于每个base_estimator的决策树的
feature_importances_
由此发现计算逻辑来源于cython文件,这个文件可以在其github上查看源代码
而在DecisionTreeRegressor和DecisionTreeClassifier的对feature_importances_定义中
到此决策树的feature_importances_就很清楚了:impurity就是gini值,weighted_n_node_samples 就是各个节点的加权样本数,最后除以根节点nodes[0].weighted_n_node_samples的总样本数。
下面以一个简单的例子来验证下:
上面是决策树跑出来的结果,来看petal width (cm)就是根节点,
featureimportance=(112∗0.6647−75∗0.4956−37∗0)/112=0.5564007189feature_importance=(112*0.6647-75*0.4956-37*0)/112=0.5564007189featureimportance=(112∗0.6647−75∗0.4956−37∗0)/112=0.5564007189,
petal length (cm)的
featureimportance=(75∗0.4956−39∗0.05−36∗0.1528)/112=0.4435992811feature_importance=(75*0.4956-39*0.05-36*0.1528)/112=0.4435992811featureimportance=(75∗0.4956−39∗0.05−36∗0.1528)/112=0.4435992811
忽略图上gini计算的小数位数,计算结果相同。
#待更新
【机器学习】feature_importances_ 参数源码解析相关推荐
- [源码解析] 机器学习参数服务器 Paracel (1)-----总体架构
[源码解析] 机器学习参数服务器 Paracel (1)-----总体架构 文章目录 [源码解析] 机器学习参数服务器 Paracel (1)-----总体架构 0x00 摘要 0x01使用 1.1 ...
- [源码解析] 机器学习参数服务器ps-lite (1) ----- PostOffice
[源码解析] 机器学习参数服务器ps-lite (1) ----- PostOffice 文章目录 [源码解析] 机器学习参数服务器ps-lite (1) ----- PostOffice 0x00 ...
- [源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (5) 嵌入式hash表
[源码解析] NVIDIA HugeCTR,GPU版本参数服务器- (5) 嵌入式hash表 文章目录 [源码解析] NVIDIA HugeCTR,GPU版本参数服务器--- (5) 嵌入式hash表 ...
- 【机器学习】word2vec学习笔记(一):word2vec源码解析
0. word2vec地址 官网地址:https://code.google.com/archive/p/word2vec/ GitHub地址:https://github.com/tmikolov/ ...
- [源码解析] 快手八卦 --- 机器学习分布式训练新思路(1)
[源码解析] 快手八卦 - 机器学习分布式训练新思路(1) 文章目录 [源码解析] 快手八卦 --- 机器学习分布式训练新思路(1) 0x00 摘要 0x01 设计思路 1.1 如何通信 1.2 通信 ...
- Spring源码解析 -- SpringWeb请求参数获取解析
Spring源码解析 – SpringWeb请求参数获取解析 简介 在文章:Spring Web 请求初探中,我们看到最后方法反射调用的相关代码,本篇文章就探索其中的参数是如何从请求中获取的 概览 方 ...
- MySQL核心参数含义的源码解析
引言 你访问的网站,大部分使用Apache服务器;你访问的网站,大部分使用Linux或BSD操作系统:你访问的网站,大部分使用MySQL数据库;你提交DNS域名查询请求大多由BIND服务器分析处理;你 ...
- 8145v5 参数_SpringBoot外化配置源码解析:外化配置简介、参数处理|value|spring|调用|参数值
SpringBoot外化配置源码解析 在前面章节我们讲解了 Spring Boot 的运作核心原理及启动过程中进行的一系列核心操作. 从本章开始,我们将针对在实践过程中应用的不同知识点的源代码进行解读 ...
- PyCrypto密码学库源码解析(二)RSA参数生成
Python Crypto库源码解析(二) RSA参数生成 * 版权声明 * 引用请注明出处,转载请联系: h0.1c@foxmail.com 本文主要讲解pycrypto库中RSA参数生成的实现方法 ...
最新文章
- 程序员自学到底有没有用?网友们吵翻了...
- 学习记录之Focal loss
- (转)那些年我们一起清除过的浮动
- kafka(一)-为什么使用kafka
- vue获取剪切板内容_vue通过clipboard插件实现复制到剪切板功能
- Redis的SETNX
- solve mass matrix in matlab
- linux磁盘健康监控,MegaCli监控RAID磁盘健康信息
- 软件工程师和程序员到底有多大的区别?
- CG100汽车编程器
- java类库编程_进阶Java编程(5)基础类库
- 李少白讲摄影-不放过一切光线 地坛书市新书首发圆满结束
- TIA博途中通过PN耦合器实现不同网段的PLC进行PROFINET通信的具体方法
- Skyline 质谱仪开源分析软件
- 安卓CTS官方文档之兼容性测试套件简介
- matlab如何调用优化算法,MATLAB优化算法(一)
- matlab分形曼德勃罗,曼德勃罗与他的分形几何学
- SpringCloud笔记(二)使用DiscoveryClient手动实现客户端负载均衡
- XP远程桌面连接空密码登陆
- 如果爱有来世,泪眸告别今生