机器学习——交叉验证与特征选择
2015-11-01 18:53
295 查看
k-折叠交叉验证是一种在机器学习中很常用的方法,简单来说就是手头有是10个数据,取2-10为样本数据,用来学习,生成公式后将第一个数据送入公式进行计算,下次则选取第二个数据作为测试数据,1,3-10这九个数据作为样本数据进行学习,如此计算。如此循环十次,可以得到一个错误率,用以判定学习的结果怎么样。
k指的是将你的数据分为k份,进行k次循环,上面的例子的k就是10。如果每一个样例都做测试, 这就叫做leave-one-out cross validation。
用途:对于一个问题,你如果有多种模型可以进行选择,此时就可以通过交叉验证计算各个模型的错误率。
在机器学习中, 一个具有n个特征的样本可能很多的特征实际上都是没有作用的,我们可以人为地去掉一些特征,但一些隐含的无关特征寻找起来就比较麻烦了,需要计算才能知道这个特征的相关性。
这里有两种方法:
(1)前向搜索。基本原理就是从0开始每次增量地从n个特征中选一个加入特征集,交叉验证计算错误率。如此循环n次,寻找出错误率最小的。这个方法计算量非常大
(2)过滤特征选择法。
此方法通过计算每一个特征与标签之间信息量来作一个由大到小的排名,然后就是逐个添加特征量,交叉验证求出最小的错误率。
计算信息量——互信息公式:
k指的是将你的数据分为k份,进行k次循环,上面的例子的k就是10。如果每一个样例都做测试, 这就叫做leave-one-out cross validation。
用途:对于一个问题,你如果有多种模型可以进行选择,此时就可以通过交叉验证计算各个模型的错误率。
在机器学习中, 一个具有n个特征的样本可能很多的特征实际上都是没有作用的,我们可以人为地去掉一些特征,但一些隐含的无关特征寻找起来就比较麻烦了,需要计算才能知道这个特征的相关性。
这里有两种方法:
(1)前向搜索。基本原理就是从0开始每次增量地从n个特征中选一个加入特征集,交叉验证计算错误率。如此循环n次,寻找出错误率最小的。这个方法计算量非常大
(2)过滤特征选择法。
此方法通过计算每一个特征与标签之间信息量来作一个由大到小的排名,然后就是逐个添加特征量,交叉验证求出最小的错误率。
计算信息量——互信息公式:
相关文章推荐
- beanstalk机制
- iOS开发者不可不知的8件事
- 正则表达式1
- scroll中放入listview,并解决scroll初始化不置顶问题,listviewscroll
- C中的优先级
- 30天从0开始学习Swift
- delete和truncate的区别比较
- Matlab中的取整函数
- Codevs1066 引水入城
- 信息安全系统设计基础第八周期中学习总结—20135227黄晓妍
- SpringIOC_创建对象的时机
- openjudge1.11编程基础之二分查找 04:网线主管
- android自定义带有布局视图的对话框
- Canvas绘图-js
- java学习笔记.07——内部类
- 如何让ListView的item不可点击
- hdu 3605 Escape 状态压缩+最大流
- 第二次参加CF。
- PAT 1018. Public Bike Management (30)
- 分页插件开发(2)--页面按钮显示