当前位置: 首页 > news >正文

8.15 机器学习(2)K最近邻算法

一、算法核心思想

1、定义:K 近邻(K-Nearest Neighbor, KNN)用最近的 K 个已知样本代表/决定未知样本的类别

2、步骤:
① 计算未知点到所有已知点的距离,
② 按距离升序排序,
③ 选前 K 个(K ≤ 20),
④ 统计这 K 个邻居中类别出现频率,
⑤ 将频率最高的类别作为预测结果,

二、距离度量

  1. 欧式距离(Euclidean)
    多维空间两点直线距离:
    d = √Σ(xi – yi)²

  2. 曼哈顿距离(Manhattan)
    各维度绝对值之和:
    d = Σ|xi – yi|

三、鸢尾花数据集练习(为分类问题)

将鸢尾花数据集导入库,生成数据

from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
import numpy as np# 设置随机种子,保证结果可复现
np.random.seed(0)
#加载鸢尾花数据集
iris=datasets.load_iris()
iris

分三类

将他们分类、增加特征、类别名

最终KNN邻近值选取并验证

四、自己新找一个数据集

练习:导入葡萄酒数据集(为分类问题)

#导入葡萄酒数据集
wine = datasets.load_wine()
wine

加载前十行数据wine.data[:10] 葡萄酒的特征值

给他分类标签并标明特征和类别。

训练和测试X和Y 

预测X和Y的值,选择最优K值交叉验证,标明范围。最后画图

K 值选择、距离度量方式决定模型效果。

适用小规模、低维、类别边界不规则的数据。

http://www.dtcms.com/a/332531.html

相关文章:

  • Chrome插件开发【Tabs】
  • 基于vue和nodejs的茶叶销售平台的设计与实现/基于express的茶叶商城系统
  • 从 LLM 到自主 Agent:OpenCSG 打造开源 AgenticOps 生态
  • 从CAD数据访问到3D协作,HOOPS SDK如何提升PLM解决方案竞争力?
  • PCA降维全解析:从原理到实战
  • p5.js 3D盒子的基础用法
  • [TG开发]照片机器人
  • 云手机选哪个比较好用?
  • 【Docker】关于hub.docker.com,无法打开,国内使用dockers.xuanyuan.me搜索容器镜像、查看容器镜像的使用文档
  • 腾讯云开发小程序工具箱使用心得
  • Docker Compose 入门教程
  • Linux————网络基础
  • LPDDR5训练过程
  • 一、Docker本地安装
  • Kafka分区
  • 实现FPS武器的瞄准放大效果(UGUI实现反向遮罩,全屏遮挡,局部镂空效果)
  • 10--C++模板参数与特化详解
  • 【用软件方法实现临界区互斥】
  • Java 正则表达式的使用方法
  • 力扣326:3的幂
  • NLP数据增强方法及实现-A
  • 【R语言】R 语言中 gsub 与正则表达式详解(含 POSIX 与 Perl 风格实例)
  • 深入解析Java代理模式:灵活控制对象访问的核心技术
  • 配置国内加速源后仍然无法拉取镜像
  • 第五天~提取Arxml中CAN波特率属性New_CanCluster--Standard
  • C++面试——内存
  • 【LeetCode 热题 100】45. 跳跃游戏 II
  • 【swift】SwiftUI动画卡顿全解:GeometryReader滥用检测与Canvas绘制替代方案
  • 如何使用亚马逊云科技EC2服务部署语音转写系统
  • 自动驾驶系统“测试”的“要求”与“规范体系”