机器学习-特征提取
来源:互联网 发布:917发卡源码 编辑:程序博客网 时间:2024/06/05 18:39
第4步:特征工程
或许比选择算法更重要的是正确选择表示数据的特征。从上面的列表中选择合适的算法是相对简单直接的,然而特征工程却更像是一门艺术。
主要问题在于我们试图分类的数据在特征空间的描述极少。利如,用像素的灰度值来预测图片通常是不佳的选择;相反,我们需要找到能提高信噪比的数据变换。如果没有这些数据转换,我们的任务可能无法解决。利如,在方向梯度直方图(HOG)出现之前,复杂的视觉任务(像行人检测或面部检测)都是很难做到的。
虽然大多数特征的有效性需要靠实验来评估,但是了解常见的选取数据特征的方法是很有帮助的。这里有几个较好的方法:
主成分分析(Principal component
analysis,PCA):一种线性降维方法,可以找出包含信息量较高的特征主成分,可以解释数据中的大多数方差。尺度不变特征变换(Scale-invariant feature
transform,SIFT):计算机视觉领域中的算法,用以检测和描述图片的局部特征。它有一个开源的替代方法
ORB(Oriented FAST and rotated BRIEF)。加速稳健特征(Speeded up robust features,SURF):SIFT 的更稳健版本。
方向梯度直方图(Histogram of oriented
gradients,HOG):一种特征描述方法,在计算机视觉中用于计数一张图像中局部部分的梯度方向的发生。更多算法请参考:https://en.wikipedia.org/wiki/Visual_deor
当然,你也可以想出你自己的特征描述方法。如果你有几个候选方法,你可以使用封装好的方法进行智能的特征选择。
前向搜索:
最开始不选取任何特征。
然后选择最相关的特征,将这个特征加入到已有特征;计算模型的交叉验证误差,重复选取其它所有候选特征;最后,选取能使你交叉验证误差最小特征,并放入已选择的特征之中。
重复,直到达到期望数量的特征为止!
反向搜索:
- 从所有特征开始。
- 先移除最不相关的特征,然后计算模型的交叉验证误差;对其它所有候选特征,重复这一过程;最后,移除使交叉验证误差最大的候选特征。
- 重复,直到达到期望数量的特征为止!
使用交叉验证的准则来移除和增加特征!
第5步:超参数优化(可选)
最后,你可能想优化算法的超参数。例如,主成分分析中的主成分个数,k 近邻算法的参数 k,或者是神经网络中的层数和学习速率。最好的方法是使用交叉验证来选择。
一旦你运用了上述所有方法,你将有很好的机会创造出强大的机器学习系统。但是,你可能也猜到了,成败在于细节,你可能不得不反复实验,最后才能走向成功。
- 特征提取+机器学习
- 机器学习-特征提取
- 【机器学习】ICA特征提取
- 机器学习中特征选择和特征提取区别
- 机器学习特征提取 | 自动特征工程featuretools
- 机器视觉:特征提取
- 机器视觉:特征提取
- 机器视觉:特征提取
- 机器视觉:特征提取
- 机器学习系列:(三)特征提取与处理
- <机器学习笔记-03><scikit-learn 03>特征提取
- 机器学习系列:(三)特征提取与处理
- Spark机器学习之特征提取、选择、转换
- 机器学习之数据清洗与特征提取
- 机器学习实战——LBP特征提取
- 机器学习第三课——特征提取
- 漫谈机器学习经典算法—特征提取与特征选择
- 白话机器学习算法(十五)文档与图片的特征提取(学习笔记)
- 关于获取Gridcontrol中repositoryItemLookUpEdit的使用
- 选择排序
- python多进程插入redis
- python提示错误TypeError: write() argument must be str, not bytes
- ubuntu部署flask
- 机器学习-特征提取
- 基于Dragonboard410c的智能音箱(三)
- 解决combox在火狐下不支持中文检索问题
- angularjs过滤器
- eclise 部署web工程报 There are no resources that can be added or removed from the server.
- html中table表格内容水平垂直居中显示
- char与varchar类型区别的深度剖析
- Android:控件WebView显示网页
- jdk+tomcat8+配置HTTPS访问+maven (centos7)