第一章 線性代數緒論 1.1 學習線性代數的層次 1.2 線性代數的範圍 1.3 線性代數的架構 1.4 …………………………………………………. 第一章 緒論-1 ◎線性代數的範圍 如果數學可分成「分析」 (Analysis)和「幾何」 (Geometry) ,或者換成「幾 何」和「代數」或者更簡單的說「圖形」和「數式」 ,則「 線性代數 」幾乎可以 圖形 數式 說是涵蓋了所有的數學的內容。如是,線性代數的內容必定是博大精深,若再加 上幾個重要的理論與應用的分支,甚至於可以用「駁雜」來形容線性代數了。 然而在此「駁雜」的情況下,要如何得以找到大方向,進而一窺全豹呢?其 實,我們可以從「Know-what、Know-why、Know-how」的層次來分析對待。以 下我們嘗試著簡單的定義一下這三個層次:「Know-what」代表着對於值得追求 的現象的欣賞; 「Know-why」代表着對於基本原理的建構; 「Know-how」代表着 對於過程的實踐。換句話說,「Know-what」:知道要關注什麼?找到關鍵方向。 「Know-why」:知道為什麼?找到原理定律。「Know-how」:知道怎麼作?學到 方法技術。 我們就以傳說中的 Newton 與蘋果的故事為例: Newton 知道要關注「蘋果落下」的現象←Know-what; Newton 建立了 Newton 力學 F ma ← Know-why; 大家學到:「如果想要產生大的力量 F ,可以使用一個大質量 m ;也可以增加 加速度 a 」← Know-how。 這本書的定位在於「Know-what」和「Know-why」的層次為原則,而沒有 強調「Know-how」 ,也就是嘗試著傳達一些基本的線性代數的概念,約略的談一 第一章 緒論-2 談線性代數相關的緣起,多由「例題」來建構「觀念」 ,除了最後的 Jordan 形式 (Jordan form) 之外,只搜羅了一些證明題,而非解題技巧。 但是並不是表示解題不重要,相反的, 「Know-how」的層次,也就是解題的 技巧,無論是計算或證明,對於學習線性代數都是重要且必要的,在坊間有眾多 好的大量的練習題著作可供演練。 1.2 線性代數的範圍 望文生義,「線性代數」就是「直線的計算」。 以工程與科學領域為例,我們先來看看如何定義物質或系統的特性:給一個 已知的 B ,測得一個 A ,二者的比例 就稱為特性,即 A 或 A B ,如圖所 B 示, A B 就是一條直線。 諸如: m J F F D B M ;k ;d ; ; ; E ;…,如圖所 V x E H E a 示,均為直線。 第一章 緒論-3 當然即使特性可以表示成各種函數的形式,如圖所示,仍然透過轉換之後, 還是可以表示成線性的形式。 如果依據這樣的方式或步驟即使是微分或積分,幾乎所有的函數都可以轉換 成直線。 一般而言,人為設計的電機、機械系統、土木建築、或化學工程系統的控制 參數,或特性參數的數量是已知的,然而物質特性參數的數量,雖然依材料熱力 學的觀點來說,「只有」電場、磁場、形變和溫度,但是在實際的量測分析上, 第一章 緒論-4 要精確的得到所有的特性,仍然是非常困難的,因為我們不曉得「要畫哪些向 量?」;「畫幾個座標系?」;「如何適當的移動或旋轉這些座標系?」。用線性代 數的語彙則為「取哪些本徵向量?」 ; 「要展開幾個向量空間?」 ; 「這些座標系要 如何轉換?」。 ……………………………………………………. ◎向量與矩陣 「易有太極,是生兩儀,兩儀生四象,四象生八卦」。《周易·繫辭傳》的這 一段文字,恰可以對應於抽象代數(Abstract algebra)的實數、複數(Complex number) 、四元數(Quaternions)、八元數(Octonion) ,示意如圖, a a a i b d b a i p b i q 。 c d i c i 也可以從用一個點來表示純量;當畫出一條數線之後,始有正向、有負向, 意味著向量的出現;再畫出與前一條數線正交的另一條數線,把平面分成四個象 限;最後畫出與前兩條數線正交的另一條數線,把空間分成八個卦限,示意如圖。 第一章 緒論-5 至於實數分析(Real analysis)、複數分析(Complex analysis)、四元數、八元數 的理論與科學,可參考相關的專著。 在科學的領域中,最基本的就是純量和向量,諸如:質量 m 、體積 V 、密度 d 、溫度 T 、能量 E 、…,皆屬純量;位移 s 、速度 v 、加速度 a 、動量 P 、力 F 、 電場E 、磁場 H 、…,皆屬向量。在線性代數裡,最關鍵的純量就是本徵值, 而向量則有行向量 xCol 1 2 和列向量 xRow 1 2 n a11 a12 a a22 如果矩陣 A 是 m n 的矩陣,即矩陣 A 21 am1 am 2 以 視 為 行 向 量 xCol xRow 1 2 m 。 a1n a2 n ,則矩陣 A 可 amn 1 2 所 組 成 的 , 即 , 也 可 以 視 為 列 向 量 n m 所組成的,即 第一章 緒論-6 a1 1 a 1 2 a a 22 A 21 am1 am 2 a1 1 a 2 1 am1 a n 1 a n 2 amn a n 1 a n 2 C C 2 1 amn a 1 2 a 22 am 2 a1 1 a 1 2 a a 2 2 21 am1 am 2 a n 1 R a n 2 R amn R m a a 11 12 a a 其 中 C1 21 、 C2 22 、 a a m1 m2 R1 a11 a12 Rm am1 am2 Cn 2 , 1 a 1n a 、 C n 2 n 為 行 向 量 ; a mn a1n 、 R2 a21 a22 a2n 、 、 amn 為列向量。 ◎線性代數的架構 Notebook#2 An overview of key ideas 基本上,線性代數的架構是由「向量」到「矩陣」到「向量子空間」以下我們分 別說明之 向量 我們要如何處理向量?或者我們要對向量作什麼呢? 答案是作「組合」。 我們可以對向量乘上一個純數之後,再作加減運算,則 第一章 緒論-7 如果已知向量 u ,向量 v 和向量 w ,我們就可以形成一個線性組合 x1u x2v x3w b 。 如果向量 u ,向量 v 和向量 w ,是在三度空間中的向量,也就是三維向量,換句 話說,向量有三個分量,則當 所以把所有的向量 u 的倍數集合起來,將形成一條通過原點的直線, 即 則 x = x1; y = x1, 相加得 x + y =0 這就是一條通過原點的直線,如前所述 相同的步驟把所有的向量 v 的倍數集合起合也將形成一條直線,即 0 0 x2v = x2 1 1 = x2 x2 則 y = x2 z = x2 相加得 y + z =0 這也是一條通過原點的直線, 當我們把向量 u 和向量 v 的所有組合,全部集合起來,就形成一個平面,即 第一章 緒論-8 則 x = x1; 則將 x 和 z 代入 y = x1 + x2,得 y = x z 即平面方程式為 x yz 0 雖然接著,我們要說明矩陣,而子空間我們要在介紹矩陣之後,才會說明,但是 在進入矩陣之前,我們就以現在的例子作說明,重點將放在「名詞的定義」,亦 即「向量的維度」是什麼?向量的維度怎麼判斷?「空間的維度」是什麼?空間 的維度怎麼判斷?先簡單的直接回答這些問題,稍後再做仔細的說明。 向量的維度意謂著向量裡面所含的元素個數,例如: 1 向量 a = 向量 b = 是一個三維向量; 1 是一個二維向量。 因此,只要看看向量中,包含了幾個元素,就可以知道向量的維度, 例如: 向量 a = 1 中,有三個元素,所以向量 a 是三維的向量; 向量 b = 0 中,有二個元素,所以向量 b 是二維的向量。 第一章 緒論-9 空間的維度意謂著有幾個自由度,或者說有幾個基底,例如: 一個平面有二個自由度,也就是二個基底,所以平面就屬於二維的子空間,即 2 一條直線有一個自由度,也就是一個基底,所以直線就屬於一維的子空間,即 ' 因此,只要看看構成子空間的基底數就可以知道子空間的維度,例如: 基底為 1 和 0 可以構成 x y 平面,所以 x y 平面就是二維的子空間; 基底為 0 和 1 可構成 x y 平面,所以 x y 平面就是二維的子空間 名詞解釋之後,我們很簡單的以前面的二個向量的例子來描述「直線」與「平面」 直線 x y 0 的基底有一個三維的向量 而其實由 x1u = x1 可知只有一個參數 x1 也意謂著這個子空間是一維的。 平面 x y z 0 的基底有二個三維的向量 和 v= 10 1 而由 x1u + x2v = 是二維的矩陣 + x2 可知有二個參數 x1 和 x2,也意謂著這個子空間 以向量 u = 1 1 和w=1 0 產生一個矩陣 A 為 第一章 緒論-10 若 其中 x1 、 x2 、 x3 可為任意常數,而 b 是向量, 所以 Ax x1u x2v x3w b 意謂著向量 b 是向量 u ,向量 v ,向量 w 的線性組合或是 矩陣 A 的行元素的線性組合。 綜合以上的介紹,我們發現可以有二種表示的方法與描述,計算結果相同, 但是觀點不同,當表示成 x1u x2v x3w b ,意謂著以純量乘上向量; 當表示成 Ax b ,意謂著以數字乘上矩陣,再提醒一次, x1 , x2 , x3 是數字。 再稍微深入一點,但是簡單的說,就是對於 Ax b 會有三種情況,有二個已知, 求一個未知,即 [1] 已知矩陣 A ,向量 x ,求向量 b ; [2] 已知矩陣 A ,向量 b ,求向量 x ; [3] 已知向量 b ,向量 x ,求矩陣 A ; 其中矩陣 A 可以被認為是一種轉換,是一種在不同空間之間的轉換, 而向 量 x 和向量 b 就是在空間中的向量。 線性代數的核心議題就是討論 Ax b 和 Ax x 的向量矩陣,空間或子空間 或特徵值、特徵向量相互之間的幾何關係,比較特別的是「向量 x 為零」代表什 麼意義?「向量 b 為零」代表什麼意義?「矩陣行列式值為零」代表什麼意義? 以及特徵值和特徵向量的意義,當然還討論了矩陣或行列式的一些特殊性質。 ◎◎空間 第一章 緒論-11 所謂的「空間」或「向量空間」 ,基本上,是要滿足線性運算的條件, 「向量 子空間」或簡稱「子空間」,是「向量空間」的一部份,當然也要滿足線性運算 的條件。 構成向量空間的是基底(Basis) ,構成向量空間的基底就是在向量空間中的 n 個線性獨立的向量。一個基底集合了 n 個向量,而這 n 個向量的線性組合覆蓋 了整個向量空間。特別要說明的是,由基底向量,或精確的說,基底行向量所構 成的矩陣不一定是可逆的。 一個向量空間是由向量所構成,而在線性組合下,這些向量是封閉的,也就 是說,在向量空間中的向量,經過任何的線性組合之後產生的向量仍然在這個空 間中。 如前所述,向量子空間是在向量空間中的另外一個向量空間,一個子空間可 以等於其所「附著」的整個向量空間,而最小的子空間則僅包含零向量(Zero vector)。 ◎ 向量、矩陣與向量空間的維度 在線性代數中,因為「維度」(Dimension)一詞經常出現,諸如:向量的維度、 矩陣的維度、向量空間的維度,很明顯的,向量、矩陣、向量空間,都使用著一 樣的字詞—「維度」 ,如此很容易造成混淆,所以有必要做一個簡單的綜合說明。 對 向 量 而 言 , 無 論 是 行 向 量 或 列 向 量 ,「 一 個 實 數 的 n 維 向 量 (an n -dimensional vector) x 」或「一個 R n 的向量(a vector in R n ) x 」意思都是「向量 x 第一章 緒論-12 x1 x 有個 n 分量,且分量是實數」,即 x 2 或 y xT x1 xn x2 xn 。 c1 c n 如 果 是 複 數 向 量 , 則 「 一 個 C 的 向 量 」 就 是 x 2 或 cn y xT c1 c2 cn ,其中 c1 , c2 , , cn C 。 對矩陣而言, 「一個矩陣 A 的維度(Dimensions of a matrix)是 m n 」意思是 「矩陣 A 有 m 列有 n 行」,也會說「一個 Rmn 的矩陣 A (A matrix A in Rmn )」, a11 a12 a a22 即 A 21 am1 am 2 a1n a2 n 。 amn 對 向 量 空 間 而 言 , 一 個 向 量 空 間 的 維 度 也 稱 為 基 數 (Cardinal numbers, Cardinality, Hamel dimension, Algebraic dimension),是表示「構成向量空間的基 a11 a12 a22 a21 底向量的數量」 ,也就是如果向量集合 , , am1 am 2 a11 a12 a a W span 21 , 22 , am1 am 2 a1n a , 2 n 是一個向量子空間 amn a1n a , 2n 的 基 底 , 則 因 為 向 量 集 合 amn 第一章 緒論-13 a11 a12 a21 a22 , , am1 am 2 a1n a , 2 n 有 n 個向量,所以向量子空間 W 的維度為 n ,完整一點的 amn 描 述 為 , 向 量 子 空 間 W 是 一 個 R m 的 n 維 向 量 子 空 間 ( n -dimensional vector subspace of R m );換一種描述可為,向量子空間 W 是一個 R m 的向量子空間 x1 x m m (Vector subspace of R )。只要提到 R ,就表示向量 2 有 m 個分量。此外,為 xm 了方便的緣故,我們把構成零維向量子空間的集合定為空集合(Empty set),即「 」 或「 」,要注意, o 不是空集合, o 是零向量 o 的集合。 將向量的維度、矩陣的維度、向量空間的維度的說明,列表如下。 Vector Matrix Vector Space Cardinal numbers, Cardinality, Hamel dimension, Algebraic dimension n -dimensional Dimension Representation vector, a vector in R n , a R n vector x1 x 2 xn m n a11 a12 a 21 a22 am1 am 2 第一章 緒論-14 a1n a2 n amn a11 a12 a21 a22 , , am1 am 2 a1n a , 2n amn a11 a12 a21 a22 , , am1 am 2 m n a1n a , 2n R n amn R m n Rn a11 a12 a 21 a22 am1 am 2 x1 x 2 xn a1n a2 n amn a11 a12 a21 a22 , , am1 am 2 a1n a , 2n amn 例題 a b 2c 2a 2b 4c d , a, b, c, d R ,則試求一組基底和 若已知向量子空間 W span b c d 3a 3c d 子空間的維度。 a b 2c 1 1 2 0 2a 2b 4c d 2 2 4 1 a b c d [解] 因為 bcd 0 1 1 1 3a 3c d 3 0 3 1 av1 bv2 cv3 dv4 。 第一章 緒論-15 2 1 1 4 2 2 由 v3 v1 v2 ,顯示 v3 是 v1 和 v2 的線性組合,所以 v3 不能做為基 1 0 1 3 3 0 底; v4 不是 v1 和 v2 的線性組合,所以 v4 可以做為基底。 綜合以上結果,v1 , v2 , v4 是向量子空間 W 的一組基底,而向量子空間 W 是 3 維的,即 dim W 3 。 以上的例題涉及到「線性獨立」或「求解方程式」,相關的議題會在之後的 章節陸續介紹。 例題 1 1 如何將向量子空間 H span 0 , 1 擴充為 3 維的向量子空間? 0 0 1 1 0 [解] 可以增加一個和 0 , 1 獨立的向量 0 ,就可以構成一組 R 3 基底,而向 0 0 1 1 1 0 量子空間 span 0 , 1 , 0 是 3 維的向量子空間。 0 0 1 ………………………………. ◎ 一個好用的方法—增廣矩陣法 增廣矩陣法(Augmented matrix)是一個表示簡單的方法,類似於圖像的方法。 我們把在本書中,會用到增廣矩陣法的計算問題,大致羅列如下: 第一章 緒論-16 [1] 求逆矩陣 Row operation [1.1] A I I A 1 。 Row operation [1.2] A B I A 1B 。 Row operation [1.3] P AP I P1 AP 。 Row operation [2] LU 分解 I A E U ,則 EA U ,得 A E1U LU 。 Row operation [3] 基底變換 X CX Row operation I I CX 。 ………………………………………………………….. ◎ 線性代數的架構 本書編排的大架構是先說明求解方程式 Ax b ,再介紹行列式 det A ,最 後 是 本 徵 值 與 本 徵 向 量 Ax x 。 且 都 是 建 立 在 四 個 基 本 的 向 量 子 空 間 (Fundamental subspaces)上的,而線性代數主要的精神則是線性組合,如圖所示。 當然在求解方程式之前,要說明向量與矩陣,而伴隨著本徵值與本徵向量, 有投影與線性轉換、正定矩陣與應用。其後要介紹「線性代數的聖母峰」—Jordan 標準型式(Jordan canonical form)和「線性代數的瑞士刀」—奇異值分解(Singular value decomposition,SVD)。 第一章 緒論-17 此外,我們還在奇異值分解的基礎上,向機器學習的領域延伸出了主成分分 析 (Principal Component Analysis , PCA) 和 線 性 判 別 分 析 (Linear Discriminant Analysis,LDA),以及微分方程式。 第一章 緒論-18