惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
aimingoo的专栏
aimingoo的专栏
WordPress大学
WordPress大学
人人都是产品经理
人人都是产品经理
酷 壳 – CoolShell
酷 壳 – CoolShell
L
LangChain Blog
Blog — PlanetScale
Blog — PlanetScale
阮一峰的网络日志
阮一峰的网络日志
Microsoft Azure Blog
Microsoft Azure Blog
云风的 BLOG
云风的 BLOG
Google DeepMind News
Google DeepMind News
T
The Blog of Author Tim Ferriss
G
Google Developers Blog
Hugging Face - Blog
Hugging Face - Blog
Y
Y Combinator Blog
D
DataBreaches.Net
Engineering at Meta
Engineering at Meta
MyScale Blog
MyScale Blog
大猫的无限游戏
大猫的无限游戏
S
SegmentFault 最新的问题
The GitHub Blog
The GitHub Blog
Recent Announcements
Recent Announcements

博客园 - zhaofeng555

相似度2-欧式距离 相似度1-余弦相似度 Oh-My-OpenCode介绍 OpenCode 里的 Atlas / Sisyphus / Prometheus区别 安装opencode langchain第二个小例子 langchain的第一个小例子 springai第二个例子使用配置类配置chatclient springai访问本地alloma第一个例子 springai访问本地alloma的qwen3报错 C/c++趣味程序百例 mac 安装stale disffusion笔记 mac 安装TA-Lib包 centos7 install docker CentOS7 内核升级从3.10升级到4.4(以kernel-lt 为例) 一个数组中有一个重复的数字,O(n) 找出来 找数组中重复的数字 mysql server 端命令 mac安装python3 pandas tushare
欧氏距离 vs 余弦相似度
zhaofeng555 · 2026-04-04 · via 博客园 - zhaofeng555
 欧氏距离余弦相似度
关注什么 绝对数值大小差异 方向 / 趋势是否一致
结果含义 越小越相似 越大越相似
适用场景 身高、体重、分数等数值 文本、用户偏好、推荐系统

这俩是机器学习、推荐、NLP 里最容易混淆、但选择逻辑非常清晰的两个指标。

我用最简单、最实用的方式告诉你:什么时候用哪个,为什么,一眼判断。

一句话结论

  • 关心方向 / 趋势是否一致 → 用余弦相似度
  • 关心数值大小 / 绝对差异 → 用欧氏距离

一、什么时候用 余弦相似度

适用场景

  • 文本相似度(词频向量)
  • 用户偏好、推荐系统
  • 图像特征向量
  • 任何维度高、数值大小不重要、方向更重要的场景

核心特点

只看方向,不看长度。

向量长度被自动忽略,只比较趋势是否一致。

经典例子

用户 A:[1,1,1,0]

用户 B:[100,100,100,0]

  • 余弦相似度 ≈ 1(完全相似)
  • 欧氏距离 非常大(完全不像)

→ 说明:虽然量级差 100 倍,但偏好完全一致,余弦能识别,欧氏不行。


二、什么时候用 欧氏距离

适用场景

  • 身高、体重、年龄、分数
  • 聚类(K-Means)
  • 坐标点、位置
  • 任何数值大小本身有意义的场景

核心特点

关心绝对差异,差一点就是差一点。

经典例子

A:[170, 65](身高 170,体重 65)

B:[172, 67]

C:[200, 100]

  • A 与 B 距离小 → 相似
  • A 与 C 距离大 → 不相似

→ 欧氏距离非常合适。


三、最关键的判断标准(你以后就按这个选)

1. 如果数据量级差异大,但趋势一致

→ 用余弦相似度

例:

文章 1:[2,3,1]

文章 2:[200,300,100]

→ 内容相似,只是长度不同,余弦相似度接近 1。

2. 如果数据单位统一、数值大小有实际意义

3. 高维稀疏向量(文本、词袋)

→ 必须余弦相似度

欧氏距离在高维会失效,变得不可靠。

4. 需要做聚类、KNN

→ 通常欧氏距离

除非是文本 / 高维稀疏 → 余弦。


四、一张表秒懂对比

特征余弦相似度欧氏距离
关注 方向、趋势 绝对距离
受数值大小影响 不受 严重受
高维稀疏数据 很好 很差
结果范围 [-1,1]