超简单|Python实现机器学习算法——KNN

超简单|Python实现机器学习算法——KNN

  • KNN算法简介
  • 算法实现步骤
  • 如何用python实现KNN算法
  • Scikit-learn算法库实现KNN分类器
    • Sklearn建模流程

KNN算法简介

KNN算法(k近邻算法)是一种有监督分类算法,它的原理非常简单,下面以一个简单的例子引入。
已知两种酒的标签:赤霞珠和黑皮诺,在这个情景中,我们对酒进行分类的依据是酒精浓度和颜色深度,如下图所示:红色代表赤霞珠,紫色代表黑皮诺,图中有一分类未知的黄点,给定一个K值,我们找到距离黄点最近的K个点,假设K取3,我们发现距离黄点最近的3个点都是红点,0个紫点,根据少数服从多数原则,红:紫 = 3:0,所以认为黄点属于红色这一类,即赤霞珠。
超简单|Python实现机器学习算法——KNN_第1张图片

算法实现步骤

根据上面那个例子,我们可以把KNN算法过程总结为以下几个步骤:

  1. 确定一个K值, K值我一般取奇数,方便投票;
  2. 计算已知类别数据集中的点与当前点的距离
  3. 找到距离最小的K个点
  4. 确认这K个点的类别
  5. 把出现次数最多的类别作为当前点的预测类别

如何用python实现KNN算法

#导入需要的库
import numpy as np
import pandas as pd`
import matplotlib.pyplot as plt
#训练数据
rowdata = {
   '颜色深度':[14.23,13.2,13.16,14.37,13.24,12.07,12.43,11.79,12.37,12.04],
          '酒精浓度':[5.64,4.38,5.68,4.80,4.32,2.76,3.94,3.  ,2.12,2.6 ],
          '品种':[0,0,0,0,0,1,1,1,1,1]}

rowdata中的品种为 0 代表 “黑皮诺”,1 代表 “赤霞珠”&

你可能感兴趣的:(python,机器学习,KNN算法)