【人工智能算法】算法基础之距离度量

本文重点主要有:

  • 向量
  • 欧式距离
  • 曼哈顿距离
  • 切比雪夫距离

理解向量

向量本质上就是一维数组。这里需要注意不要将向量的“维度”与待求解问题的维度混淆,即使待求解问题有10个输入通道,它依然是一个向量。向量始终是一维数组
在人工智能算法中,向量通常用来存储某个具体实例的数据。

计算向量距离

两个向量之间的距离代表着二者的相似程度

欧式距离

欧式距离度量是基于两个向量间实际的二维距离的,也就是说,如果把两个数据点画在纸上的话,欧式距离就是用直尺测量处理的两点间的偏差(距离)。二维距离的理论基础是毕达哥拉斯定理也就是勾股定理。
二维欧式距离

这个方法在比较长度为2的向量的时候效果很好,但实际上大多数向量长度都不止为2。所以要计算欧式距离的话我们需要用勾股定理的推广形式。
欧氏距离度量在机器学习中很常用,在比较相同长度的两个向量这种任务上十分高效。假设有a、b、c这3个向量,a、b之间的欧氏距离为10, a、c之间的欧氏距离为20,此时向量a代表的数据较之与向量c的匹配程度,就与向量b更为接近。
推广的勾股定理
上面这个公式给出了p、q两个向量间的欧氏距离d,同时也指出了d(p, q)和d(q, p)是等价的,这就意味着欧氏距离仅取决于两个端点,与把哪个点作为起点无关。欧氏距离的计算过程不过是对向量中对应元素之差的平方逐个求和,然后取求和结果的平方根。这个平方根就是要求的欧氏距离
伪代码如下:

function euclidean(position1,position2){
   
	sum = 
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值