Mathematics for Machine Learning--學習筆記(線性代數篇)

風華正茂呀發表於2020-10-23

  老師上課在講這個東西 奈何上課根本聽不進去,又不想掛科,(主要是本英文書,奈何自己英文水平太差,上課看不懂,只能下課自己看咯)看都看了,順帶寫寫部落格吧。

一、Linear Algebra(線性代數)

  我們一般學的向量都是“幾何向量”, x ⃗ \vec{x} x , y ⃗ \vec{y} y 這樣的。而這本書中討論向量的一般概念,並用x,y來表示。
  而從抽象的數學觀點來看,只要是一個物件滿足跟一個標量相乘或者同型別相加得到的結果,還是這個型別的物件的話,就可以說這個物件是一個向量。
  舉個例子:兩個空間向量相加或者乘一個數,結果還是一個空間向量。類似的還有多項式,音訊訊號還有
            a= [ 1 2 3 ] \begin{bmatrix}1 \\ 2\\3 \end{bmatrix} 123 R 3 R^3 R3也是一種向量

1.1 Systems of Linear Equations(線性方程組)

例1.1:某家公司要生產 N 1 N_1 N1 N n N_n Nn種產品,每種產品分別需要 R 1 R_1 R1 R m R_m Rm種原料。用 a i j a_{ij} aij表示生產第j個產品所需要的第i個原料。而生產對應產品的數目分別用 x 1 x_1 x1 x n x_n xn表示。即所需要的 R 1 R_1 R1原料總數就是 a 11 a_{11} a11 x 1 x_1 x1+… a 1 n a_{1n} a1n x n x_n xn=b1.整個方程組如下
{ a 11 x 1 + . . . + a 1 n x n = b 1 ⋮ a m 1 x 1 + . . . + a m n x n = b 1 \left\{ \begin{array}{c} a_{11}x_1+...+a_{1n}x_n=b_1 \\ \vdots \\ a_{m1}x_1+...+a_{mn}x_n=b_1 \end{array} \right. a11x1+...+a1nxn=b1am1x1+...+amnxn=b1
這就是個線性方程組一般形式了。也就是找最優解的數學模型。對應的 x 1 x_1 x1 x n x_n xn就是一組解。
  而一個線性方程組的空間概念是什麼呢?
 當一個線性方程組有兩個變數 x 1 x_1 x1, x 2 x_2 x2時,他們每一個方程就表示二位空間上的一條線,由於線性方程組的解必須滿足所有方程,所以呢,對應的就是兩線的交點啦。所以解就有三種情況,交於一點(有唯一解)、兩條直線重合(無數解)、兩條直線平行(無解)。
 有三個變數時每一個方程就表示一個平面咯,更多的話就表示更高的維度了。
而為了解決這些線性方程組的問題,我們就引入了一種符號,沒錯,就是矩陣
      x 1 x_1 x1 [ a 11 ⋮ a m 1 ] \begin{bmatrix}a_{11} \\ \vdots \\a_{m1} \end{bmatrix} a11am1+ x 2 x_2 x2 [ a 12 ⋮ a m 2 ] \begin{bmatrix}a_{12} \\ \vdots \\a_{m2} \end{bmatrix} a12am2+…+ x n x_n xn [ a 1 n ⋮ a m n ] \begin{bmatrix}a_{1n} \\ \vdots \\a_{mn} \end{bmatrix} a1namn= [ b 1 ⋮ b m ] \begin{bmatrix}b_1 \\ \vdots \\b_m\end{bmatrix} b1bm ⟺ \Longleftrightarrow [ a 11 . . . a 1 n ⋮ ⋮ a m 1 . . . a m n ] \begin{bmatrix}a_{11}&...&a_{1n} \\ \vdots & &\vdots\\a_{m1}&...&a_{mn} \end{bmatrix} a11am1......a1namn [ x 1 ⋮ x n ] \begin{bmatrix}x_1 \\ \vdots \\x_n\end{bmatrix} x1xn = [ b 1 ⋮ b m ] \begin{bmatrix}b_1 \\ \vdots \\b_m\end{bmatrix} b1bm
接下來主要就是講矩陣了

1.2 Matrices(矩陣)

1.2.1 Matrix Addition and Multiplication(矩陣加法和矩陣乘法)

  基本運算就不多說了。加法就是對應元素相加。兩個矩陣行列數一樣時才能想加乘法就是AB中的 a i j a_{ij} aij就是A的i行乘以B的j列對應相乘再相加。注意:兩個矩陣只有在相鄰的維度一樣時才可以做乘法運算,就是AB,A的列數等於B的行數。最後得出的新矩陣行數=A的行數,列數=B的列數。還有就是矩陣乘法不滿足交換率的,即AB ≠ \neq =BA。還有就是單位矩陣主對角線為1,其餘為零,這都知道。
  然後矩陣的性質也提一下吧:

  • 結合律:A(BC)=(AB)C
  • 分配率:(A+B)C=AC+BC
  • 矩陣和單位矩陣相乘還等於自己

1.2.2 Inverse and Transpose(逆和轉置)

逆:現在有一個方陣A,如果存在一個方陣B,使得AB等於單位矩陣 I n I_n In,這時B就是A的逆矩陣,記做 A − 1 A^{-1} A1不是每個矩陣都有逆,如果一個矩陣有逆,他可以被稱作正則矩陣/奇異矩陣/可逆矩陣
轉置:通俗點來說就是行列互換嘛,沒什麼可講的。
  下面寫一下逆和轉置的性質:

  • A A − 1 = I = A − 1 A AA^{-1}=I=A^{-1}A AA1=I=A1A
  • ( A B ) − 1 = B − 1 A − 1 (AB)^{-1}=B^{-1}A^{-1} (AB)1=B1A1
  • ( A + B ) − 1 (A+B)^{-1} (A+B)1 ≠ \neq = A − 1 + B − 1 A^{-1}+B^{-1} A1+B1
  • ( A T ) T = A (A^T)^T=A (AT)T=A
  • ( A + B ) T = A T + B T (A+B)^T=A^T+B^T (A+B)T=AT+BT
  • ( A B ) T = B T A T (AB)^T=B^TA^T (AB)T=BTAT
    對稱矩陣: A = A T A=A^T A=AT時,稱A為對稱矩陣。只有方陣才有可能是對稱矩陣
    如果一個矩陣可逆,那麼他的轉置矩陣也可逆。 ( A − 1 ) T = ( A T ) − 1 (A^{-1})^T=(A^T)^{-1} (A1)T=(AT)1。一般來說,對稱矩陣相加也是對稱矩陣,相乘則不一定。

1.2.3 Multiplication by a Scalar(矩陣乘以標量)

沒什麼好說的,列幾個性質吧

  • ( λ φ ) C = λ ( φ C ) (\lambda\varphi )C=\lambda(\varphi C) (λφ)C=λ(φC)
  • λ ( B C ) = ( λ B ) C = B ( λ C ) = ( B C ) λ \lambda(BC)=(\lambda B)C=B(\lambda C)=(BC)\lambda λ(BC)=(λB)C=B(λC)=(BC)λ
  • ( λ C ) T = C T λ T = C T λ (\lambda C)^T=C^T\lambda^T=C^T\lambda (λC)T=CTλT=CTλ 因為 λ = λ T , ∀ λ ∈ R \lambda=\lambda^T,\forall \lambda \in R λ=λT,λR
  • 分配率: λ ( B + C ) = λ B + λ C \lambda(B+C)=\lambda B+\lambda C λ(B+C)=λB+λC

1.2.4 Compact Representations of Systems of Linear Equations(線性方程組的簡潔表示)

{ 2 x 1 + 3 x 2 + 5 x 3 = 1 4 x 1 − 2 x 2 − 7 x 3 = 8 9 x 1 + 5 x 2 − 3 x 3 = 2 \left\{ \begin{array}{c} 2x_1+3x_2+5x_3=1\\ 4x_1-2x_2-7x_3=8 \\ 9x_1+5x_2-3x_3=2 \end{array} \right. 2x1+3x2+5x3=14x12x27x3=89x1+5x23x3=2
可以寫成: [ 2 3 5 4 − 2 − 7 9 5 − 3 ] [ x 1 x 2 x 3 ] = [ 1 8 2 ] \begin{bmatrix}2&3&5 \\ 4&-2&-7 \\9&5&-3 \end{bmatrix}\begin{bmatrix}x_1 \\ x_2 \\x_3 \end{bmatrix}= \begin{bmatrix}1 \\ 8 \\2 \end{bmatrix} 249325573x1x2x3=182.一般來說,一個線性方程組都可以表示為 A x = b Ax=b Ax=b的形式
  前面還是挺簡單的,就是本科線性代數裡的東西,主要是想把之前學過的碎片化的數學知識穿起來形成體系。

相關文章