K-最邻近算法(分类)
2019-01-10
思路: 如果一个样本在特征空间中的 k
个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。
KNN的具体步骤:
- 计算样本集中所有样本到达待测样本的欧式距离;
- 选出离待测点最近的K个点,
k
由用户指定; - 计算在这
k
个点中,各个类型的个数; - 将个数最多的类型作为待测样本的类型。
优点:
- 理论成熟,思想简单,既可以用来做分类也可以用来做回归;
- 可用于非线性分类;
- 训练时间复杂度为O(n);
- 对数据没有假设,准确度高,对异常值不敏感。
缺点:
- 计算量大(体现在距离计算上);
- 样本不平衡问题(即有些类别的样本数量很多,而其它样本的数量很少)效果差;
- 需要大量内存。