• 沒有找到結果。

第02讲向量的基础知识

N/A
N/A
Protected

Academic year: 2021

Share "第02讲向量的基础知识"

Copied!
38
0
0

加載中.... (立即查看全文)

全文

(1)

传媒与信息工程学院 欧 新 宇

第02讲 向量的基础知识

第2章 描述空间的工具—向量

(2)

向量的基本知识回顾

列向量及向量的Python描述

向量的范数

常用向量

向量的加法和数乘

向量间的乘法

向量的线性组合

第2章 描述空间的工具—向量

(3)

总体说明

空间是贯穿线性代数整个领域的主干和核心 概念,我们所有的概念和应用都会构架在空间这 个逻辑实体上。而向量和矩阵就是我们用来填充 这个实体的工具,包括运算、映射、降维、投影、

近似求解、特征提取等,都将建立在基于矩阵和 向量的空间中实现。

第2章 描述空间的工具—向量

(4)

向量的基本知识回顾

(5)

向量的定义

向量:也称欧几里得向量、几何向量、矢量,它指具有大小和 方向的量。它可以形象化地表示为带箭头的线段。直观地说,

一组排列成行或列的有序数字,就是向量。

箭头所指:代表向量的方向;

线段长度:代表向量的大小;

向量的记法:

印刷体,记作小写粗斜体字母,如

a, b, u, v

手写体,在字母顶上加一小箭头“→”,如

给定向量的起点A和终点B,可记作𝑨𝑩;

在空间直角坐标系中,以数对形式表示,如 (2, 3)

向量的基本知识回顾

(6)

向量的定义

向量的基本知识回顾

(7)

二维向量的空间表示

【例2.1】给定二维向量𝒖 = 3

4 ,它有两个分量,其中x分量值 为3,y分量值为4,以原点(0,0)为起点,可以在直角坐标系中构 建一条有向线段。

向量的基本知识回顾

y

x

4

3 3 4

o

(8)

三维向量的空间表示

【例2.2】给定三维向量𝒖 = 4 2 2

,它有三个分量,其中x分量值 为4,y分量值为2,z分量值为2,以原点(0,0,0)为起点,可以在 三阶笛卡尔坐标系中构建一条有向线段。

向量的基本知识回顾

x

4 2

4 2 2

o z

2

(9)

列向量及向量的Python描述

(10)

计算机领域主要使用列向量

根据数字的排列方式,向量可以被分为行向量和列向 量。在计算机领域中,我们常使用列向量来表示和处理向 量。例如,将矩阵

A

映射到向量x上时,可以用

A x来表示,

最常见的应用是求解方程组。列向量通常由两种表示方法。

⚫ 直观表示:𝛼 = 2

3 ,𝛽 = 2 3 4

⚫ 单行表示(更常用):𝛼 = 2, 3

𝑇

,𝛽 = 2, 3, 4

𝑇

列向量

(11)

在Python中,最重要,也是最常用的一个库就是数学 计算库 Numpy,它也是本门课中最主要的python工具包。

下面我们将使用numpy库来实现数组(向量、矩阵)的创建。

⚫ 创建numpy数组(向量)

⚫ 获取变量数据类型

基于Python语言的向量表示

(12)

在机器学习及大多数计算机任务中,都会以列向量的 方式对数据进行处理,而numpy默认生成的是行向量。所 以,需要事先进行转换。

最容易也是最直接的方法:矩阵转置(Transpose)。

列向量的生成

值得注意的是,在计 算机的存储意识中,向量 是一维的量,它只在一个 维度上具有值。因此,无 法进行转置。

(13)

如何处理呢?

列向量的生成

一维向量 二维矩阵

当我们使用向量来表示一个数据时,可以表示为:

𝑎=[𝑎 1 ,𝑎 2 ,...,𝑎 𝑛 ],

此时

𝑎

是一个维度为 1,长度为 𝑛 的数据(向量);

当我们使用矩阵来表示这个向量时,则可以表示为: 𝑨

𝟐 =[𝑎 11 ,𝑎 12 ,...,𝑎 1𝑛 ]

,此时 𝑨

𝟐

是一个维度为2的数据(矩阵),第一个维度长度为 1,第 二个维度长度为 𝑛,我们也可以将这样的矩阵理解为一个行向量,一 行 𝑛 列,形态为: (1, 𝑛)。

在转换为二维矩阵后,就可以通过矩阵的转置实现行向量向列向量的 转换,此时的数据 𝑨

𝟐

将转变为一个列向量 𝑩

𝟐

,𝑛 行一列,形态为:

(𝑛, 1) ,表示为: 𝑨

𝟑 =[𝑎 11 ; 𝑎 21 ; ...; 𝑎 𝑛1 ]。

(14)

使用二维矩阵进行转换

列向量的生成

(15)

【结果分析】

原始的一维向量𝑎和经过.transpose()或 .T 转换后的向量𝒃和𝒄

,都呈现为相同的形态 (4, 1),并且值也完全相同。这说明 在Python中,转置在向量上是无效的。

当我们使用二维矩阵进行转换时,新生成的矩阵𝑨

𝟐

是一个 1×𝑛 的二维矩阵,当经过 .transpose() .T 转换后,两个矩 阵都变成了𝑛×1的矩阵。这说明,原来以二维矩阵显示的行 向量,形态为(1, 4);已经转换为以二维矩阵显示的列向量了

,形态为(4, 1)。

列向量的生成

(16)

特别注意

在Python中一维向量和二维矩阵的表示非常容易转换,只需 要增加一层中括号"[ ]"就可以实现从一维到二维的转换。

相似地,三维矩阵使用三层中括号表示,𝑛 维矩阵使用𝑛层中 括号表示。

下面给出一维向量和二维向量的表示。

列向量的生成

(17)

课堂互动一 Link

(18)

向量的范数

(19)

范数的定义

范数(norm):数学中的一种基本概念。在线性代数、泛函 分析及相关的数学领域,范数是一个具有“长度”概念的 函数。在泛函分析中,它定义在赋范线性空间中,并满足 一定的条件,即①非负性;②齐次性;③三角不等式。

范数常常被用来度量向量空间(或矩阵)中的某个向 量的长度或大小。例如,在二维的欧氏几何空间R中,元素 被刻画成一个从原点出发的带有箭头的有向线段,每一个 矢量的有向线段的长度即为该矢量的欧氏范数。

向量的范数

(20)

范数的定义

对于一个𝑛维向量𝐿

𝑝

= 𝑣

1

, 𝑣

2

, … , 𝑣

𝑛

,其大小可以用 向量𝑣的范数来进行衡量,其一般形式可以表示为𝐿

𝑝

𝐿

𝑝

𝑣 ≡ 𝑣

𝑝

= ෍

𝑖=1 𝑛

𝑣

𝑖 𝑝

1 𝑝

其中, 𝑝 ∈ ℜ且𝑝 ≥ 1。

值得注意的是,符号 𝐿

𝑝

也被称为 𝒑-范数(p-norm)。

向量的范数

(21)

范数的典型性质

范数直观上可以表示为衡量向量长度的函数,相当于求原点o 到点𝑣的距离,因此所有的范数都满足以下三条性质:

非负性:函数的值永远都是非负,当且仅当向量为全零向量时,

范数函数值为0.

𝑓 𝒙 ≥ 0 𝒙 ≠ 0 𝑓 𝒙 = 0 𝒙 = 0 其中, 𝒙是任意向量, 𝑓 𝒙 是𝒙的范数。

三角不等式:两个向量范数的和大于等于两个向量和的范数。

𝑓 𝒙 + 𝑓 𝒚 ≥ 𝑓 𝒙 + 𝒚

正值齐次性: ∀𝑎 ∈ 𝑹, 𝑓 𝑎𝒙 = 𝑎 𝑓 𝒙

向量的范数

(22)

L2范数

对于𝒑-范数,当𝑝等于2时,L

2

范数(L2范数, L2 norm)也被称为欧几里得范数,它表示从源点出发到向 量𝑣的欧几里得距离,简称欧式距离。向量𝑣的欧式距离通 常可以表示为 𝑣

2

,也可以省略为: 𝑣 ,即:

𝑣

2

= 𝑣 = σ

𝑖=1 𝑛

𝑣

𝑖 2 1 2

在二维空间中,向量𝑣(𝑥, 𝑦) 的长度可以表示为:

𝑣 = σ

𝑖=1 2

𝑣

𝑖 2

1

2

= 𝑥

2

+ 𝑦

2 1 2

向量的范数

(23)

L2范数-向量间的距离

对于空间中的任意两个向量,也可以利用L2范数来求 它们之间的距离。

【例2.3】求向量𝑢=[2,2] 和向量𝑣=[5,3] 之间的距离 𝑑 。

可以表示为:

𝑑 = 𝑥

1

− 𝑥

2 2

+ 𝑦

1

− 𝑦

2 2 1 2

= 2 − 5

2

+ 2 − 3

2 1 2

= 10

向量的范数

1 2 3 4 5

1 2 3

u

v

(24)

L2范数-向量间的距离

L2范数在机器学习和深度学习中被广泛应用,在具体 的应用中,我们可以用两个向量的欧式距离来表达它们之 间的相似性。此外,还可以使用L2范数来对样本的特征或 权重进行约束。

例如,公式𝑎𝑟𝑔𝑚𝑖𝑛 𝑋𝜃 − 𝑦

2

+ Γ𝜃

2

,给出了岭回归 算法(一种使用L2正则化的线性模型)的典型形式。

如上例所示,为了方便计算,经常会使用平方L2范数 来替代L2范数,省去开平方操作。

向量的范数

(25)

L2范数-向量的点积

两个向量的点积 𝑥

𝑇

𝑦可以用范数来表示,具体如下:

𝑥

𝑇

𝑦 = 𝑥

2

𝑦

2

cos 𝜃

向量的范数

(26)

L1范数

当𝑝等于1时,𝒑-范数就会退化成另外一种常用的特殊范数

L 1

范数(L1范数, L1 norm)。其数学表达为:

𝐿

1

𝑣 ≡ 𝑣

1

= ෍

𝑖=1 𝑛

𝑣

𝑖

不难看出,它是对向量中的每个元素的绝对值的累加。因 此,L1范数可以用来区分零元素和非零元素。在机器学习和深 度学习中,区分零和非零是非常重要,因此它也可以实现对样 本特征或权重的约束。

例如,公式𝑎𝑟𝑔𝑚𝑖𝑛 𝑋𝜃 − 𝑦

2

+ 𝛼 𝜃

1

,给出了套索(Lasso) 回归算法(一种使用L1正则化的线性模型)的典型形式。

向量的范数

(27)

无穷范数

当𝑝趋近于∞时,𝒑-范数就会变为机器学习中经常出现 的另外一种范数:L

范数,又称为无穷范数或最大范数 (max norm)。L

范数表示向量中最大分量的绝对值:

𝐿∞ 𝑣 ≡ 𝑣 ∞ = max

𝑖

𝑣

𝑖

在数据处理中,有时需要选择出响应最大的分量来进 行处理。此时,就可以使用无穷范数。在深度学习中的卷 积神经网络CNN模型中的最大池化(max-pooling)就是 这种思想最典型的应用。

向量的范数

(28)

F-范数

弗罗贝尼乌斯范数(Frobenius范数):简称为F范数,

是一种定义在矩阵上的范数,用于衡量矩阵的大小。F范 数表示矩阵中各元素的平方和开方,其数学表达为:

𝑨

F

= ෍

𝑖,𝑗

𝐴

𝑖,𝑗 2

F范数的计算规则与L2范数非常相似,区别是它是 定义在矩阵上的范数,用于衡量矩阵的大小。

向量的范数

(29)

范数的Python描述

L2范数:

np.linalg.norm(x) # 默认状态为L2范数 np.linalg.norm(x, ord=2)

L1范数:

np.linalg.norm(x, ord=1)

无穷范数:

np.linalg.norm(x, ord=np.inf)

F范数:

np.linalg.norm(X) # 当X为矩阵时,即为F范数

向量的范数

(30)

课堂互动二 Link

(31)

常用向量

(32)

全0向量和全1向量

全0向量:所有分量都为0的向量,用一个粗体的0表示。

全1向量:所有分量都为1的向量,用一个粗体的1表示。

全0向量和全1向量,通常都是为了保证表达式描述的 正确性或为变量进行初始化使用。

𝟎 = 0 0⋮ 0

, 𝟏 = 1 1⋮ 1

常用向量

(33)

One-hot向量

One-Hot向量:又称为独热码(独热编码),有且仅有一 个分量为1,其它分量都为0的向量。其形式如下:

𝑎 = [0,0,1,0,0,0,0,0]

One-Hot向量在编码中使用广泛,例如,在分类应用 中,对于一个有8个类别的场景,通常将分类结果编码为一 个One-Hot向量,元素为1的那个分量对应的类别即为真实

(预测)的分类类别。

One-Hot属于一种稀疏编码,不同分量之间默认没有 关联。并且不同分量间通常是独立同分布(IID)的。

常用向量

(34)

One-hot向量的应用一:类别定义

在进行类别编码的时候,经常会使用one-hot变量来 实现多类的编码,例如在一个包含四个类别的任务中,

⚫ 原始的类别为:class=[cat, dog, sheep, fish],

⚫ 常见的编码形式为 [cat: 0, dog: 1, sheep: 2, fish: 3]

⚫ 其one-hot形式为:

[cat: 1000, dog: 0100, sheep: 0010, fish: 0001]

常用向量

(35)

One-hot向量的应用二:简化输出

在实际应用中,为了简化结果,我们经常使用 One-hot向量来作为多分类任务预测结果的最终输出.

例如, 给定一个5类的分类器,

✓ 其最终的概率输出为:prob = [0.2, 0.25, 0.5, 0.1, 0.05].

✓ 则经过简化后的最终输出为:pred = [0,0,1,0,0]

常用向量

(36)

单位向量

单位向量(Unit Vector):L2范数为1的向量。

𝑣 = 1

单位向量将向量的长度约束为1,这样很好地屏蔽了模 长带来的影响,使向量只用于表达方向一种量。例如常用 的余弦相似性(cosine similarity)就通过比较两个向量的 夹角大小来确定向量间的相似性。

cos 𝜃 = 𝑢

𝑇

𝑣 = 𝑣

𝑇

𝑢

其中,𝜃为两个向量的夹角,𝑢和𝑣为两个单位向量。

常用向量

(37)

课堂互动三 Link

(38)

读万卷书 行万里路 只为最好的修炼

QQ:14777591 (宇宙骑士)

Email:ouxinyu@alumni.hust.edu.cn Tel:18687840023

第02讲 向量的基础知识

參考文獻

相關文件

微积分的创立是数学发展中的里程碑, 它的发展 和广泛应用开启了向近代数学过渡的新时期, 为研究 变量和函数提供了重要的方法和手段. 运动物体的瞬

3.正弦函数y=Asin(ωx+φ)的图象之间的变换关系是学生最熟悉的一种伸缩变换.教 材从学生最熟悉的这一内容入手 ,分别比较了函数y=sin2x 和y=sinx 的图象之间的关

为此, 我们需要建立函 数的差商与函数的导数间的基本关系式, 这些关系式称为“微分学中值定理”...

[初等函数] 幂函数、指数函数、对数函数、三角函数、反三角函数通称为“ 基本初等函

本章我们又一次经历了用函数研究变化规律的过程 ,用反比例函数刻画具 有反比例关系的两个变量之间的对应关系 :在变量y 随变量x 的变化而变化的

11.了解傅里叶级数的概念和狄利克雷收敛定理,会将 定义在 上的函数展开为傅里叶级数, 会 将定义在

(3)无穷小是一类特殊函数, 是在某一变化过程中极限 为0的函数, 并且在一个过程中为无穷小的量在另一过 程中可能不是无穷小量... 定理5

本章先介绍向量概念、然后引入空间直角坐标