目标:
1. KNN 英文
2. KNN的计算步骤
3. K-means英文
4. K-means计算步骤
1. KNN
kNN,k-NearestNeighbor,K邻近算法
2. KNN的计算步骤
1)算距离:给定测试对象,计算它与训练集中的每个对象的距离
2)找邻居:圈定距离最近的k个训练对象,作为测试对象的近邻
3)做分类:根据这k个近邻归属的主要类别,来对测试对象分类
从kNN的算法描述中可以发现,有三个元素很重要,分别是距离度量,k的大小和分类规则,这便是kNN模型的三要素。
2.1 距离度量
距离度量有很多种方式,要根据具体情况选择合适的距离度量方式。常用的是闵可夫斯基距离(Minkowski Distance)
2.2 k的选择
k的选择会对算法的结果产生重大影响。
如果k值较小,就相当于用较小邻域中的训练实例进行预测,极端情况下k=1,测试实例只和最接近的一个样本有关,训练误差很小(0),但是如果这个样本恰好是噪声,预测就会出错,测试误差很大。也就是所,当k值较小的,会产生过拟合的现象。
如果k值较大,就相当于用很大邻域中的训练实例进行预测,极端情况是k=n,测试实例的结果是训练数据集中实例最多的类,这样会产生欠拟合。
在应用中,一般选择较小k并且k是奇数。通常采用交叉验证的方法来选取合适的k值。
2.3 分类规则
kNN中的分类决策规则通常是多数表决,即由测试样本的k个临近样本的多数类决定测试样本的类别
代码这里就不贴出来了,也比较简单,如果想要的,可以找我。
3 K-means 英文
k-means clustering algorithm
4 K-means计算步骤
k-means算法的基本步骤如下:
4.1 随机选择k个样本作为初始化的中心点
4.2 分别计算其它样本到这k个中心点的距离,并分别将这些样本划分给距离最近的那个中心
4.3 重新计算k类样本的均值,得到新的k个中心点
4.4 重复步骤2和3,直到样本到中心点的距离不再改变,或者迭代达到一定次数为止