分类问题是监督学习的一个核心问题。在监督学习中,当输出变量取有限个离散值时,预测问题便成为分类问题。
监督学习从数据中学习一个分类决策函数或分类模型,称为分类器(classifier)。分类器对新的输入进行输出的预测,这个过程称为分类。
KNN算法(k-NearestNeighbor):
如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别。
所选择的邻居都是已经正确分类的对象。
对于类域的交叉或重叠较多的待分样本集来说,KNN方法较其他方法更为适合。
现在有电器,水果,书籍3个种类的点,分布在第一象限(x表示价格,y表示销量),现在已知一个点m,我们需要找出离它最近的点(欧氏距离),根据这几个点的特征去分析,如果k=4,找4个点,其中3个 点属于水果类,那么,我们就断定这个点m也是水果。
KNN算法不仅可以用于分类,还可用于回归。通过找出一个样本的k个最近邻居,将这些邻居的属性的平均值赋给该样本,就可以得到该样本的属性。更有用的方法是将不同距离的邻居对该样本产生的影响给予不同的权值(weight),如权值与距离成反比。
缺点:样本分布不均衡(有的类样本很少,有的超多),