.
.
简单来说,标准化是依照特征矩阵的列处理数据,其通过求z-score 的方法,将样本的特征
值转换到同一量纲下。归一化是依照特征矩阵的行处理数据,其目的在于样本向量在点乘运
算或其他核函数计算相似性时,拥有统一的标准,也就是说都转化为“单位向量〞。规那么
为 l2 的归一化公式如下:
13、特征向量的缺失值处理
1. 缺失值较多.直接将该特征舍弃掉,否那么可能反倒会带入较大的noise,对结果造成不良
影响。
2. 缺失值较少,其余的特征缺失值都在 10%以内,我们可以采取很多的方式来处理:
1) 把 NaN 直接作为一个特征,假设用 0 表示;
2) 用均值填充;
3) 用随机森林等算法预测填充
随机森林如何处理缺失值〔charleshm.github.io/2016/03/Random-Forest-Tricks/〕
方法一〔na.roughfix〕简单粗暴,对于训练集,同一个 class 下的数据,如果是分类变量缺失,
用众数补上,如果是连续型变量缺失,用中位数补。
方法二〔rfImpute〕这个方法计算量大,至于比方法一好坏?不好判断。先用na.roughfix 补
上缺失值,然后构建森林并计算 proximity matrix,再回头看缺失值,如果是分类变量,那么
用没有缺失的观测实例的 proximity 中的权重进展投票。如果是连续型变量,那么用 proximity
矩阵进展加权平均的方法补缺失值。然后迭代 4-6 次,这个补缺失值的思想和 KNN 有些类
似 12。
随机森林如何评估特征重要性〔charleshm.github.io/2016/03/Random-Forest-Tricks/〕
衡量变量重要性的方法有两种,Decrease GINI 和 Decrease Accuracy:
1) Decrease GINI:对于回归问题,直接使用 argmax(Var−VarLeft−VarRight)作为评判标准,即
当前节点训练集的方差 Var 减去左节点的方差 VarLeft 和右节点的方差 VarRight。
2) Decrease Accuracy:对于一棵树 Tb(x),我们用 OOB 样本可以得到测试误差 1;然后随机
改变 OOB 样本的第 j 列:保持其他列不变,对第j 列进展随机的上下置换,得到误差2。至
此,我们可以用误差 1-误差 2 来刻画变量 j 的重要性。根本思想就是,如果一个变量 j 足够
重要,那么改变它会极大的增加测试误差;反之,如果改变它测试误差没有增大,那么说明
该变量不是那么的重要。
14、优化 Kmeans
使用 kd 树或者 ball tree(这个树不懂)
将所有的观测实例构建成一颗 kd 树,之前每个聚类中心都是需要和每个观测点做依次距离
计算,现在这些聚类中心根据 kd 树只需要计算附近的一个局部区域即可
KMeans 初始类簇中心点的选取
k-means++算法选择初始 seeds 的根本思想就是:初始的聚类中心之间的相互距离要尽可能
的远。
1. 从输入的数据点集合中随机选择一个点作为第一个聚类中心
. .word.zl.