機器學習數學:線性代數

如果我們對在機器學習中的出現過的單詞的頻率排個序,那麼「線性」這個詞如果排第二,估計也沒有哪個詞敢排第一了。「線性回歸」,「線性模型」,「線性可分」,「線性變換」,「線性空間」,甚至還有處處用到的「線性代數」。

本來打算這篇文章主講線性回歸,誰知道越寫越發現線性代數才是主角。

線性代數

關於線性代數,這種似乎揭露了世界本質的學科和方向,我完全沒有發言權,自己理解的都如履薄冰。各位自己去找教材自學吧,推薦一個視頻,b站的「線性代數的本質」,還有建議大家多從幾何意義上理解而非代數意義。這篇文章,重點寫一些線性代數中最基本最本質最有用的概念。

線性

最基本的意義只有兩條:可加性和比例性(齊性)。用數學的表達來說就是:對加法和數乘封閉。

線性空間

拋棄掉XYZ三軸組成的三維空間的概念和畫面,還有通常理解的運動,我們來重新定義:

  • 將空間定義為容納對象的集合
  • 將運動定義為「瞬移」
  • 將對象到對象的運動定義為變換
  • 將對象坐標定義為通過不同基表達的向量形式

所以,線性空間定義為:容納線性變換(運動)的對象的集合(空間)。

換一種數學語言的表達方式:如果空間內任何元素伸縮之後仍在該空間內,那麼這個空間內的元素就有乘性(齊性);如果空間內任意兩個元素的加和仍在空間內,就說明這個空間內的元素具有具有加性;如果一個空間具有了乘性和加性這兩條性質,自然的便具有了線性代數的一個核心性質:線性組合仍在該空間內。

變換

變換這個詞,往往幾乎一定會把剛學習新手弄個暈頭轉向。我們從運動開始說起,在我們人類的經驗里,運動是一個連續過程,從A點到B點,就算走得最快的光,也是需要一個時間來逐點地經過AB之間的路徑,這就帶來了連續性的概念。而連續這個事情,如果不定義極限的概念,根本就解釋不了。數學家都解釋不了的東西我也不解釋了。所以前人們也是斷斷不敢用運動這個詞,可能那個時候還沒有諸如「瞬移」、「閃現」這種新辭彙吧,所以,「變換」這個詞就來描述這個行為。

簡單點,我們先把基看成是線性空間里的坐標系就可以了。這樣一來,「選定一組基」就是說在線性空間里選定一個坐標系。

矩陣/線性變換

在線性空間中,當你選定一組基之後,不僅可以用一個向量來描述空間中的任何一個對象,而且可以用矩陣來描述該空間中的任何一個運動(變換)。

矩陣是線性空間中選定的一組基下,對線性變換的一個描述。

而使某個對象發生對應運動的方法,就是用代表那個運動的矩陣,乘以代表那個對象的向量。

概括一下,在線性空間中選定基之後,向量描述對象,矩陣描述對象的運動,用矩陣與向量的乘法施加運動。

注意:一個對象不僅可以變換到同一個線性空間中的另一個對象,而且可以變換到另一個線性空間中的另一個對象去。但是我們只探討最常用、最有用的一種變換,就是在同一個線性空間之內的線性變換。

在基的概念上,我們升一級來描述線性變換,對於一個線性變換,只要你選定一組基,那麼就可以找到一個矩陣來描述這個線性變換。換一組基,就得到一個不同的矩陣。所有這些矩陣都是這同一個線性變換的描述,但又都不是線性變換本身。變換本身是瞬移。

我們再升一級,矩陣不僅可以作為線性變換的描述,而且可以作為一組基的描述。而作為變換的矩陣,不但可以把線性空間中的一個點給變換到另一個點去,而且也能夠把線性空間中的一個坐標系(基)表換到另一個坐標系(基)去。而且,變換點與變換坐標系,具有異曲同工的效果。

相似矩陣

上面說了,同一個變換在不同的基下面有對應的不同的描述(矩陣),那這些不同的描述矩陣我們就稱為相似矩陣。相似矩陣滿足 A=P^{-1}BP (p是非奇異矩陣,p也是兩組基的變換關係),在b站的「線性代數的本質」中有非常直觀的動畫描述。

矩陣的相似變換可以把一個比較丑的矩陣變成一個比較美的矩陣,而保證這兩個矩陣都是描述了同一個線性變換。

向量哲學

向量本身也可以看成是n x 1矩陣嗎?這實在是很奇妙,一個空間中的對象和運動竟然可以用相類同的方式表示。從唯物主義的角度來看,運動是絕對的,物質是運動的物質。因此物質也是運動的表現形式,那麼矩陣的本質是描述對象運動,那對象可以描述為矩陣了。

#先寫這麼多,以後還會逐漸添加

題圖:平頭哥的鐵律:1、生死看淡,不服氣就干。 2、我只想整死各位,或者被各位整死。 3、別人的是我的,我的還是我的。 4.我干起仗來,我自己都怕。 5、我這一生就是太忙碌了,不是干架,就是在干架的路上。 6、老子不記仇,有仇當場就報了。 7、張狂不是我的本性,但是惹我就等於自殺。 8、每次打架別和我說對方有多少人,我只要地點。9、平頭白髮銀披風 非洲大地我最凶

推薦閱讀:

線性方程組(5)-克雷洛夫子空間與伽遼金原理
關於方陣的特徵值和特徵向量的思考
線性方程組(2)-兩個令人腦殼疼的傢伙
PRML筆記|線代拾遺(1)
線性方程組(3)-靜態迭代法

TAG:機器學習 | 線性代數 |