码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【入门】使用sklearn实现的KNN算法:鸢尾花数据集分类预测


    目录

    前言
    第一步:安装和导入sklean模块
     第二步:获取数据
     第二步:分割出训练集和测试集
    第三步:训练模型
     第四步:测试结果
    总结

    前言

    本文将介绍如何利用K最近邻(KNN)算法对经典的鸢尾花数据集进行分类预测。首先,我们会加载数据集并进行数据的拆分,然后利用KNN算法训练模型。最后,我们将展示模型对测试集的预测结果,并与真实标签进行对比验证,以帮助读者更好地理解KNN算法在分类问题中的应用。


    第一步:安装和导入sklean模块

    1.命令行安装sklearn

    pip install -U scikit-learn

    2.导入模块

    1. import numpy as np
    2. from sklearn import datasets
    3. from sklearn.model_selection import train_test_split
    4. from sklearn.neighbors import KNeighborsClassifier

     第二步:获取数据

    1. #使用sklearn自带的datasets模块中的load_iris函数加载了鸢尾花(iris)数据集
    2. iris = datasets.load_iris()
    3. #提取出特征数据
    4. iris_X=iris.data
    5. #目标标签
    6. iris_y=iris.target

     第二步:分割出训练集和测试集

    1. #会打乱数据
    2. #test_size测试比例,train_test_split把训练数据和测试数据分开
    3. X_train,X_test,y_train,y_test=train_test_split(iris_X,iris_y,test_size=0.3)

    第三步:训练模型

    1. #训练模型
    2. knn=KNeighborsClassifier()
    3. knn.fit(X_train,y_train)

     第四步:测试结果

    1. #预测值
    2. print(knn.predict(X_test))
    3. # [0 0 1 0 2 2 1 1 0 0 2 1 2 2 2 2 0 0 2 0 2 2 0 0 0 2 0 1 1 0 0 2 0 2 2 0 1
    4. # 1 0 1 1 2 0 1 2]
    5. #真实值
    6. print(y_test)
    7. # [0 0 1 0 2 2 1 1 0 0 2 1 2 2 1 2 0 0 2 0 2 2 0 0 0 2 0 1 1 0 0 2 0 2 2 0 1
    8. # 1 0 1 1 2 0 1 2]

     结果大差不差~


    总结

    通过本文的讲解,我们深入探讨了KNN算法在机器学习中的应用。通过实际操作鸢尾花数据集,我们展示了如何使用KNN算法对数据进行分类预测,并验证了模型的准确性。希望本文能够帮助读者更好地理解KNN算法的原理和实际应用,为进一步学习机器学习算法奠定基础。

  • 相关阅读:
    听厂家聊聊:矿井作业存在的危险以及常使用的劳保防护用品有哪些?
    手写call、apply、bind方法及区别总结
    Vue事件修饰符的使用
    【Java I/O 流】数据输入输出流:DataInputStream 和 DataOutputStream
    [Web Server]Tomcat调优之SpringBoot内嵌Tomcat源码分析
    软件测试谈薪技巧:同为测试人员,为什么有人5K,有人 20K?
    【hadoop运维】running beyond physical memory limits:正确配置yarn中的mapreduce内存
    springboot json在线转换为实体类
    docker-compose
    轻量服务器2核与1核的区别
  • 原文地址:https://blog.csdn.net/aabbbccc6788123/article/details/139304948
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号