基础知识指南

K-最近邻

K 最近邻 (KNN) 通过查看 K 个最接近的示例并进行多数投票来对新数据点进行分类。

听听这个指南AI叙述 · ~2 min

在本页阅读时间:2分钟
  1. 概述
  2. 深入探讨
  3. 现实世界的实施
  4. K 最近邻的未来
  5. 付诸实践
  6. 不断探索
  7. 常见问题

概述

它是机器学习中最简单、最直观的算法之一,几乎不需要训练。

深入探讨

KNN 分类器存储带标签的训练示例,并且对于查询,在组合标签之前在选定的距离度量下找到 K 个邻居。 KNN 回归器通常会聚合相邻的数字目标。它是基于实例的,而不是紧凑的参数模型,但拟合仍可能包括特征缩放、索引构建或其他预处理。由于距离使用每个特征,因此对训练数据进行拟合缩放,因此大范围特征不会占主导地位。暴力搜索将查询与许多或所有存储的示例进行比较; KD 树、球树和近似邻居索引可以加速合适的数据和指标。在高维度中,距离可能会变得信息量较少,并且树索引可能提供很少的加速。较小的 K 可能对噪声敏感,而较大的 K 可以平滑局部决策。验证预期工作负载的表示、指标、K 和搜索方法。

现实世界的实施

推荐系统:推荐与用户已经喜欢的类似的电影或产品。

手写数字识别:通过将数字与最相似的标记图像进行比较来对数字进行分类。

医疗诊断支持:根据测试结果最相似的患者预测病情。

语义搜索:检索最近的文本嵌入来回答向量数据库中的查询。

K 最近邻的未来

KNN 的核心思想是找到最相似的示例,为现代向量搜索和检索增强生成提供动力,其中系统获取最近的嵌入向量以构建大型语言模型。 FAISS 和 HNSW 等近似最近邻库使十亿级相似性搜索变得实用。虽然最近邻原则很少是大型管道中的最终分类器,但它作为语义搜索和推荐的支柱比以往任何时候都更加相关。

付诸实践

为什么这很重要

  • 更清晰的判决. 它可以帮助您将清晰的技术声明与营销语言分开。
  • 成本与预算. 在花费金钱或时间之前,您可以提出更好的实施问题。
  • 团队与工作流程. 具有共同理解的团队可以做出更好的产品、政策和学习决策。

留意

  • 不同的团队可能会以不同的方式使用同一术语,因此请尽早定义范围。
  • 基准测试可能看起来很强大,但实际性能却参差不齐。
  • 忽视数据质量和评估计划通常会产生脆弱的结果。

后续步骤

  1. 从您需要的结果的简单语言定义开始。
  2. 在测试之前选择一种成功指标和一种失败条件。
  3. 使用代表性数据运行小型试点,而不是完善的演示集。
  4. 记录 K 最近邻在哪些方面有帮助以及在哪些方面更简单的方法更好。

不断探索

免费通讯

获取每日AI简报

每个工作日早晨提供三条经过验证的AI故事,使用简明英文撰写。永久免费,无广告。

每个工作日发送一封邮件。一键退订。我们永不出售或分享您的地址。

测试一下自己

参加 K 最近邻测验

每个答案即时反馈,课程通过后可获得可验证ID的可分享证书。

开始测验

支持免费AI教育。AI Understanding是一家501(c)(3)非营利组织——无广告,无付费墙,永不收费。 捐款

常见问题

什么是 K 最近邻?

K 最近邻 (KNN) 通过查看 K 个最接近的示例并进行多数投票来对新数据点进行分类。它是机器学习中最简单、最直观的算法之一,几乎不需要训练。

KNN 如何对新数据点进行分类?

KNN 找到 K 个最近的存储示例,并分配其中最常见的类(对于回归,它对它们的值进行平均)。

为什么 KNN 通常被称为“惰性学习器”?

KNN 是基于实例的,而不是学习紧凑的参数权重集;实现仍然可以在合适的时间预处理或构建搜索索引。

为什么特征缩放对于 KNN 很重要?

由于 KNN 依赖于距离,未缩放的大范围特征可能会压倒其他特征,因此通常对特征进行归一化。

如果您选择一个非常小的 K,例如 K=1,会发生什么?

一个很小的 ​​K 让单个有噪声或标签错误的邻居决定结果,导致锯齿状的过度拟合边界。

在暴力 KNN 实现中,为什么在大型数据集上预测会很慢?

强力扫描与存储点进行比较,而树或近似邻居索引可以根据数据和指标加速某些工作负载。