本节课要点:

  • VC维:
  • 模型选择算法

特征选择


vc维:个人还是不太理解。个人的感觉就是为核函数做理论依据,低维线性不可分时,映射到高维就可分,那么映射到多高呢?我把可分理解为“打散”。

参考的资料:http://www.cnblogs.com/boostable/p/iage_VC_dimension.html?utm_source=tuicool(前面的讲解很不错)

http://www.svms.org/vc-dimension/

http://www.tnove.com/?p=423&utm_source=tuicool


模型选择

选择过于简单的模型,可能会导致欠拟合;

选择过于复杂的模型,可能会导致过拟合。

那么问题来了?

如何选择适合的模型呢?

摘自http://blog.csdn.net/stdcoutzyx:机器学习的模型有很多,如何在多个模型中选择最好的一个?即便对于同一个模型来说,又如何选择最好的参数?这就是本节要解决的问题。具体举几个例子,比如多项式模型如何选择阶数?svm 模型如何选择惩罚参数 C 和正则化项?局部加权回归如何选择带宽参数?如何从神经网络与 svm 模型中选择一个较好的模型?等等。

我们希望能够找到一个自动选择模型的方法。

两种方法:保留交叉验证和特征选择。

保留交叉验证:

对于一个给定的训练集合,将其随机地划分成两个子集:训练集和保留交叉验证集。

之后用训练集训练模型,用保留交叉验证集进行测试。最后选择具有最小测试误差的模型作为最后的结果。

变种1:K重交叉验证:把数据集合分成k份。从第一份数据开始,保留第一份数据的(k-1)/k进行训练,用剩下的1/k进行测试。这样会得到k个误差,然后再取平均。

k取10比较常见。这样做的优点:只需要留出更少的数据用于测试;缺点:需要大量的计算。

变种2:留1交叉验证:划分的数目和样本的数目一样多。留出第一个样本进行测试,用剩下的进行训练;留出第二个样本进行测试,用剩下的进行训练;留出第三个样本进行测试,用剩下的进行训练……

数据少的时候可以采用。

特征选择:

假设有n个特征,则有2^n个子集。我们要在这2^n个子集中选用一个集合,需要采用不同的启发式搜索算法。

1、前向搜索算法(前向选择算法):从1~n,尝试将特征i加入到集合,并进行交叉验证。筛选出最好的特征F。计算量大。

2、封装特征选择,后向选择算法:F初始为全部特征,然后从1~n,尝试逐个删除特征i,然后再进行交叉验证。

3、过滤特征选择算法:对于每个特征i,衡量其对y的影响。计算与y的相关度。比如在文本分类问题中,我们常用的停用词,就是和y不相关,所以可以直接删掉。取相关度最大的前k个的特征,k多大,可以用交叉验证来计算。

【cs229-Lecture10】特征选择的更多相关文章

  1. 挑子学习笔记:特征选择——基于假设检验的Filter方法

    转载请标明出处: http://www.cnblogs.com/tiaozistudy/p/hypothesis_testing_based_feature_selection.html Filter ...

  2. 用信息值进行特征选择(Information Value)

    Posted by c cm on January 3, 2014 特征选择(feature selection)或者变量选择(variable selection)是在建模之前的重要一步.数据接口越 ...

  3. MIL 多示例学习 特征选择

    一个主要的跟踪系统包含三个成分:1)外观模型,通过其可以估计目标的似然函数.2)运动模型,预测位置.3)搜索策略,寻找当前帧最有可能为目标的位置.MIL主要的贡献在第一条上. MIL与CT的不同在于后 ...

  4. 【转】[特征选择] An Introduction to Feature Selection 翻译

    中文原文链接:http://www.cnblogs.com/AHappyCat/p/5318042.html 英文原文链接: An Introduction to Feature Selection ...

  5. 单因素特征选择--Univariate Feature Selection

    An example showing univariate feature selection. Noisy (non informative) features are added to the i ...

  6. 主成分分析(PCA)特征选择算法详解

    1. 问题 真实的训练数据总是存在各种各样的问题: 1. 比如拿到一个汽车的样本,里面既有以“千米/每小时”度量的最大速度特征,也有“英里/小时”的最大速度特征,显然这两个特征有一个多余. 2. 拿到 ...

  7. 干货:结合Scikit-learn介绍几种常用的特征选择方法

    原文  http://dataunion.org/14072.html 主题 特征选择 scikit-learn 作者: Edwin Jarvis 特征选择(排序)对于数据科学家.机器学习从业者来说非 ...

  8. 【Machine Learning】wekaの特征选择简介

    看过这篇博客的都应该明白,特征选择代码实现应该包括3个部分: 搜索算法: 评估函数: 数据: 因此,代码的一般形式为: AttributeSelection attsel = new Attribut ...

  9. weka特征选择(IG、chi-square)

    一.说明 IG是information gain 的缩写,中文名称是信息增益,是选择特征的一个很有效的方法(特别是在使用svm分类时).这里不做详细介绍,有兴趣的可以googling一下. chi-s ...

  10. 文本挖掘之特征选择(python 实现)

    机器学习算法的空间.时间复杂度依赖于输入数据的规模,维度规约(Dimensionality reduction)则是一种被用于降低输入数据维数的方法.维度规约可以分为两类: 特征选择(feature ...

随机推荐

  1. e739. 创建一个标签组件

    // The text is left-justified and vertically centered JLabel label = new JLabel("Text Label&quo ...

  2. Python学习注脚

    python版本:2.7.6 Python基础学习书摘. 变量命名规范: python的变量名只能由字母和数字组成,且必须以字母开头. python的变量名不能使用系统已有的关键字,包括: and c ...

  3. 非常酷的CSS3垂直下拉动画菜单

    昨天我向大家介绍了一款兼容性不错的jQuery淡入淡出下拉菜单,今天要分享一款相对绚丽的CSS3垂直下拉动画菜单,不过需要支持CSS3的浏览器才能有效果.下面是效果图,一起看看. 我们也可以在这里查看 ...

  4. fedora26在编译s3c2440内核时make menuconfig *** Unable to find the ncurses libraries

    [root@fedora-26 linux-2.6.32.2]# make menuconfig *** Unable to find the ncurses libraries or the *** ...

  5. Linux 查看系统硬件信息

    linux查看系统的硬件信息,并不像windows那么直观,这里我罗列了查看系统信息的实用命令,并做了分类,实例解说. cpu lscpu命令,查看的是cpu的统计信息. blue@blue-pc:~ ...

  6. 通过tarball形式安装HBASE Cluster(CDH5.0.2)——Hadoop NameNode HA 切换引起的Hbase错误,以及Hbase如何基于NameNode的HA进行配置

    通过tarball形式安装HBASE Cluster(CDH5.0.2)——Hadoop NameNode HA 切换引起的Hbase错误,以及Hbase如何基于NameNode的HA进行配置 配置H ...

  7. 【.NET】正则表达式笔记

    很早就听说正则表达式的强大,今天终于一睹它的真容,在这里记下学习时候的笔记,以便以后查看 1.正则表达式 用于描述字符串规则的的特殊的字符(正则表达式本身是字符串,用来描述字符串的相关规则,用于与其他 ...

  8. .NET 获取Get方式URL中的参数键值

    在Web开发中,我们常常会涉及到需要获取Get方式URL中的参数键值的情况,这里简单介绍三种方法: 第一种:常用的做法有使用JavaScript获取location.href后用正则表达式匹配获取此U ...

  9. UNIX环境编程学习笔记(8)——文件I/O之校验当前登录用户对文件的访问权限

    lienhua342014-09-03 通过前面一篇随笔(文件访问权限与进程访问控制),我们知道内核校验文件的访问权限使用的是进程的有效用户 ID 和有效组 ID.但有时我们需要知道当前登录用户对某个 ...

  10. Data Set Config配置元件

    右键点击Jmeter中需要参数化的某个请求,选择添加——配置原件——CSV Data Set Config,会添加一个CSV Data Set Config,需要设置相关的一些内容,具体如下: