《动手学深度学习》笔记(二)

EliorFoy Lv3

相关知识回顾

1.线性代数

①生成子空间:向量的线性组合 icivi\sum_{i}c_i\vec{v}_i
②列空间:A的列向量的生成子空间\rightarrow列空间/值域
如果Ax=bAx=bbRm,则列空间构成Rm\forall b \in R^{m} \exists 解,则列空间构成R^m
比如:

[1234][xy]\begin{bmatrix} 1 &2 \\ 3 & 4 \end{bmatrix}\cdot \begin{bmatrix} x \\ y \end{bmatrix}

就是构成了一个列空间,xyx、y任取就对应不同的结果,这个结果构成一个集合
③列空间构成RmR^m \Rightarrow A至少m列即nmn \ge m
因为:假设 AR3×2A \in R^{3 \times 2} bb是三维的而xx只有两维,只能描绘R3R^3空间中的平面
④一个列向量线性相关的方阵成为奇异的
⑥矩阵可逆必为方阵(实际上m×nm \times n的矩阵也存在AA使得AB=ImA \cdot B = I_m但那是后续的伪逆,只有在即使左逆又是右逆的情况下才叫可逆,同时可以推出可逆阵是方阵
⑦范数(norm):衡量从原点到点x的距离
xp=(ixip)1p\left\|\boldsymbol{x}\right\|_p=\left(\sum_i|x_i|^p\right)^{\frac1p}
p=2p=2L2L^2为欧几里得范数 L2=x2=xxL^2= \left\|\boldsymbol{x}\right\|_2= x \cdot x^\top(点积)
p=1p=1 时为 L1L^1 ,当机器学习问题中零元素和非零元素的差异非常重要时就会使用该范数, L1L^1 也替代 L0L^0 经常作为表示非零元素数目的替代函数
LL^\infty范数(最大范数)表示向量中具有最大幅值的元素的绝对值。即L=maxixiL^ \infty = \max_i|x_i|
Frobenius 范数: AF=i,jAi,j2,\left\|A\right\|_F=\sqrt{\sum_{i, j}A_{i, j}^2}, 衡量矩阵的大小
⑧对角矩阵: ijDi,j=0i \ne j \quad D_{i,j} = 0
diag(v)diag(v)表示对角元素由向量vv中元素给定的对角方阵
diag(v)x=vxdiag(v) \cdot x = v \odot x
⑨标准正交:n个向量不仅相互正交并且范数都为1
正交矩阵:行、列向量分别标准正交,即 AA=AA=IA \cdot A^\top = A^\top \cdot A =I 也即 A=A1A^\top = A^{-1}
⑩特征分解
特征向量: 对于非零向量vv,方阵AA

Av=λvA \cdot v = \lambda v

标量λ\lambda为特征向量对应的特征值(同理有定义左特征向量vA=λAv^\top A=\lambda A)
⑪由于特征向量可以缩放,所以一般只考虑单位特征向量
n个线性无关的特征向量{v(1),...v(n)}\{v^{(1)},...v^{(n)}\}
对应的特征值{λ1,...λn}\{\lambda_1,...\lambda_n\}
A 的特征值分解: Vdiag(λ)V1Vdiag(\lambda)V^{-1}
不是每一个矩阵都可以分解成特征值和特征向量
在某些特殊情况下特征分解存在但会涉及复数
而每个实对称矩阵都可以分解成实特征向量和实特征值

A=QΛQ1A = Q \Lambda Q^{-1}

但特征分解可能不唯一
矩阵的作用其实是让的不同向量空间里的向量进行拉伸

  • 矩阵是奇异的当且仅当含有零特征值
    正定: 所有特征值都是正数
    半正定: 所有特征值都是非负数
    同理还有负定和半负定
    f(x)=xAxf(x) = x^\top Ax xx 为某个特征向量时 ff 返回对应的特征值 (限制 x2=1\left \|x \right\|_2=1, 见花书 P 39)
    ⑬奇异值分解 (相比于特征分解应用更广泛, 因为不仅限于方阵)
    每一个实数矩阵都有一个奇异值分解, 且非方阵只能用奇异值分解
    分解:

A=UDVA = UDV^\top

A:m×mA: m\times m 为正交矩阵, 列向量为左奇异向量
D:m×nD: m\times n 为对角矩阵, 对角元素为矩阵 A 的奇异值
V:n×nV^\top : n \times n 为正交矩阵, 列向量为右奇异向量
*{AA的特征向量即为左奇异向量AA的特征向量即为右奇异向量A的非零奇异向量是AA/AA特征值的平方根\begin{cases}AA^\top\text{的特征向量即为左奇异向量}\\A^\top A\text{的特征向量即为右奇异向量}\\A\text{的非零奇异向量是}AA^\top/A^\top A\text{特征值的平方根}&\end{cases}
⑭Moorse-Penrose 伪逆 (非方阵左逆)
A 的伪逆: A+=limα(AA+αI)1AA^+ = \lim_{\alpha \to \infty}(A^\top A +\alpha I)^{-1}A^\top
计算伪逆: A+=VD+UA^+ = VD^+U^\top VDUV、D、U即为奇异分解后的是哪个矩阵
DD^\top即为DD非零元素取倒数后转置
{m<nx=A+y是方程所有可行解中x2中最小的一个m>n可能没有解,伪逆得到的x使Axy2最小\begin{cases}m<n时 \quad x=A^+ y是方程所有可行解中\left \|x \right \|_2中最小的一个 \\ m>n时 \quad 可能没有解,伪逆得到的x使\left \| Ax-y \right \|_2最小\end{cases}
⑮迹运算 Tr(A)=iAijTr(A) = \sum_{i}A_{ij}
AF=Tr(AAT)\left \| A \right \|_F = \sqrt{Tr(AA^T)}
Tr(ABC)=Tr(CBA)=Tr(BCA)Tr(ABC) = Tr(CBA) = Tr(BCA)
更一般地有:Tr(inF(i))=Tr(F(n)in1F(i))Tr(\prod_{i}^nF^{(i)}) = Tr(F^{(n)} \prod_{i}^{n-1}F^{(i)})
对于标量 a=Tr(a)a = Tr(a)
⑯行列式:绝对值衡量矩阵乘法后空间扩大或者缩小多少(如果为0则沿某一维完全收缩,比较Jacobian矩阵)
行列式的结果等于矩阵的各个特征值的乘积
对于满秩矩阵,一组特征向量可以当作一组坐标系的基
分别伸缩λi\lambda_i空间伸缩inλi=A\therefore 空间伸缩\prod_{i}^n \lambda_i = |A|
(表示坐标旋转的矩阵一般人两个特征值共轭的复数,复平面上表示的旋转角度的绝对值即为坐标旋转角度)

2.概率与信息论

①Bernoulli分布
P(x=1)=ϕP(x=0)=1ϕP(x=1)= \phi \quad P(x=0) = 1- \phi
②Multinoulli分布(范畴分布)
具有k个不同状态的单个离散随机变量上的分布
③高斯分布(正态分布)
N(x,μ,σ2)=12πσ2e12σ2(xμ)2\mathcal{N}(x,\mu,\sigma^2)=\sqrt{\frac{1}{2\pi \sigma^2}}e^{-\frac{1}{2\sigma^2}(x-\mu)^2}
多维正态分布:
N=1(2π)ndet(Σ)e12(xμ)Σ1(xμ)\mathcal{N} = \sqrt{\frac{1}{(2\pi)^ndet(\Sigma)}}e^{-\frac{1}{2}(x-\mu)^\top\Sigma^{-1}(x-\mu)}
其中μ\mu仍然是均值,不过是向量值;Σ\Sigma是协方差矩阵,可以用β\beta替代Σ1\Sigma^{-1}
更简单版本:各向同性高斯分布(协方差阵是标量×\times单位阵)
④指数分布
p(x;λ)=λ1x0eλxp(x;\lambda)=\lambda \mathbf{1}_{x\ge0}e^{-\lambda x}
Laplace分布: Laplace(x;μ;γ)=12γexμγLaplace(x;\mu;\gamma)=\frac1{2\gamma}e^{-\frac{|x-\mu|}{\gamma}}
可以在任意一点μ\mu设置概率质量的峰值
⑤Dirac分布 p(x)=δ(x)p(x) = \delta(x) 集中在一点
经验分布 p^(x)=1mimδ(xx(i))\hat{p}(x) = \frac1m \sum_{i}^m{\delta(x-x^{(i)})}
⑥常用函数
logistic sigmoid函数 σ(x)=11+ex\sigma(x) = \frac1{1+e^{-x}} \rightarrow 产生Bernoulli的ϕ\phi
![[logistic函数.png]]
softplus函数 ζ(x)=log(1+ex)\zeta(x)=log(1+e^x) \rightarrow 产生正态分布的β\betaσ\sigma
性质:

  • σ(x)=exex+e0\sigma(x) = \frac{e^x}{e^x+e^0}
  • ddxσ(x)=σ(x)(1σ(x))\frac{d}{dx}\sigma(x)=\sigma(x)(1-\sigma(x))
  • log(σ(x))=ζ(x)log(\sigma(x)) = -\zeta(-x)
  • ddxζ(x)=σ(x)\frac{d}{dx}\zeta(x) = \sigma(x)
  • x(0,1)σ1(x)=log(11x)\forall x \in (0,1) \quad \sigma^{-1}(x) = log(\frac1{1-x})
  • x>0ζ1(x)=log(ex1)\forall x \gt 0 \quad \zeta^{-1}(x) = log(e^x-1)
  • ζ(x)=xσ(y)dy\zeta(x) = \int_{-\infty}^{x}\sigma(y) \mathrm{d}y
  • ζ(x)ζ(x)=x\zeta(x) - \zeta(-x) = x
    信息论部分暂略…

3.数值计算

①条件数:函数对于输入的微小变化而变化的快慢程度
f(x)=A1xARn×mf(x) = A^{-1}x \quad A \in R^{n \times m} 具有特征值分解时
条件数maxijλiλjmax_{ij}|\frac{\lambda_i}{\lambda_j}| 最大与最小特征值模之比
② Jacobian矩阵: f:RmRnJij=xf(x)if : R^m \rightarrow R^n \quad J_{ij} = \frac{\partial}{\partial x}f(x)_i
Hessian矩阵: H(f)(x)i,j=2xixjf(x)H(f)(x)_{i,j} = \frac{\partial^2}{\partial x_i \partial x_j}f(x) 等价于梯度的Jacobian矩阵
仅使用梯度信息的优化算法 \Rightarrow 一阶优化算法
使用Hessian矩阵的优化算法 \Rightarrow 二阶最优化算法

  • 标题: 《动手学深度学习》笔记(二)
  • 作者: EliorFoy
  • 创建于 : 2024-10-12 17:21:47
  • 更新于 : 2024-10-12 17:22:41
  • 链接: https://eliorfoy.github.io/2024/10/12/大三上/《动手学深度学习》(二)/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
此页目录
《动手学深度学习》笔记(二)