花书笔记:第2章线性代数
2.1 基本概念
- 标量 一个单独的数
- 向量 一列数
- 矩阵 一个 m×n 的二位数组
- 广播 矩阵A与向量b相加,隐式的将向量b复制到每一行与矩阵A进行相加
2.2 矩阵和向量相乘
- 矩阵的乘积 C ( m × p ) = A ( m × n ) B ( n × p ) C_(m×p)=A_(m×n) B_(n×p) C(m×p)=A(m×n)B(n×p) 矩阵的行向量和列向量对应元素相乘再相加(点积)
- Hadamard乘积 矩阵的对应元素相乘
- 点积 两个相同维数的向量对应元素相乘再相加
2.3 单位矩阵和逆矩阵
- 单位矩阵 对角线元素全为1,其余元素都为0的方阵记作E
- 逆矩阵 与原矩阵相乘为E。即, A − 1 A = E A^{-1}A= E A−1A=E
2.4 范数
- 范数 (
L
p
L_p
Lp距离)用于衡量一个向量的大小。其公式为:
∣ ∣ x ∣ ∣ p = ( ∑ i ∣ x i ∣ p ) 1 p ||x||_p = (\sum_i|x_i|^p)^{\frac{1}{p}} ∣∣x∣∣p=(i∑∣xi∣p)p1
其中, L 1 L_1 L1为街区距离 , L 2 L_2 L2为欧式距离
2.5 特征分解
对于一个矩阵,若该矩阵的特征值和特征向量均存在,则可分解为 A = V Λ V − 1 A = V\Lambda V^{-1} A=VΛV−1 其中 Λ \Lambda Λ为特征值组成的对角阵, V V V的每个列向量为特征值所对应的特征向量。特别的,A为实对称矩阵时 A = Q Λ Q T A = Q\Lambda Q^{T} A=QΛQT,其中 Q Q Q为正交矩阵, Q Q T = E QQ^T=E QQT=E。
2.6 奇异值分解(SVD)
-
目标: 将矩阵分解为奇异向量和奇异值
-
特点:
① 应用更广泛,每个实数矩阵都有一个奇异值分解,但不一定有特征分解 。
② 可以拓展矩阵求逆到非方矩阵上。
-
公式:
A = U D V T A = UDV^T A=UDVT
其中, U U U和 V V V都为正交矩阵,其列向量为左(右)奇异向量。 D D D为对角阵(不一定是方阵),对角线元素为奇异值。A A A 的左奇异向量是 A A T AA^T AAT 的特征向量,右奇异向量 是 A T A A^TA ATA 的特征向量。非零奇异值 是 A A T AA^T AAT也是 A T A A^TA ATA 的特征值的平方。
2.7 伪逆( A + A^+ A+)
-
作用: 解决线性方程组 A x = y Ax=y Ax=y 无解或具有多个解的问题。在求解 x x x 且当 A − 1 A^{-1} A−1 不存在时,通过 x = A + y x = A^+y x=A+y 可以得到一个解(*该解不一定是 A x = y Ax = y Ax=y 的真正解)
-
公式:
A + = V D + U T A^+ = VD^+U^T A+=VD+UT其中, U U U、 D D D、和 V V V是矩阵 A A A奇异值分解后得到的矩阵。 D D D 的伪逆 D + D^+ D+ 是 D D D 的非零元素取倒数后转置得到的。
-
伪逆的优点:
① 当矩阵 A A A 的列数多于行数时,方程有无数个解,则 x = A + y x = A^+y x=A+y 是方程组中所有可行解中 ∣ ∣ x ∣ ∣ 2 ||x||_2 ∣∣x∣∣2最小的一个。
② 当矩阵 A A A 的行数多于列数时,方程可能没有解。此时, x = A + y x = A^+y x=A+y 得到的解使得 ∣ ∣ A x − y ∣ ∣ 2 ||Ax-y||_2 ∣∣Ax−y∣∣2 最小
2.8 主成分分析 (PCA降维)
-
PCA 属于线性降维算法,TSNE 属于非线性降维算法。
-
单位范数: 是说矩阵列向量长度归一化,即列向量 L 2 L_2 L2 范数为 1。
-
算法思想: 当数据量过大时,我们希望对数据进行压缩使之变小,但为了保持数据信息的完整性,我们需要保证数据压缩后信息尽可能的不丢失。即,将数据压缩后,再将压缩后的数据解压还原,还原后的数据与原数据集尽可能的相同 (这里使用平方 L 2 L^2 L2 范数衡量数据的丢失程度)。PCA 采用的是对数据降维的方法来对数据压缩。其思路是寻找一个编码函数 C = f ( X ) C=f(X) C=f(X) 来压缩原始数据,并且其对应的解码函数 g ( C ) g(C) g(C) 满足 X ≈ g ( C ) X≈g(C) X≈g(C) 。
-
算法流程:
根据最终推导,编码函数为:
f ( X ) = D T X f(X)=D^TX f(X)=DTX
其中,矩阵 D D D 为 X T X X^TX XTX 的前 l l l 个特征值 (特征值从大到小排列) 对应的特征向量组成。 X X X 代表原始数据集, l l l 表示数据压缩的目标维数。