Pands在进行数据处理是往往会遇到标签型数据,比如省份【北京,上海,广州】,有些模型需要使用数字型进行计算,很自然的我们想将其转化为【0,1,2】的数字来表示,但是,这样会造成一个问题,数字是有大小的,而且是有顺序的,但是我们的数据没有大小的意义,数字映射并不符合原来特征的意义。
为了解决这个问题,引入了独热编码也就是One-hot,也就是说,北上广,三种可能性,对应的三个互斥的编码,001,010,100,对于每一条数据来说,只会有一位是1,我们称此时的数据是稀疏的。
这样不仅解决了分类器不好处理属性数据的问题,而且也起到了扩充特征的作用。
为什么这样就解决了分类器不好处理的问题呢?
因为大部分分类其实是基于计算向量距离或是向量夹角,经过One-hot编码后,每一个特征的值都是空间的一个点,计算起来很方便,并且这个点的每一维都可以看成是连续的特征,可以使用连续特征的归一化方法,所以基于此特征在一定程度上得到了扩张。
那么为什么需要标准化/归一化呢?
这两个名词都是从normalization翻译来的,我认为将归一化认为标准化的一个特定范例比较合适,特征的归一化(normalization)是以去量纲为目的,不改变两个特征的二维分布,例如Z-score标准化(减均值/标准差),改变了样本原始的分布,此处脑补那个长椭圆和正圆形