10-3[RF] feature selection
main idea:
计算每一个feature的重要性,选取重要性前k的feature;
衡量一个feature重要的方式:如果一个feature重要,则在这个feature上加上noise,会对最后performance影响很大。
1.feature selection的含义及优缺点
去除冗余的特征(比如,年龄和出生年月两个特征,根据出生年月能计算出年龄)
无关的特征(研究病人的病情,和他的医保类型没有关系)
优点(选好特征后):
a. 效率(feature变少,维度变低)
b. 泛化(坏的特征被剔除,相当于剔除了特征中noise)
c. 可解释性
缺点(特征选择时):
a. 特征组合的个数很多,如果遍历每种组合,计算量大
b. 如果没有选到合适的特征,用一些不怎么好的特征进行模型训练,会带来过拟合
c. 如果b中情况发生,则不具有可解释性
2.feature select方法
a.linear model
$W^tx$,$W_i$小,表示该特征不重要
b.permutation test
根据加上noise和没有加noise之间的performance差距衡量特征的重要性
使用permutation,在feature i上加noise(保持了feature i的分布):
保持其他feature不变,随机排列 $X_{ni}$ 的顺序
3.结合OOB做feature selection(针对 Random Forest)
根据上面的公式,可以知道,需要进行d+1次训练(d为特征的个数),原始数据上进行的训练+d(特征i上进行permutation)
据上进行的训练
当使用bagging时,会有一部分数据没有被使用,成为OOB数据,用这些数据进行OOB validation
在validation时,在OOB 数据上进行permutation
10-3[RF] feature selection的更多相关文章
- Feature Selection Can Reduce Overfitting And RF Show Feature Importance
一.特征选择可以减少过拟合代码实例 该实例来自机器学习实战第四章 #coding=utf-8 ''' We use KNN to show that feature selection maybe r ...
- 【转】[特征选择] An Introduction to Feature Selection 翻译
中文原文链接:http://www.cnblogs.com/AHappyCat/p/5318042.html 英文原文链接: An Introduction to Feature Selection ...
- 单因素特征选择--Univariate Feature Selection
An example showing univariate feature selection. Noisy (non informative) features are added to the i ...
- 机器学习-特征选择 Feature Selection 研究报告
原文:http://www.cnblogs.com/xbinworld/archive/2012/11/27/2791504.html 机器学习-特征选择 Feature Selection 研究报告 ...
- the steps that may be taken to solve a feature selection problem:特征选择的步骤
參考:JMLR的paper<an introduction to variable and feature selection> we summarize the steps that m ...
- [Feature] Feature selection
Ref: 1.13. Feature selection Ref: 1.13. 特征选择(Feature selection) 大纲列表 3.1 Filter 3.1.1 方差选择法 3.1.2 相关 ...
- [Feature] Feature selection - Embedded topic
基于惩罚项的特征选择法 一.直接对特征筛选 Ref: 1.13.4. 使用SelectFromModel选择特征(Feature selection using SelectFromModel) 通过 ...
- highly variable gene | 高变异基因的选择 | feature selection | 特征选择
在做单细胞的时候,有很多基因属于noise,就是变化没有规律,或者无显著变化的基因.在后续分析之前,我们需要把它们去掉. 以下是一种找出highly variable gene的方法: The fea ...
- The Practical Importance of Feature Selection(变量筛选重要性)
python机器学习-乳腺癌细胞挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003&u ...
随机推荐
- Oracle EBS-SQL (BOM-14):检查工艺路线明细.sql
select msi.segment1 装配件编码, msi.description ...
- java设计模式--行为型模式--命令模式
命令模式 概述 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化:对请求排队或记录请求日志,以及支持可撤消的操作. 适用性 .抽象出待执行的动作以参数化某对象. .在不同的时刻指定.排 ...
- Node.js log1: ERR can not find module express
1.win7下创建项目中提示输入的命令:cd project&&npm install 安装失败 输入上面提示的命令,预期结果:自动安装了依赖 ejs 和 express,失败提 ...
- 2.2.2 胸腰差和胸臀差的应用_米人NOONE_新浪博客
2.2.2 胸腰差和胸臀差的应用_米人NOONE_新浪博客 腰差和胸臀差的应用(2009-06-16 19:24:57)转载▼标签:校园 前面已经对这两个概念作了简单的讲解.这两个概 ...
- C语言当中的作用域
在C语言当中,变量的作用域分为两种:全局变量和局部变量. 在所有函数之外声明的变量是全局变量,这些变量可以在整个程序当中被访问: 局部变量是在某一对大括号({})之间生命的变量,这些变量在这对大括号之 ...
- malloc用法
malloc用法三部曲:(#include<stdlib.h>下的库函数) 1.malloc eg.ps=(char*)malloc(sizeof(char)*20)的意思是,动态分配空间 ...
- 解决的方法:warning: Clock skew detected. Your build may be incomplete.
因为时钟同步问题.出现 warning: Clock skew detected. Your build may be incomplete.这种警告, 解决的方法: find . -type f ...
- 使用FileSystemWatcher捕获系统文件状态
源代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sys ...
- HDU 5781 ATM Mechine
题目大意:某个未知整数x等概率的分布在[0,k]中.每次你都可以从这个整数中减去一个任意整数y,如果x>=y,那么x=x-y,操作次数累计加1:否则,将会受到一次错误提示.当错误提示超过w次,将 ...
- radio与checkbox
最近一直在学习Javascript与asp.net MVC4,每天都在跟着书学习.这样总感觉自己看的很抽象,没有点实际的意义.而且,每次看的东西很容易忘记,所以打算在这里记录自己的学习笔记. Java ...