前言
- 学习KNN算法的原理;
- 超参数调整;
- KNN算法的应用;
一、相关概念
先来看一个例子:
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams["font.family"]="SimHei"
plt.rcParams["axes.unicode_minus"]=False
plt.rcParams["font.size"]=12
good=np.array([[95,93],[90,92],[91,96]])
medium=np.array([[85,82],[83,87],[80,84]])
bad=np.array([[61,69],[66,63],[72,65]])
unknow=np.array([[83,77]])
plt.scatter(good[:,0],good[:,1],color="r",label="优等生")
plt.scatter(medium[:,0],medium[:,1],color="g",label="中等生")
plt.scatter(bad[:,0],bad[:,1],color="b",label="差等生")
plt.scatter(unknow[:,0],unknow[:,1],color="orange",label="未知"