机器学习: KNN

作者: 写代码的海怪 | 来源:发表于2019-02-23 01:36 被阅读25次

KNN (K Nearest Neighbor) 是比较常见的种监督算法。它的主要思想是看这个数据距离最近的 K 个节点中,这些节点哪个类占最多,那么这个数据就属于哪个类,算是比较容易理解的算法。

问题描述

给定如下数据集

如何判定目标数据是属于哪个类,0 或者 1。

Euclidean Distance

就像前面所说的要看最近的 K 个节点的各类,所以现在的问题转变成求该点的最近 K 个点。求距离使用的就是 Euclidean Distance,也就是求两点间距离公式。

d(x, x^\prime) = \sqrt{\sum_{i=0}^k{{(x_i-x_i^ \prime)}^2}}

是不是这样求就收工了呢?嗯。。。差不多是的,不过这里最好还要加一个权重,因为有些特征值比较重要,所以不能真的像求距离那样,还要对特征值给个优先级。

d(x, x^\prime) = \sqrt{\sum_{i=0}^k{w^i{(x_i-x_i^ \prime)}^2}}

错误率与 K 值

图示如下

如果 K 很小会出现过拟合问题,因为这时候每个点只看最靠近自己的那个点,所以对于训练数据来做预测是 100% 正确的,但是用测试数据做预测错误就会很多。

而如果 K 太大(甚至等于数据集本身),那么就会欠拟合,边界变得十分“平滑”。

相关文章

  • 机器学习实战-knn

    机器学习实战笔记-knn算法实战 本文内容源于《机器学习实战》一书,主要介绍了knn(k-nearest neig...

  • 第六节分类算法

    1knn算法 1.1knn的过程 1.2scilit-learn中的knn 1.3scikit-learn机器学习...

  • 01 KNN算法 - 概述

    KNN算法全称是K近邻算法 (K-nearst neighbors,KNN) KNN是一种基本的机器学习算法,所谓...

  • KNN算法以及欧式距离

    1.KNN算法介绍 KNN 是什么? KNN(K-Nearest Neighbor)是最简单的机器学习算法之一,可...

  • 机器学习-KNN

    sklearn中的train_test_split 4.4分类准确度accuracy 不需要求出预测值 只要求预测...

  • 机器学习-knn

    生成已标记的数据集并直观显示 训练 预测 把带预测的样本以及和其最近的5个点标记出来

  • 机器学习: KNN

    KNN (K Nearest Neighbor) 是比较常见的种监督算法。它的主要思想是看这个数据距离最近的 K ...

  • 机器学习KNN

    代码带注释 一般在机器学习模型中会涉及到衡量两个样本间的距离,如聚类、KNN,K-means等,使用的距离为欧式距...

  • kNN算法

    一. kNN算法 kNN(k-NearestNeighbor),即k最近邻算法,是机器学习算法中最基础的入门算法。...

  • 2020-08-10--KNN01

    KNN算法的原理介绍KNN算法的一个简单实现(肿瘤分类)将KNN算法封装成函数机器学习套路使用scikit-lea...

网友评论

    本文标题:机器学习: KNN

    本文链接:https://www.haomeiwen.com/subject/aygteqtx.html