东方耀AI技术分享

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 3557|回复: 1
打印 上一主题 下一主题

[课堂笔记] 同样都是欧式距离的平方,结果会不一样?

[复制链接]

1365

主题

1856

帖子

1万

积分

管理员

Rank: 10Rank: 10Rank: 10

积分
14437
QQ
跳转到指定楼层
楼主
发表于 2020-5-29 10:13:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
同样都是欧式距离的平方,结果会不一样?






import numpy as np
# 为何这两种计算会不相等


embeddings1 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
embeddings2 = np.array([[2, 3, 5], [1, 4, 3], [6, 10, 9]])


print(embeddings1.shape, embeddings2.shape)


diff = np.subtract(embeddings1, embeddings2)
dist = np.sum(np.square(diff), 1)
print(dist)


dist_dfy = np.square(np.linalg.norm(diff, axis=1))
print(dist_dfy)





2个向量是否完全相等(欧式距离的平方)因为后者是先开了根号后平方的:会有精度的丢失





让天下人人学会人工智能!人工智能的前景一片大好!
回复

使用道具 举报

1365

主题

1856

帖子

1万

积分

管理员

Rank: 10Rank: 10Rank: 10

积分
14437
QQ
沙发
 楼主| 发表于 2020-5-29 10:14:05 | 只看该作者
直接计算  平方和  速度还要快些
让天下人人学会人工智能!人工智能的前景一片大好!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|人工智能工程师的摇篮 ( 湘ICP备2020019608号-1 )

GMT+8, 2024-5-3 17:59 , Processed in 0.157995 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表