0、什么是归一化

    1. 归一化:把每个特征向量(特别是奇异样本数据)的值都缩放到相同数值范围,如[0,1]或[-1,1]。
    2. 最常用的归一化形式就是将特征向量调整为L1范数(就是绝对值相加),使特征向量的数值之和为1
    3. L2范数就是欧几里得之和。
    4. data_normalized = preprocessing.normalize( data , norm="L1" )
    5. 公式:x -min(x) / max(x) - min(x)
    6. 这个方法经常用于确保数据点没有因为特征的基本性质而产生较大差异,即确保数据处于同一数量级(同一量纲),提高不同特征数据的可比性。

    1、为什么要对特征归一化

    特征间的单位(尺度)可能不同,比如身高和体重,比如摄氏度和华氏度,比如房屋面积和房间数,一个特征的变化范围可能是[1000,10000][1000,10000],另一个特征的变化范围可能是[−0.1,0.2][−0.1,0.2],在进行距离有关的计算时,单位的不同会导致计算结果的不同,尺度大的特征会起决定性作用,而尺度小的特征其作用可能会被忽略,为了消除特征间单位和尺度差异的影响,以对每维特征同等看待,需要对特征进行归一化。
    原始特征下,因尺度差异,其损失函数的等高线图可能是椭圆形,梯度方向垂直于等高线,下降会走zigzag路线,而不是指向local minimum。通过对特征进行zero-mean and unit-variance变换后,其损失函数的等高线图更接近圆形,梯度下降的方向震荡更小,收敛更快
    


    2、什么是组合特征?如何处理高维组合特征?**

    为了提高复杂关系的拟合能力,在特征工程中经常会把一阶离散特征两两组 合,构成高阶组合特征
    通过矩阵分解的方式处理高维组合特征
    


    3、比较欧氏距离和曼哈顿距离?**

    欧氏距离就是我们最常用的两点之间的直线距离
    曼哈顿距离则表示两个点在标准坐标系上的绝对轴距之和
    

    图中绿线是欧氏距离,红线是曼哈顿距离,蓝线和黄线等价于曼哈顿距离。
    image.png
    4、为什么一些场景使用余弦相似度而不是曼哈顿距离?

    余弦距离指的是特征向量夹角的余弦值。计算时只需要计算特征向量夹角的余弦值就好了,忽略特征向量的长度。
    余弦相似度在高维的情况下依然保持“相同时为1,正交时为0,相反时为-1”的性质。
    欧式距离的数值受维度的影响,范围不固定,并且含义也比较模糊。
    欧式距离体现数值上的绝对差异,而余弦距离体现方向上的相对差异。
    

    5、One-hot的作用是什么?为什么不直接使用数字表示?

    独热编码(是因为大部分算法是基于向量空间中的度量来进行计算的,为了使非偏序关系的变量取值不具有偏序性,并且到原点是等距的。使用one-hot编码,将离散特征的取值扩展到了欧式空间,离散特征的某个取值就对应欧式空间的某个点。将离散型特征使用one-hot编码,会让特征之间的距离计算更加合理。离散特征进行one-hot编码后,编码后的特征,其实每一维度的特征都可以看做是连续的特征。就可以跟对连续型特征的归一化方法一样,对每一维特征进行归一化。比如归一化到[-1,1]或归一化到均值为0,方差为1。
    不直接使用数字表示是因为One-hot让特征间距离计算更合理