机器学习数学 · 10
0% READ
课程首页
JUNIOR ML MATH / VECTOR

向量把许多特征装进一个箭头

一张照片、一首歌、一名用户,都可以被机器写成一列数字。向量让这些数字成为一个整体;内积与余弦相似度则让机器能够计算“方向是否相近”。

分量与维数内积向量长度余弦相似度
LEARNING ROUTE① 把特征排成向量② 对应分量相乘求和③ 分清长度与方向④ 用相似度找邻居
00 / WHY VECTORS

机器怎样同时记住一个对象的许多特点?

只用一个数,可以记录体重,却记不住身高、速度和年龄。机器学习常把一个对象的多个特征按固定顺序排起来,组成向量。

对象

一只动物

它有体重、身高、奔跑速度等许多特征。

(4, 30)

一条向量

约定第 1 个数是千克,第 2 个数是厘米,就能交给模型计算。

向量解决的四个问题

统一表示把图片、文字、用户变成一组数字
一起计算多个特征可以同时参加运算
比较方向判断两组特征的搭配是否相近
输入模型神经元一次读取整组特征
  • 能区分向量、分量、维数和标量
  • 能计算加减、数乘和内积
  • 能计算向量长度与余弦相似度
  • 能解释向量为什么能用于推荐和搜索
01 / VECTOR & COMPONENTS

向量既是一列数,也可以画成一支有方向的箭头

a=(3,2) 有两个分量,所以是二维向量。第一个分量表示横向走 3 格,第二个分量表示纵向走 2 格。

(3, 2)横向 3纵向 2
箭头从原点出发,终点坐标就是它的两个分量。
a向量的名字,通常用粗体或箭头标记。
3, 2两个分量;顺序有意义,不能随便交换。
2 维分量的个数叫维数,不是数字大小。
5单独一个普通数叫标量,可以用来缩放向量。
坐标和特征的联系:图上横纵轴可以是真实位置,也可以换成“体重、身高”“数学兴趣、音乐兴趣”等特征轴。箭头因此成了一份对象档案。
02 / OPERATIONS

向量运算:对应位置和对应位置计算

只有含义相同、维数相同的向量才适合直接相加减。例如两天的运动量可以合计,但“身高向量”和“天气向量”不能因为都有两个数就硬加。

加法:合并(1,2)+(3,4)=(4,6)

每一列各自相加。

减法:差异(5,6)−(2,1)=(3,5)

终点减起点可得到位移。

数乘:缩放2(3,−1)=(6,−2)

每个分量都乘同一个标量。

常见误区:(1,2)+(3,4) 不是 (4,4),也不是 10。沿着相同位置逐项计算,并保留向量的形状。
03 / DOT PRODUCT

内积:对应分量相乘,再把乘积全部相加

内积把两个同维向量压成一个标量。它既能衡量方向的配合程度,也是神经元给输入特征“加权打分”的核心。

a·b = a₁b₁ + a₂b₂ + … + aₙbₙ
第 1 对1×4=4
第 2 对2×5=10
第 3 对3×6=18
Σ = 32
结果为什么不是向量?因为最后把所有对应乘积相加成了一个数。所以 (1,2,3)·(4,5,6)=32
大致同向

两个向量在相同方向上互相支持。

0垂直

方向不偏向彼此,二维中夹角为 90°。

大致反向

一个方向与另一个相冲突。

机器学习例子:神经元怎样给特征打分

如果输入特征 x=(睡眠时长, 复习时长)=(8,2),权重 w=(0.4,1.5),那么:

w·x+b = 0.4×8 + 1.5×2 + b = 6.2+b

权重表示模型目前认为每个特征有多重要。内积把“每项特征 × 对应重要程度”汇总成一个分数。

04 / MAGNITUDE

向量长度:从原点走到箭头终点有多远

二维向量 a=(3,4) 形成一个直角三角形。利用勾股定理,箭头长度是 5。

勾股定理

|a| = √(a₁²+a₂²+…+aₙ²)

|(3,4)|=√(3²+4²)=√25=5

34长度 5
分量是两条直角边,向量本身是斜边。
单位向量:把非零向量除以自己的长度,会得到长度为 1、方向不变的向量。这个步骤叫归一化,它让我们专心比较方向。
05 / COSINE SIMILARITY

余弦相似度:不比“力气大小”,只比“朝向像不像”

内积会同时受到长度和方向影响。若只想比较两份兴趣比例是否相似,就用两个长度把内积标准化。

cos(a,b) = (a·b) / (|a||b|)
1同方向

特征比例完全一致,即使整体大小不同。

0垂直

两种特征组合没有同向成分。

−1反方向

方向完全相反。

零向量警报:零向量长度为 0,公式分母会变成 0,因此余弦相似度没有定义。程序里必须先检查长度。
06 / INTERACTIVE LAB

拖动两个箭头,同时观察内积、长度与相似度

试试三个预设:同向、垂直、反向。再把一个箭头缩短但保持方向,观察余弦相似度是否改变。

VECTOR COMPASS / 向量罗盘
橙色为 a,蓝色为 b;每格代表 1
ab
a 向量b 向量
a·b12
|a|3.61
|b|3.61
余弦相似度0.923
两个方向很接近,因此相似度接近 1。
07 / CONCRETE EXAMPLES

从动物特征到兴趣推荐:坐标轴可以换成任何特征

例 1:体重与身高——距离适合找“整体接近”

猫 A 是 (4 千克, 30 厘米),动物 B 是 (5 千克, 32 厘米)。它们的差向量为 (1,2),平面距离是 √5≈2.24。这回答“两个动物在原始数值上离多远”。

例 2:三门兴趣——余弦适合找“比例相像”

按“运动、音乐、绘画”排序,学生 A、B、C 的兴趣向量如下。我们想找与 A 兴趣方向最接近的人。

参照

学生 A

(60,30,80)

作为要寻找伙伴的学生。

学生 B

(20,80,40)

与 A 的余弦相似度约 0.711

最相似

学生 C

(70,20,70)

与 A 的余弦相似度约 0.986

结论:C 的三个兴趣比例与 A 更一致,所以方向更接近。机器不是真的“认识”他们,而是通过向量相似度找到数字模式相近的人。
08 / MACHINE LEARNING

向量在机器学习里到底做什么?

神经网络输入

一名学生的睡眠、练习、出勤组成向量 x,神经元用 w·x+b 汇总特征。

搜索与推荐

把文章和查询都变成向量,余弦相似度高的文章排得更靠前;用户和商品也可以这样匹配。

聚类与近邻

用距离找数值位置接近的对象,用余弦找方向比例相近的对象,再进行分组或分类。

选择工具前先问目标:欧氏距离在意绝对差;余弦相似度更在意方向。特征单位差异很大时还要先标准化,否则“厘米”可能因为数值大而压过“千克”。
09 / RECAP

把一章浓缩成四张卡片

向量按固定顺序装下多个特征
a=(a₁,…,aₙ)
内积对应相乘后求和
a·b=Σaᵢbᵢ
长度各分量平方和再开方
|a|=√Σaᵢ²
余弦内积除以长度乘积
cos=(a·b)/(|a||b|)
10 / CHECK

知识检测:选择后立即告诉你薄弱点

答错并不可怕。页面会指出没掌握的知识点,并把你带回对应讲解;改对后仍保留首次薄弱点,便于复习。

题目
已作答0
当前答对0
首次薄弱点0
历史最好
1. 向量 (4,30,12) 是几维向量?
2. (1,2)+(3,5) 等于多少?
3. 3(2,−1) 等于多少?
4. (1,2,3)·(4,5,6) 等于多少?
5. 两个同维向量做内积,结果通常是什么?
6. 向量 (3,4) 的长度是多少?
7. 余弦相似度最主要比较什么?
8. 两个非零向量互相垂直时,余弦相似度为多少?
9. (1,2) 与 (2,4) 的余弦相似度是多少?
10. 为什么不能直接计算零向量与其他向量的余弦相似度?
11. 神经元中的 w·x 主要表示什么?
12. 想寻找“兴趣比例相似、但总打分高低可以不同”的同学,更适合优先用什么?
0

VISUAL FIRST · 一图读懂

余弦相似度比较的是方向,不是箭头有多长

把橙色箭头拉长,它与蓝色箭头之间的夹角没有改变,因此方向相似度也没有改变。

同一起点的蓝色与橙色向量以及橙色向量伸长残影的无文字插图
HOW TO READ
读图顺序
共同起点

先把两个向量放到同一个起点,才能直观看方向关系。

只看夹角

夹角越小,两个向量所表达的方向越相似。

拉长不改变方向

余弦相似度会消除长度影响,适合比较兴趣和文本方向。