题目:原生python实现knn分类算法,用鸢尾花数据集。
一、题目分析
Knn的基本思想就是在训练集中数据和标签已知的情况下,输入测试数据,将测试数据的特征与训练集中对应的特征进行相互比较,找到训练集中与之最为相似的前k个数据,则该测试数据对应的类别就是k个数据中出现次数最多的那个分类。其算法描述为:
(1)计算测试数据与各个训练数据之间的距离;
(2)按照距离的递增关系进行排序;
(3)选取距离最小的K个点;
(4)确定前K个点所在类别的出现频率;
(5)返回前K个点中出现频率最高的类别作为测试数据的预测分类。
二、算法构造
三、程序实现(源代码)
# -*- coding: utf-8 -*-
"""
Created on Mon Oct 14 16:24:51 2019
@author: Administrator
"""
import cs