何为优秀的机器学习特征 zz
提供好的特征是机器学习任务中最重要的工作,那么何为优秀的机器学习特征?以及如何高效地组合这些特征?
以二分类问题为例,好的特征具有很好的区分性。例如学习任务是区分两种不同类型的狗:灰猎犬(Greyhound)和拉布拉多犬(Labrador)。假设有身高和眼睛的颜色两种特征。一般而言,灰猎犬的平均身高要比拉布拉多犬要高一些,而狗的眼睛的颜色不取决于够的品种,因此可以认为“身高”这个特征就比“眼睛颜色”这个特征更有用,因为“眼睛颜色”这个特征没有告诉我们任何信息。

虽然灰猎犬的平均身高要比拉布拉多犬要高一些,但并不是说所有灰猎犬的身高都要比拉布拉多犬要高,那么为什么“身高”是一个有用的特征呢?假设在一个数据集D上两种类型的狗的身高分布如下图所示,其中红色表示灰猎犬,蓝色表示比拉布拉多犬。在这个数据集D上灰猎犬和拉布拉多犬各有500值,平均身高分别为28英寸和24英寸。

现在我们需要断定在特定的身高每种狗的概率分布。现假设有一批身高为20英寸的狗,我们该如何预测这批狗的品种,使得我们的预测错误率最低呢?根据上面的图,我们判断这批狗中的大部分可能是拉布拉多犬。同样,看图的靠右侧的柱状图,比如35英寸的身高的狗我们有信心认为其是灰猎犬。25英寸高的狗呢?这个时候我们就很难判断其是什么品种了。综上,身高是一个有用的特征,但它并不完美。一般而言,机器学习任务都很难只需要单一的特征。这就是为什么在机器学习任务里我们需要多种特征,否则就不需要机器学习算法,而只需要写if else语句就够了。Features capture different types of information。
假设一个特征的取值在二分类任务的正例和反例中各占大概一半的比例,那么这样的特征是没有用的,比如上面例子中的狗的眼睛颜色。无用的特征会降低分类器的准确率,特别是在样本数量较少的情况下。
由于不同类型的特征还应该包含不同类型的信息,这样才能够起到互相补充的作用。也就是说应该避免冗余的特征。比如“单位为英寸的身高”和“单位和厘米的身高”两个特征之间并不是相互独立的,只是同一个属性的2种不同维度的测试数据而已,因此这2个特征只要保留其中一个就可以了。应该删除与已有特征高度密切相关的特征。
最后,好的特征还应该是易于理解的。比如要预测从一个城市寄一封信去另一个城市需要多长时间可以到达,一个易于理解的特征的例子是这2座城市之间的距离;一个不易于理解的特征组合是这2个城市各种的经纬度信息。因为简单的关系更加易于学习,复杂的关系则需要更多的训练数据,因此更难被学习出来。
总结
- 避免无用的特征(avoid useless features)
- 避免冗余的特征(avoid redundant features)
- 使用易于理解的简单特征(good features should easy to understand)
好的特征具有如下的特点:
- 有区分性(Informative)
- 特征之间相互独立(Independent)
- 简单易于理解(Simple)
何为优秀的机器学习特征 zz的更多相关文章
- 【Machine Learning】机器学习の特征
绘制了一张导图,有不对的地方欢迎指正: 下载地址 机器学习中,特征是很关键的.其中包括,特征的提取和特征的选择.他们是降维的两种方法,但又有所不同: 特征抽取(Feature Extraction): ...
- 机器学习-特征工程-Missing value和Category encoding
好了,大家现在进入到机器学习中的一块核心部分了,那就是特征工程,洋文叫做Feature Engineering.实际在机器学习的应用中,真正用于算法的结构分析和部署的工作只占很少的一部分,相反,用于特 ...
- 机器学习-特征工程-Feature generation 和 Feature selection
概述:上节咱们说了特征工程是机器学习的一个核心内容.然后咱们已经学习了特征工程中的基础内容,分别是missing value handling和categorical data encoding的一些 ...
- 深度CTR预估模型中的特征自动组合机制演化简史 zz
众所周知,深度学习在计算机视觉.语音识别.自然语言处理等领域最先取得突破并成为主流方法.但是,深度学习为什么是在这些领域而不是其他领域最先成功呢?我想一个原因就是图像.语音.文本数据在空间和时间上具有 ...
- zz 机器学习系统或者SysML&DL笔记
机器学习系统或者SysML&DL笔记(一) Oldpan 2019年5月12日 0条评论 971次阅读 1人点赞 在使用过TVM.TensorRT等优秀的机器学习编译优化系统以及Py ...
- 【机器学习】Google机器学习工程的43条最佳实践
https://blog.csdn.net/ChenVast/article/details/81449509 本文档旨在帮助那些掌握机器学习基础知识的人从Google机器学习的最佳实践中获益.它提供 ...
- 机器学习基石(台湾大学 林轩田),Lecture 1: The Learning Problem
课程的讲授从logo出发,logo由四个图案拼接而成,两个大的和两个小的.比较小的两个下一次课程就可能会解释到它们的意思,两个大的可能到课程后期才会解释到它们的意思(提示:红色代表使用机器学习危险,蓝 ...
- 机器学习规则:ML工程最佳实践----rules_of_ml section 1【翻译】
作者:黄永刚 机器学习规则:ML工程最佳实践 本文旨在指引具有机器学习基础知识的工程师等人,更好的从机器学习的实践中收益.介绍一些应用机器学习需要遵循的规则,类似于Google C++ 风格指南等流行 ...
- OpenCV中基于Haar特征和级联分类器的人脸检测
使用机器学习的方法进行人脸检测的第一步需要训练人脸分类器,这是一个耗时耗力的过程,需要收集大量的正负样本,并且样本质量的好坏对结果影响巨大,如果样本没有处理好,再优秀的机器学习分类算法都是零. 今年3 ...
随机推荐
- Linux命令-挂载命令:mount
设置虚拟机放入光盘,并且选中“已连接” mkdir /mnt/cdrom 设置光盘目录 ll /dev/cdrom 查看cdrom的软连接长格式信息 mount -t iso9660 /dev/sr0 ...
- openssh相关
openssh相关 DSA RSA,非对称加密,产生公钥.私钥,前者存放在remote,后者存放在local,ssh-keygen产生公钥私钥时,提示输入私钥密码,防止私钥泄露被盗 ssh ...
- nor flash 和nand flash 的区别
ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写.ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是 ...
- 【算法导论C++代码】最大子数组
#define Inf 65535 #include <iostream> using namespace std; void FindMaxCrossingSubarray(int *A ...
- app store 注册账号生成证书上传app完整的教程
app store为开发者提供四种类型的申请: 个人ios开发者计划$99/年 公司ios开发者计划$99/年 企业ios开发者计划$299/年 高校ios开发者计划免费 在这里主要介绍一下公司ios ...
- dubbo forbid 注意的几种方式
1.检查所调用的项目模块是否起来了 2.如果起来后,检查该模块配置是否正确 3.服务端起来后与管理端的项目内容不一致(比如服务端增加了东西,管理端没有更新)
- Android 使用 Gradle 多渠道打包
安卓开发完毕.对于一个开放应用而言,我们须要公布到不同的应用市场,同一时候我们也须要统计不同市场的用户下载量. (通过启动应用后获取不同市场apk中的不同值来区分) 以下用一个详细的实例来说明: 1. ...
- 无废话MVC入门教程一[概述、环境安装、创建项目]
(转载) 本文目标 1.对MVC有初步的了解 2.能够在VS2010的基础之上安装MVC3的开发和运行环境 3.对MVC框架有概括性的认识 本文目录 1.什么是MVC 2.VS2010安装MVC3 3 ...
- 算法笔记_057:蓝桥杯练习 最大的算式 (Java)
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 题目很简单,给出N个数字,不改变它们的相对位置,在中间加入K个乘号和N-K-1个加号,(括号随便加)使最终结果尽量大.因为乘号和加号一共就 ...
- Apache James 发送邮件到外网
在config.xml文件中查找到<dnsserver>然后把默认的<server> 127.0.0.1</server> 改成如下形式:<dnsserver ...