四,专著研读(K-近邻算法)
- K-近邻算法
有监督学习距离类模型, - k-近邻算法步骤
- 计算已知类别数据集中的点与当前点之间的距离
- 按照距离递增的次序进行排序
- 选取与当前点距离最小的K个点
- 确定前k个点出现频率
- 返回前k个点出现频率最高的类别作为当前点的预测类别
- 欧氏距离
(distleft ( x,y ight )=sqrt{left ( x_{1}-y_{1} ight )^{2}+left ( x_{2}-y_{2} ight )^{2}+...+left ( x_{n}-y_{n} ight )^{2}}=sqrt{sum_{i=1}^{n}left ( x_{i}-y_{i} ight )^{2}})
- K的选择对分类器的效果有决定性的作用,
- 数据归一化处理
0-1标准化,Z-score标准化,Sigmoid压缩法等,其中最简单的是0-1标准化。
(x_{normalization}=frac{x-Min}{Max-Min})
- K-近邻
- 数据输入:特征空间中至少包含k个训练样本(k>=1),特征空间中各个特征的量纲需要统一,若不统一则需要进行归一化处理,自定义超参数k(k>=1)
- 模型输出:在KNN分类中,输出是标签中的某个类别,在KNN回归中,输出是对象的属性值,该值是距离输入的数据最近的k个训练样本标签的平均值。
- 优点
- 容易理解,精度高,既可以用来做分类也可以用来做回归
- 可用于数值型数据,和离散型数据
- 无数据输入假定
- 适合对稀有数据进行分类
- 缺点
- 计算复杂性高,空间复杂性高
- 计算量大
- 样本不平衡问题
- 可理解性较差