美文网首页
机器学习第二期_第一课_KNN算法

机器学习第二期_第一课_KNN算法

作者: 素心似锦 | 来源:发表于2020-02-29 14:23 被阅读0次

1. kNN思想简介

鲁迅曾经说过:“想要了解一个人,就去看看他的朋友”。

kNN(k-NearestNeighbor),也就是k最近邻算法。顾名思义,所谓K最近邻,就是k个最近的邻居的意思。也就是在数据集中,认为每个样本可以用离他最距离近的k个邻居来代表。

贴出一张从百度百科上找的一张图,我们可以直观地感受到这朴素的思想:我们要判断

是什么颜色的,找到与其距离最近的5个点,有4个是红色的,有1个是绿色的。因此我们认为是属于红色的集合

2、kNN算法流程

通过理解算法思想,可以将其简化为“找邻居+投票”。K近邻法使用的模型,实际上是特征空间的划分。模型由三个基本要素决定:

距离度量

k值

分类决策规则

其中两个实例点之间的距离反映了相似程度。一般来说使用欧氏距离来计算。

梳理kNN算法流程如下:

计算测试对象到训练集中每个对象的距离

按照距离的远近排序,选取与当前测试对象最近的k的训练对象,作为该测试对象的邻居

统计这k个邻居的类别频次

k个邻居里频次最高的类别,即为测试对象的类

3、sklearn中的kNN

对于机器学习来说,其流程是:训练数据集 -> 机器学习算法 -fit-> 模型 输入样例 -> 模型 -predict-> 输出结果

from sklearn.neighbors import KNeighborsClassifier

# 创建kNN_classifier实例

kNN_classifier = KNeighborsClassifier(n_neighbors=6)

# kNN_classifier做一遍fit(拟合)的过程,没有返回值,模型就存储在kNN_classifier实例kNN_classifier.fit(X_train,y_train)

# kNN进行预测predict,需要传入一个矩阵,而不能是一个数组。reshape()成一个二维数组,第一个参数是1表示只有一个数据,第二个参数-1,numpy自动决定第二维度有多少

y_predict = kNN_classifier.predict(x.reshape(1,-1))

y_predict

KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski', metric_params=None, n_jobs=1, n_neighbors=6, p=2, weights='uniform')

相关文章

  • 01 KNN算法 - 概述

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

  • kNN算法

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

  • KNN算法以及欧式距离

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

  • 机器学习系列(六)——knn算法原理与scikit-learn底

    KNN算法 本篇将介绍knn算法,knn算法因为思想非常简单,运用的数学知识比较浅显,是非常适合机器学习入门的算法...

  • 2020-08-10--KNN01

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

  • KNN算法初识

    一、算法介绍 KNN算法中文名称叫做K近邻算法,全称是k-NearestNeighbor。KNN是众多机器学习算法...

  • 机器学习实战-knn

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

  • 超参数

    超参数:在我们运行机器学习算法之前,需要指定的参数。模型参数:算法过程中学习的参数。 kNN算法没有模型参数kNN...

  • java实现Knn算法,用iris数据集进行验证

    Knn算法 Knn算法是基础的机器学习算法之一,典型的惰性学习。但是其效果很好,其原理不再赘述,比较简单。笔者利用...

  • 机器学习之初识KNN算法——针对泰坦尼克号生存记录建模的两种方法

    KNN算法原理 本篇博客基于《机器学习实战》实现算法原理简要概括,重在代码实现 k-近邻算法(kNN)的工作原理是...

网友评论

      本文标题:机器学习第二期_第一课_KNN算法

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