2014斯坦福大学吴恩达机器学习课程笔记-3 Linear Algebra


3 线性代数(Linear Algebra)

3-1 矩阵(Matrix)和向量(Vector)

矩阵

矩阵:Rectangular array of numbers,可看作二维数组
矩阵的维度(dimension):行数(row)×列数(column)

R r × c \R^{r\times c} Rr×c:维度为 r × c r×c r×c 的矩阵的集合

表示矩阵的元素(element/entry):若矩阵为 A A A,则 A i j A_{ij} Aij 表示第 i i i 行第 j j j 列的矩阵元素

向量

向量:n×1(只有一列)的矩阵
向量的维度:行数

R n \R^n Rn:维度为n的向量的集合

表示向量的元素:若向量为 y y y,则 y i y_i yi 表示向量的第 i i i 个元素

  • i(下标/index)可以从0(0-indexed,机器学习应用常用)开始,也可以从1(1-indexed,数学常用)开始
  • 默认使用1-indexed

*常用大写字母表示矩阵,使用小写字母表示数字、标量、向量

3-2 矩阵加法与标量乘法(Addition and Scalar Multiplication)

A = ( A i j ) A=(A_{ij}) A=(Aij), B = ( B i j ) B=(B_{ij}) B=(Bij), C = ( C i j ) C=(C_{ij}) C=(Cij)

矩阵加法 A + B = C A+B=C A+B=C, where C i j = A i j + B i j C_{ij}=A_{ij}+B_{ij} Cij=Aij+Bij

  • 维度:同维度矩阵才能相加,相加后维度不变

矩阵-标量乘法 λ × A = A × λ = C \lambda\times A=A\times\lambda=C λ×A=A×λ=C, where C i j = A i j × a C_{ij}=A_{ij}\times a Cij=Aij×a

  • 维度:标量乘法为一实数与矩阵相乘,相乘后维度不变

*减法和标量除法同理

3-3&3-4 矩阵-向量/矩阵-矩阵乘法(Matrix-Vector / Matrix-Matrix Multiplication)

A = ( A i j ) A=(A_{ij}) A=(Aij), B = ( B i j ) B=(B_{ij}) B=(Bij), C = ( C i j ) C=(C_{ij}) C=(Cij), x = ( x i ) x=(x_i) x=(xi), y = ( y i ) y=(y_i) y=(yi)

矩阵-矩阵乘法 A × B = C A\times B=C A×B=C, where
C i j = A i 1 × B 1 j + A i 2 × B 2 j + ⋯ + A i s × B s j = ∑ k = 1 s ( A i k B k j ) C_{ij}=A_{i1}\times B_{1j}+A_{i2}\times B_{2j}+\dots+A_{is}\times B_{sj}=\displaystyle\sum_{k=1}^s(A_{ik}B_{kj}) Cij=Ai1×B1j+Ai2×B2j++Ais×Bsj=k=1s(AikBkj)
( i = 1 , 2 , … , m ; j = 1 , 2 , … , n ) (i=1, 2, \dots, m; j=1, 2, \dots, n) (i=1,2,,m;j=1,2,,n)

  • 即: A A A 的第 i i i 行与 B B B 的第 j j j 列对应元素依次相乘并求和,得到 C C C 的第 i i i 行第 j j j 列元素
  • 维度:上式中, A A A 的维度为 m × s m\times s m×s B B B 的维度为 s × n s\times n s×n,其乘积 C C C 的维度为 m × n m\times n m×n

矩阵-向量乘法 A × x = y A\times x=y A×x=y, where
y i = A i 1 × x 1 + A i 2 × x 2 + ⋯ + A i n × x n = ∑ k = 1 s ( A i j x j ) y_i=A_{i1}\times x_1+A_{i2}\times x_2+\dots+A_{in}\times x_n=\displaystyle\sum_{k=1}^s(A_{ij}x_{j}) yi=Ai1×x1+Ai2×x2++Ain×xn=k=1s(Aijxj)
( i = 1 , 2 , … , m ; j = 1 , 2 , … , n ) (i=1, 2, \dots, m; j=1, 2, \dots, n) (i=1,2,,m;j=1,2,,n)

  • 即:矩阵 A A A 的第 i i i 行与向量 x x x 对应元素相乘并求和,得到向量 y y y 的第 i i i 个元素
  • 维度:上式中,矩阵 A A A 的维度为 m × n m\times n m×n,向量 x x x 的维度为 n n n(对应 n × 1 n\times 1 n×1 的矩阵),其乘积 y y y 的维度为 m m m

*可以将向量看作一维矩阵,也可以反过来将矩阵看作多个向量拼接而成(每一列对应一个向量),因此矩阵-矩阵乘法可以看作是多个矩阵-向量乘法的结果写在了一起(每一列对应矩阵与一个向量的积)


h θ ( x ) = θ 0 + θ 1 x h_θ(x)=θ_0+θ_1x hθ(x)=θ0+θ1x 中,给定 x x x n n n 个取值,计算 h θ ( x ) h_\theta(x) hθ(x) 的便捷方法:
【便于编程实现,否则需要for循环逐一计算,既增加了代码量,又增加了计算复杂度(矩阵运算的复杂度经过算法优化)】

  • x x x n n n 个取值构造成 n × 2 n\times 2 n×2 的矩阵,其中第1列的元素全为 1: [ 1 x ( 1 ) 1 x ( 2 ) ⋮ ⋮ 1 x ( n ) ] \begin{bmatrix} 1 & x^{(1)} \\ 1 & x^{(2)} \\ \vdots & \vdots \\ 1 & x^{(n)} \end{bmatrix} 111x(1)x(2)x(n)
  • h θ ( x ) h_\theta(x) hθ(x) 的参数用2维向量表示: ( θ 0 θ 1 ) \begin{pmatrix} θ_0 \\ θ_1 \end{pmatrix} (θ0θ1)
  • 将上述矩阵和向量相乘: [ 1 x ( 1 ) 1 x ( 2 ) ⋮ ⋮ 1 x ( n ) ] × ( θ 0 θ 1 ) = ( h θ ( x ( 1 ) ) h θ ( x ( 2 ) ) ⋮ h θ ( x ( n ) ) ) \begin{bmatrix} 1 & x^{(1)} \\ 1 & x^{(2)} \\ \vdots & \vdots \\ 1 & x^{(n)} \end{bmatrix}\times\begin{pmatrix} θ_0 \\ θ_1 \end{pmatrix}=\begin{pmatrix} h_θ(x^{(1)}) \\ h_θ(x^{(2)}) \\ \vdots \\ h_θ(x^{(n)}) \end{pmatrix} 111x(1)x(2)x(n)×(θ0θ1)=hθ(x(1))hθ(x(2))hθ(x(n))

h θ ( x ) h_θ(x) hθ(x) 具有 m m m 种形式,即 θ 0 \theta_0 θ0 θ 1 \theta_1 θ1 m m m 种不同的取值,可以将上式中的向量写成矩阵,其中每一列代表了一种 θ 0 \theta_0 θ0 θ 1 \theta_1 θ1 的取值,则有:
[ 1 x ( 1 ) 1 x ( 2 ) ⋮ ⋮ 1 x ( n ) ] × [ θ 0 ( 1 ) θ 0 ( 2 ) … θ 0 ( m ) θ 1 ( 1 ) θ 1 ( 2 ) … θ 1 ( m ) ] = [ h θ ( 1 ) ( x ( 1 ) ) h θ ( 2 ) ( x ( 1 ) ) … h θ ( m ) ( x ( 1 ) ) h θ ( 1 ) ( x ( 2 ) ) h θ ( 2 ) ( x ( 2 ) ) … h θ ( m ) ( x ( 2 ) ) ⋮ ⋮ ⋮ h θ ( 1 ) ( x ( n ) ) h θ ( 2 ) ( x ( n ) ) … h θ ( m ) ( x ( n ) ) ] \begin{bmatrix} 1 & x^{(1)} \\ 1 & x^{(2)} \\ \vdots & \vdots \\ 1 & x^{(n)} \end{bmatrix}\times\begin{bmatrix} θ_0^{(1)} & θ_0^{(2)} & \dots & θ_0^{(m)} \\ θ_1^{(1)} & θ_1^{(2)} & \dots & θ_1^{(m)} \end{bmatrix}=\begin{bmatrix} h_θ^{(1)}(x^{(1)}) & h_θ^{(2)}(x^{(1)}) & \dots & h_θ^{(m)}(x^{(1)}) \\ h_θ^{(1)}(x^{(2)}) & h_θ^{(2)}(x^{(2)}) & \dots & h_θ^{(m)}(x^{(2)}) \\ \vdots & \vdots & & \vdots \\ h_θ^{(1)}(x^{(n)}) & h_θ^{(2)}(x^{(n)}) & \dots & h_θ^{(m)}(x^{(n)}) \end{bmatrix} 111x(1)x(2)x(n)×[θ0(1)θ1(1)θ0(2)θ1(2)θ0(m)θ1(m)]=hθ(1)(x(1))hθ(1)(x(2))hθ(1)(x(n))hθ(2)(x(1))hθ(2)(x(2))hθ(2)(x(n))hθ(m)(x(1))hθ(m)(x(2))hθ(m)(x(n))


3-5 矩阵乘法属性(Matrix Multiplication Properties)

矩阵-标量(实数)乘法:

  • 交换律(commutative): λ × A = A × λ \lambda\times A=A\times\lambda λ×A=A×λ
  • 结合律(associative)
  • 分配律

矩阵-矩阵乘法:

  • (一般)不满足交换律: A × B ≠ B × A A\times B≠B\times A A×B=B×A
  • 结合律: ( A × B ) × C = A × ( B × C ) (A\times B)\times C=A\times(B\times C) (A×B)×C=A×(B×C)
  • 分配律

单位矩阵(identity matrix):对角线元素均为1
I I I (or I n × n I_{n\times n} In×n) = [ 1 0 … 0 0 1 … 0 ⋮ ⋮ ⋮ 0 … … 1 ] =\begin{bmatrix} 1 & 0 & \dots & 0 \\ 0 & 1 & \dots & 0 \\ \vdots & \vdots & & \vdots \\ 0 & \dots & \dots & 1 \end{bmatrix} =10001001

单位矩阵的特性:对于任意矩阵 A A A 和单位矩阵 I I I,有: A ⋅ I = I ⋅ A = A A\cdot I=I\cdot A=A AI=IA=A

  • 注意维度的对应关系,上式中两个 I I I 的维度可能不同

3-6 逆与转置(Inverse and Transpose)

方阵(square matrix):行列数相等的矩阵
零矩阵:所有元素均为0的矩阵

矩阵的逆(matrix inverse):若 A A A m × m m\times m m×m 矩阵(方阵),且其有逆矩阵(记作 A ( − 1 ) A^{(-1)} A(1)),则有:
A A ( − 1 ) = A ( − 1 ) A = I AA^{(-1)}=A^{(-1)}A=I AA(1)=A(1)A=I

  • 方阵才有逆矩阵
  • 奇异矩阵(singular matrix)/退化矩阵(degenerate matrix)没有逆矩阵
    • 零矩阵是奇异矩阵的一种

矩阵的转置(matrix transpose):对于矩阵 A = ( A i j ) A=(A_{ij}) A=(Aij),其转置矩阵为 A T = ( A i j T ) A^T=(A^T_{ij}) AT=(AijT),其中 A i j T = A j i A^T_{ij}=A_{ji} AijT=Aji

  • 即:矩阵 A A A 的行是其转置矩阵 A T A^T AT 的列(同序数)
  • 求转置可以看作是沿矩阵的45°对角线作镜像操作,或沿对角线进行翻转
  • 维度:若 A A A 的维度为 m × n m\times n m×n,则 A T A^T AT 的维度为 n × m n\times m n×m
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Green Lv

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值