Python数据科学手册(5)--- 机器学习

Python数据科学手册最后一章讲的是机器学习,这是一个很大的课题,每一种算法都可以钻研,远不是一篇文章能讲清楚的,这里主要总结一下书中关于特征工程的课题。
俗话说,巧妇难为无米之炊。在机器学习中,数据和特征便是“米”,模型和算法则是“巧妇”。对于一个机器学习问题,数据和特征往往决定了结果的上限。特征工程是对原始数据进行一系列工程处理,将其提炼为特征,作为输入和算法和模型使用。

分类特征
一种常见的非数值数据类型是分类数据,例如性别(男女),血型等。有多种方式:序号编码(ordinal encoding),独热编码(one-hot encoding),二进制编码(binary encoding).
1.1 序号编码
序号编码通常用于处理类别间具有大小关系的数据。例如成绩,可以分为低中高三挡,并且存在“高>中>低”的排序关系。序号编码会按照大小关系对类别特征赋予一个数值ID,例如高中低依次为321,转换后依然保留了大小关系。
1.2 独热编码
通常用来处理类别间不具有大小关系的特征,例如血型,一共四个取值(A,B,AB,O),独热编码会把血型变成一个四维稀疏向量,A型血表示为(1,0,0,0),B型表示为(0,1,0,0),AB型血表示为(0,0,1,0),O血型表示为(0,0,0,1).
1.3 二进制编码
二进制编码主要分为两步,先用序号编码给每个类别赋予一个类别ID,然后将类别ID对应的二进制编码作为结果。二进制编码本质上是利用了二进制进行哈希映射,最终得到0/1特征向量,且维数少于独热编码,节省了存储空间。
Python数据科学手册(5)--- 机器学习_第1张图片

你可能感兴趣的:(Python)