1/什么是特征缩放
主要是归一化,标准化,正则化,
用于消除量纲关系的影响。
基于参数的模型和基于距离的模型,都需要进行数据归一化。
基于树的模型,不需要进行数据归一化。
2/什么是特征编码
主要是序号编码、one-hot编码(独热编码)等,
主要是处理分类特征,包括有序类别特征和无序类别特征。
<1>什么是序号编码(label encode)
定义:序号编码一般用于处理特征内的特征值之间具有大小关系的数据。
比如成绩,可以分为高、中、低三个档次,并且存在“高>中>低”的大小关系,
比如收入,可以分为高,中,低三个档次,并且高>中>低的大小关系。
那么序号编码可以对这三个档次进行编码:高表示为3,中表示为2,低表示为 1,
这样转换后依然保留了大小关系。
可以理解为:把类别从字符串
<2>什么是独热编码(one-hot encode)
定义:独热编码通常用于处理特征内的特征值之间不具有大小关系的特征。
独热编码是采用N位状态位来对N个可能的取值进行编码。
比如血型,一共有4种取值(A、B、AB 以及 O 型),
比如性别,男和女,没有大小关系。一个人只能是其中的一种。
那么独热编码会将血型转换为一个4维稀疏向量,分别表示上述四种血型为:
A型:(1,0,0,0)
B型:(0,1,0,0)
AB型:(0,0,1,0)
O型:(0,0,0,1)
也就是每个人只能命中其中的一种情况,为1,其他的为0
<3>独热编码的优点
<1>能够处理非数值类型的特征
比如血型、性别等
就是把字符串类型,转换成了0和1
<2>一定程度上扩充了特征的维度
编码后的向量是稀疏向量,只有一位是1,其他都是0,
可以利用向量的稀疏来节省存储空间。
<3>能够处理缺失值
当所有位都是0,就表示是缺失
此时可以采用处理缺失值提到的高维映射方法,用第N+1位来表示缺失值。
<4>独热编码的缺点
KNN算法中,高维空间下两点之间的距离很难得到有效的衡量;
lr算法中,参数的数量会随着特征维度的增高而增加,导致模型复杂,出现过拟合问题;
通常只有部分维度是对分类、预测有帮助,需要借助特征选择来降低维度。