KNN可以说是最简单的分类算法之一,同时,它也是最常用的分类算法之一。matlab中可用knnsearch函数实现KNN算法。
一、knnsearch()函数
1 | [IDX, D] = knnsearch(X,Y) |
X是训练数据,Y是测试数据,行对应每一个样本,列对应变量,IDX的每一行对应着在X中距离Y最近的样本的索引值。
1 | [IDX, D]= knnsearch(X,Y,'NAME1',VALUE1,...,'NAMEN',VALUEN) |
每个NAME参考matlab的help knnsearch
其中可以设置根据两点的哪一种距离去求结果。有一个比较重要的属性是’k’,’k’是求在X中距离Y最近的k个样本的索引值。
二、Example
1 | % Find 2 nearest neighbors in X and the corresponding values to each |
用knnsearch求得的结果进行分类,就是knn算法了。
- 本文作者: Hbin
- 本文链接: https:/hbinfree.github.io/2021/01/10/knn算法matlab/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!