Tag Archives: SVD

SVD 於資訊檢索與文本搜尋的應用

本文的閱讀等級:高級 線性代數學習者或多或少可能曾經感到一種莫名的疑惑:針對一個特定主題,即使我們明白符號的定義,也瞭解如何執行計算程序,但卻苦於不能清楚掌握該主題的深層涵義。我相信最有效的解惑處方是選擇適當的應用來釋疑,一方面藉由附著於實例的情境闡述符號所代表的概念,另一方面透過回答一連串的問題引導我們理解計算程序背後的故事。本文就以奇異值分解為例,借用它在資訊檢索與文本搜尋的應用來說明矩陣的奇異值分解的功能與意義。繼續閱讀之前,請讀者先參考背景文章“奇異值分解 (SVD)”。

Posted in 線性代數專欄, 應用之道 | Tagged , , , , , , | 16 Comments

特殊矩陣 (6):正定矩陣

本文的閱讀等級:中級 令 為一個 階實對稱矩陣。若每一 維非零實向量 皆使得 , 我們稱 為正定 (positive definite);若將上述條件放鬆為 , 則 稱為半正定 (positive semidefinite)。改變正定和半正定的不等式方向就有 是負定或半負定的概念,也可以說 是正定或半正定。如果 可能是正值也可能是負值,則稱 是未定的 (indefinite)。

Posted in 特殊矩陣, 線性代數專欄 | Tagged , , , , , , , , | 24 Comments

利用偽逆矩陣解線性方程

本文的閱讀等級:高級 在“線性代數的原罪?”一文裡,我曾說: 長久以來我們的數學教育方式 (其他課目也差不了多少) 是先告訴學生有關「數學」的事,展示給他們看這個「數學」是如何運作的,下課前塞給學生一些問題,回家自己去練習。 這種學習方式是學校教育講求成本效率下的產物,誰也說不準到底有多少長遠效果。我認為的理想學習方式應該帶有濃厚的實驗與實踐色彩,也就是經由發現問題,嘗試提出解答,從而建立理論。

Posted in 線性代數專欄, 數值線性代數 | Tagged , , , , | 5 Comments

極分解

本文的閱讀等級:中級 任一 階實矩陣 都可以被分解為 , 稱為極分解 (polar decomposition),其中 是實正交 (orthogonal) 矩陣, 是實對稱半正定 (positive semidefinite) 矩陣。若 是一個複矩陣,則 是么正 (unitary) 矩陣, 是 Hermitian (共軛對稱) 半正定矩陣。

Posted in 線性代數專欄, 二次型 | Tagged , , , , , , , , | 5 Comments

奇異值分解 (SVD)

本文的閱讀等級:中級 奇異值分解 (singular value decomposition,以下簡稱 SVD) 被譽為矩陣分解的「瑞士刀」和「勞斯萊斯」[1],前者說明它的用途非常廣泛,後者意味它是值得珍藏的精品。在“線性代數基本定理 (四)”一文,我們介紹了 SVD 的推導,並於矩陣的四個子空間分析平台解釋其幾何涵義,本文簡述 SVD 重點並舉一例說明分解式的計算步驟。

Posted in 線性代數專欄, 二次型 | Tagged , , , , , | 43 Comments

通過推導偽逆矩陣認識線性代數的深層結構

本文的閱讀等級:高級 長久以來,機械學習法一直是廣被採用的學習方法,好處是短時間可以看見成效,壞處是很難繼續往前邁進。學習線性代數尤其如此,使用機械學習法頂多只能熟悉幾個演算法,記住一些性質和定理,但絲毫無助於理解線性代數的核心概念與結構。通過推導偽逆矩陣 (pseudo inverse),我們運用線性代數的基本定理將其深層結構,譬如向量空間、線性變換、正交、基底、基底變換等,全部予以呈現出來。無須背誦經文照樣可以輕鬆掌握線性代數的重要概念與技巧,何樂而不為之。

Posted in 線性代數專欄, 二次型 | Tagged , , , , , , , | 6 Comments