漫谈机器学习之小知识点总结

0x00 前言

总结一些之前学习机器学习的小知识点。

0x01 标签和特征

什么是标签,什么是特征?我们可以先这样大概理解:标签是一个归纳性描述;特征则是一个细节性描述。

比如说:我们可能会根据西瓜的颜色、瓜蒂的形状、敲击的声音来判断一个瓜是否是好瓜。其中这些判断条件就是特征,这个瓜是好瓜还是坏瓜就是标签。

更抽象一点,特征是做出某个判断的证据,标签是结论。

0x02 二分类和多分类

二分类和多分类中的这个“二”和“多”是针对标签来讲的。

  • 二分类就是指一个物体最后被打的标签可能有两种,比如说,一句话会被打上两种标签:积极的和消极的。

  • 多分类是标签可选值有很多。比如我们可能会给一句话打上多种标签:十分积极的,积极的,中等的,消极的,十分消极的。这就是多分类。

0x03 归一化

不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化处理,以解决数据指标之间的可比性。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。以下是两种常用的归一化方法:

1. min-max标准化(Min-Max Normalization)

也称为离差标准化,是对原始数据的线性变换,使结果值映射到[0 - 1]之间。转换函数:

x* = (x-min)/(max-min)

其中max为样本数据的最大值,min为样本数据的最小值。这种方法有个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。

2. Z-score标准化方法

这种方法给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1,转化函数为:

x* = (x-u) / d

其中u为所有样本数据的均值,d为所有样本数据的标准差。

参考:http://www.cnblogs.com/chaosimple/p/3227271.html

0x04 one-hot

没有大小关系的数据在输入到算法中时最好要做离散化。就是我们的one-hot。

那么什么是one-hot呢?

在实际的机器学习的应用任务中,特征有时候并不总是连续值,有可能是一些分类值,如性别可分为“male”和“female”。在机器学习任务中,对于这样的特征,通常我们需要对其进行特征数字化,如下面的例子:

有如下三个特征属性:

  • 性别:["male","female"]
  • 地区:["Europe","US","Asia"]
  • 浏览器:["Firefox","Chrome","Safari","Internet Explorer"]

对于某一个样本,如["male","US","Internet Explorer"],我们需要将这个分类值的特征数字化,最直接的方法,我们可以采用序列化的方式:[0,1,3]。但是这样的特征处理并不能直接放入机器学习算法中。

One-Hot Encoding的处理方法

对于上述的问题,性别的属性是二维的,同理,地区是三维的,浏览器则是思维的,这样,我们可以采用One-Hot编码的方式对上述的样本“["male","US","Internet Explorer"]”编码,“male”则对应着[1,0],同理“US”对应着[0,1,0],“Internet Explorer”对应着[0,0,0,1]。则完整的特征数字化的结果为:[1,0,0,1,0,0,0,0,1]。这样导致的一个结果就是数据会变得非常的稀疏。

参考:http://blog.csdn.net/google19890102/article/details/44039761

你可能感兴趣的:(漫谈机器学习之小知识点总结)