20、k-近邻算法(k-NN)的原理、应用与优缺点

k-近邻算法(k-NN)的原理、应用与优缺点

1. 引言

在数据分类和预测领域,k-近邻算法(k-Nearest Neighbors,k-NN)是一种强大且实用的方法。它既可以用于对分类结果(如是否购买某种产品)进行分类,也能用于对数值结果(如房屋价格)进行预测。该算法的核心思想是在训练数据中寻找与新记录“相似”的记录,通过投票(用于分类)或求平均值(用于预测)的方式为新记录得出分类或预测结果。

2. k-NN分类器(分类结果)
2.1 确定邻居

k-近邻算法在分类时,不假设类别成员(Y)与预测变量(X1, X2, …, Xp)之间的关系形式,属于非参数方法。它通过计算记录之间的距离来确定“邻居”,最常用的距离度量是欧几里得距离。对于两个记录(x1, x2, …, xp)和(u1, u2, …, up),欧几里得距离的计算公式为:
[ \sqrt{(x1 - u1)^2 + (x2 - u2)^2 + \cdots + (xp - up)^2} ]

在计算欧几里得距离之前,通常需要对预测变量进行标准化处理,以平衡不同变量的尺度。标准化时使用的均值和标准差是训练数据的,新记录不参与计算。

2.2 分类规则
  • k = 1的情况 :找到距离待分类记录最近的邻居,将新记录分类为该邻居所属的类别。当训练数据量很大时,这种简单的方法可能非常有效,其误分类率不超过已知每个类别概率密度函数时的两倍。
  • k > 1的情况
    1. 找到待分类记录的k个最近邻
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值