机器学习之KNN算法

K最近邻算法

闵可夫斯距离:

曼哈顿距离中:q为1,即作为绝对值运算。

d(i,j)=|X1-X2|+|Y1-Y2|.

欧式距离:q为2。

切比雪夫距离:q趋近于无穷,找到A-B的最短步数 ,红色方块为行走步骤


在这些距离中q越大,差异值越大得维度对最终距离的影响越大


 从例子中我们可以看出闵可夫斯距离是由AB两个向量,他们之间的差值为其向量对应的维度的差值。

/**************************************************************************************************************************************************************/

/*********************************************************************************马氏距离*****************************************************************/

/*************************************************************************************************************************************************************/

马氏距离考虑到了数据分布


在如图所示的两个概率分布中,对于相交点属于哪个概率分布,这就是马氏距离要考虑的。

如果按前面的闵可夫斯的算法表达,是计算出该点与两个概率分布均值点的距离,距离小则认为是属于哪个概率分布。

但马氏距离完全不是这一的计算方法,马氏距离(属于分布式的计算方法)通过确定该点落在两个概率分布中的概率来计算,它属于哪个概率分布。由图可知该点落在右边的概率要大,所以该点属于右边。

闵可夫斯距离实现:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值