機(jī)器學(xué)習(xí)和深度學(xué)習(xí)之?dāng)?shù)學(xué)基礎(chǔ)-線性代數(shù) 第四節(jié) 線性變換及其與矩陣的關(guān)系

本文為原創(chuàng)文章,歡迎轉(zhuǎn)載肮雨,但請(qǐng)務(wù)必注明出處剿吻。

上文介紹從運(yùn)動(dòng)的角度直觀的理解向量拾弃,這一節(jié)主要介紹線性變換及其與矩陣的關(guān)系讯檐。

線性代數(shù)的核心之一是線性變換羡疗,英文是linear transformation。變換(transformation)可以理解為一個(gè)函數(shù)(function) f(x)别洪,對(duì)于線性代數(shù)來說叨恨,函數(shù)的輸入就是一個(gè)向量,而輸出則是變換后的向量挖垛。一種理解這種”向量的函數(shù)“的方法是使用運(yùn)動(dòng)痒钝,即用”運(yùn)動(dòng)“的思維來思考”變換“。當(dāng)輸入是一個(gè)向量痢毒,經(jīng)過變換后的輸出是另一向量送矩,相當(dāng)于這個(gè)輸入向量移動(dòng)到了對(duì)應(yīng)的輸出向量位置。從系統(tǒng)整體上來考慮哪替,變換可以看成將每一個(gè)輸入向量都移動(dòng)到了對(duì)應(yīng)輸出向量的位置栋荸。比如在平面(二維空間)上,每一點(diǎn)(即每一個(gè)向量)經(jīng)過變換都被移動(dòng)到了對(duì)應(yīng)的其他位置凭舶。

變換包括線性變換和非線性變換晌块,這些變換可以對(duì)空間里的對(duì)象(即向量)進(jìn)行升降維,縮放帅霜,旋轉(zhuǎn)匆背,平移和扭曲。比如义屏,在神經(jīng)網(wǎng)絡(luò)中常見的是輸入向量加權(quán)后再加上偏移量靠汁,最后放到激活函數(shù)里,即

其中闽铐,W 是神經(jīng)網(wǎng)絡(luò)中某一層的權(quán)重矩陣蝶怔,b 是該層上每個(gè)神經(jīng)元的偏移向量, σ(?) 是激活函數(shù)兄墅。于是踢星,W?x 可以看成是使用權(quán)重矩陣 W 對(duì)輸入向量 x 進(jìn)行里變換,變換的結(jié)果是對(duì)輸入向量進(jìn)行了降維隙咸,縮放或旋轉(zhuǎn)(即線性變換)沐悦;而加上偏移向量 b 就是對(duì)線性變換結(jié)果 W?x 進(jìn)行了平移 (其實(shí) W?x+b 就是仿射變換(affine tranformation));而激活函數(shù) σ(?) 的運(yùn)用就是對(duì)結(jié)果進(jìn)行扭曲五督、擠壓和變形(非線性變換)藏否,很有意思吧。

圖一充包,變換可以對(duì)空間里向量進(jìn)行升降維副签,縮放遥椿,旋轉(zhuǎn),平移和扭曲淆储,圖片來源[2]

回過頭來冠场,上面說了變換既是函數(shù)又是運(yùn)動(dòng),這個(gè)怎么理解呢本砰?其實(shí)我們的高等數(shù)學(xué)因?yàn)橐霕O限的概念研究的就是”運(yùn)動(dòng)的數(shù)學(xué)“ [1]碴裙。既然是運(yùn)動(dòng),那么就一定有方向和大小点额,這就是為什么向量可以求導(dǎo)舔株,為什么用梯度下降算法求最小值時(shí)需要沿著負(fù)梯度方向更新,這些在后面會(huì)介紹咖楣。

1督笆、線性變換

在這里我們只關(guān)注線性變換芦昔,直觀上線性變換需要滿足兩個(gè)條件[4]:

  1. 直線在變換后仍然保持為直線诱贿,不能有所彎曲;
  2. 原點(diǎn)必須保持固定咕缎,即線性變換前后原點(diǎn)的位置保持不變珠十。

對(duì)于第1條,比如在直角坐標(biāo)系中雖然變換后的坐標(biāo)線是直線凭豪,原點(diǎn)也沒變化焙蹭,但是坐標(biāo)上的刻度間隔距離發(fā)生變化,導(dǎo)致原坐標(biāo)系里的對(duì)角線在變換后發(fā)生了彎曲嫂伞,這樣的變換也不是線性變換孔厉。也就是說,線性變換是”保持網(wǎng)格線平行且同一個(gè)方向上(如x-軸方向或y-軸方向)等距分布“的變換[4]帖努,如圖二撰豺。如果1滿足,2不滿足拼余,則是仿射變換 affine transform污桦,在計(jì)算機(jī)圖形學(xué)中常用。

圖二匙监,線性變換滿足:1凡橱、保持網(wǎng)格線平行且等距分布;2亭姥,原點(diǎn)固定不動(dòng)稼钩。圖片來源[4]

好了,到這里在直觀上已經(jīng)對(duì)線性變換有了直觀的了解:線性變換就是空間中的向量從一個(gè)位置運(yùn)動(dòng)到另一個(gè)位置达罗。那么如何來描述這個(gè)運(yùn)動(dòng)呢坝撑?

2、用矩陣描述線性變換

線性變換是空間中向量的線性運(yùn)動(dòng)(沿著直線移動(dòng)),那么這種向量的直線移動(dòng)該如何度量呢绍载,怎樣從數(shù)學(xué)上來描述這種移動(dòng)诡宗?前面我們說了要從系統(tǒng)整體上來考慮,變換可以看成將每一個(gè)輸入向量都移動(dòng)到了對(duì)應(yīng)輸出向量的位置击儡。注意塔沃,這里說的是空間中的每一個(gè)輸入向量的移動(dòng)都考慮進(jìn)來。而第一節(jié)中我們介紹了空間是基向量的張成阳谍,也就是說空間中的每一個(gè)輸入向量都可以用基向量線性表示蛀柴。所以,我們只需要對(duì)空間中的基向量進(jìn)行相應(yīng)的線性變換矫夯,然后變換后的向量就可以用這個(gè)變換后的基向量進(jìn)行線性組合鸽疾。

回憶在第一節(jié)時(shí)候我們介紹了向量的線性組合如下:

由于線性組合可以用矩陣與向量的乘積表示,于是假設(shè)矩陣 A=[v1 … vn]训貌, 即矩陣 A 的列是由向量 v1 … vn 組成制肮,那么上式可以表示成:

其中,

我們回到線性變換递沪,我們剛剛說了”變換后的向量可以用這個(gè)變換后的基向量進(jìn)行線性組合“豺鼻,那么就是說我們可以用變換后的基向量來作為矩陣 A 的列,這個(gè)時(shí)候矩陣 A 乘以任意輸入向量就可以得到變換后的輸出向量(比如這里的向量 α 就可以看成是一個(gè)輸入向量)款慨。到這里儒飒,我們將矩陣和線性變換聯(lián)系起來了,簡(jiǎn)單總結(jié)就是:

  • 線性變換就是在空間移動(dòng)輸入向量
  • 由于任何向量都可以是空間基向量的線性組合檩奠,所以向量的線性變換可以看成兩步:首先對(duì)基向量進(jìn)行變換桩了;然后,變換后的基向量進(jìn)行線性組合得到輸出向量埠戳。
  • 如果一個(gè)矩陣 A 的列由變換后的基向量組成井誉,那么矩陣 A 就描述這個(gè)線性變換。不同的線性變換規(guī)則會(huì)得到不同的矩陣乞而,而這些矩陣就是相似矩陣送悔,后面會(huì)介紹。

還有一個(gè)地方值得說一下爪模,第三節(jié)的時(shí)候我們?cè)诮忉審埑傻臅r(shí)候欠啤,我們提到過”縮放基向量再相加“的思想,也就是首先固定基向量屋灌,只改變每個(gè)基向量的長(zhǎng)度進(jìn)行縮放洁段,然后相加后就可以張成整個(gè)空間。而線性變換可以看成是一個(gè)相反的運(yùn)算過程:線性變換首先固定了縮放大泄补(也就是上面說的輸入向量 α )祠丝,根據(jù)不同的線性變換規(guī)則得到變換后的基向量(即基向量變化了疾呻,也就是改變基向量的長(zhǎng)度和方向),從而得到變換后向輸出向量写半。

在數(shù)學(xué)計(jì)算上岸蜗,變換后的基向量組成了矩陣 A 的列,他乘以輸入向量就得到了輸出向量叠蝇。 我們可以把矩陣 A 左乘向量 x (即 Ax)就看成是向量 x 的一個(gè)函數(shù) f(x)璃岳。

說到這里還是比較抽象,舉例吧(非常重要悔捶,下面的例子基于[4])铃慷。

首先,平面上直角坐標(biāo)系的兩個(gè)標(biāo)準(zhǔn)基向量分別為 i? =[1,0]? 和 i? =[1,0]?蜕该,那么對(duì)于平面里一個(gè)向量 [?1,2]?=?1i? +2j? (即基向量的線性組合犁柜,如圖三)。

圖三堂淡,基向量的線性組合馋缅,圖片來源[4]

如何對(duì)向量 [?1,2]? 進(jìn)行線性變換呢?然后首先對(duì)標(biāo)準(zhǔn)基向量 i? 和 j? 進(jìn)行變換等到變換后的基向量淤齐,然后對(duì)變換后的基向量進(jìn)行同樣線性組合就可以得到變換后的向量(如圖四)股囊。這里的”同樣線性組合“就是上面說的變換后的基向量進(jìn)行線性組合時(shí)的縮放不變(即仍然是-1和2)袜匿。

圖四更啄,線性變換,首先變換基向量居灯,對(duì)變換后的基向量進(jìn)行線性組合祭务,圖片來源[4]

從這里看出,線性變換首先需要確定的是基向量應(yīng)該如何變換怪嫌,即確定矩陣 A义锥。比如這個(gè)例子,首先確定標(biāo)準(zhǔn)基向量 i? 和 j? 的變換方式岩灭,即

那么對(duì)于任意輸入向量 [x,y]? 都可以由變換后的基向量的線性組合得到輸入向量:

其中矩陣 A 的列是由變換后的基向量 i? 和 變換后的基向量 j? 組成拌倍。

這就是線性變換!

3噪径、矩陣與矩陣相乘及線性變換復(fù)合

為什么有矩陣與矩陣相乘柱恤?矩陣與矩陣相乘到底該如何理解?在線性變換里得到了很好的解釋找爱。

舉個(gè)例子(例子來自[4])梗顺,比如二維平面中我們首先定義線性變換規(guī)則:首先逆時(shí)針旋轉(zhuǎn)旋轉(zhuǎn)90度,然后再”剪切(shear)“一次车摄。

首先寺谤,基向量 i? 和 j? 經(jīng)過逆時(shí)針旋轉(zhuǎn)90度后分別變換為:

所以逆時(shí)針旋轉(zhuǎn)90度后的”變換矩陣“ A 為:

接著第二步進(jìn)行”剪切(shear)“仑鸥,剪切就是保持基向量 i? 不變,而 j? 旋轉(zhuǎn)到對(duì)角線上变屁,即

所以”剪切“變換的”變換矩陣“ B 為:

這個(gè)過程下圖五所示眼俊。

圖五,基向量的變換過程:首先逆時(shí)針旋轉(zhuǎn)90度粟关,然后再進(jìn)行剪切變換泵琳,圖片來源[4]

這種分多個(gè)不同線性變換步驟后完成的最終的變換就是”線性變換復(fù)合(composition)“。具體到這個(gè)例子誊役,最終的線性變換就是旋轉(zhuǎn)與剪切兩個(gè)連續(xù)變換的復(fù)合获列,即首先對(duì)基向量 i? 和 j? 進(jìn)行逆時(shí)針90度旋轉(zhuǎn),得到作為中間結(jié)果的變換后的基向量 i? 和 變換后的基向量 j? 蛔垢;然后再對(duì)這個(gè)中間結(jié)果的變換后的 i? 和 變換后的 j? 進(jìn)行剪切變換击孩,得到最終的的變換后的 i? 和 變換后的 j? 。

在第一節(jié)的時(shí)候也提到過”復(fù)合“鹏漆,那么什么是復(fù)合呢巩梢?復(fù)合就是矩陣與矩陣相乘相乘! 很有意思吧艺玲,矩陣與矩陣相乘可以看成是把一個(gè)線性變換拆成多個(gè)步驟括蝠,回憶一下,在概率論里我們?cè)谇舐?lián)合概率不也是這樣的道理嗎饭聚?

那么這兩個(gè)矩陣應(yīng)該怎么相乘呢忌警?上面我們說到,對(duì)向量進(jìn)行線性變換就是左乘一個(gè)矩陣秒梳。所以法绵,多個(gè)連續(xù)的線性變換就是相應(yīng)的“變換矩陣”按順序依次左乘! 另外酪碘,一個(gè)線性變換可以看成是一個(gè)函數(shù)朋譬,那么多個(gè)線性變換就可以看成復(fù)合函數(shù)!

回到上面的例子兴垦,假設(shè)平面上任意一個(gè)向量 [x,y]?徙赢,對(duì)他進(jìn)行上面的旋轉(zhuǎn)和剪切的線性變換,那么就是依次對(duì)該向量左乘矩陣 A 和 矩陣 B

由于矩陣相乘符合結(jié)合律探越,所以上式可以寫成:

上面兩個(gè)式子的結(jié)果完全相同狡赐,為什么呢?其實(shí)是因?yàn)?/p>

等式右邊的矩陣 C(即復(fù)合矩陣)的列剛好分別是基向量 i? 和基向量 j? 經(jīng)過逆時(shí)針90度旋轉(zhuǎn)和剪切后對(duì)應(yīng)的位置扶关,這也可以看成是基向量 i? 和基向量 j? 只經(jīng)過一個(gè)步驟就完成了上面需要連續(xù)兩個(gè)步驟才能完成的變換阴汇,所以本質(zhì)上式一樣的,所以相等节槐。

這里也可以看出因?yàn)橄冗M(jìn)行逆時(shí)針90度旋轉(zhuǎn)再進(jìn)行剪切得到的線性變換結(jié)果搀庶,與先進(jìn)行剪切再進(jìn)行逆時(shí)針90度旋轉(zhuǎn)得到的線性變換結(jié)果是不一樣的拐纱,這就是直觀的解釋了矩陣與矩陣相乘沒有交換律,即

4哥倔、相似矩陣

第一節(jié)和第三節(jié)中我們說過秸架,空間的基向量不是唯一的,即可以同一個(gè)空間可以選定不同的基向量(其實(shí)空間的基向量確定空間的坐標(biāo)系咆蒿《ǎ基向量不同,坐標(biāo)系也不同)沃测,那么相同的線性變換就可能有不同的轉(zhuǎn)換矩陣表示形式缭黔。那么屬于相同線性變換的轉(zhuǎn)換矩陣有什么關(guān)系呢?比如烏龜穿上馬甲與沒穿上馬甲都應(yīng)該是同一個(gè)烏龜蒂破,不能說穿上了馬甲就不認(rèn)識(shí)了馏谨。烏龜穿上馬甲與沒穿上馬甲應(yīng)該是應(yīng)該是同一個(gè)事物的不同表現(xiàn)形式,他們應(yīng)該是相似的附迷。

相似矩陣就是這個(gè)意思惧互,相似矩陣可以看成是同一個(gè)線性變換的不同描述,即如果矩陣 A與 B 是同一個(gè)線性變換的兩個(gè)不同的描述喇伯,則一定能找到一個(gè)非奇異矩陣 P喊儡,使得 A與 B 滿足[3]:

5、小結(jié)

本文介紹了線性變換與矩陣的關(guān)系稻据,主要介紹了:

  • 矩陣作為向量的線性變換的描述艾猜,矩陣左乘向量,其結(jié)果就是將向量從一個(gè)位置變換(移動(dòng))到另一個(gè)位置攀甚;
  • 矩陣作為一組基向量的線性變換的描述箩朴,矩陣左乘一個(gè)以一組基向量作為列向量的矩陣,就是把線性空間中的一個(gè)坐標(biāo)系(由一組基向量決定)變換到另一個(gè)坐標(biāo)系(由變換后的一組基向量決定)秋度。

References:

  1. 《重溫微積分》,齊民友
  2. Neural Networks, Manifolds, and Topology
  3. 理解矩陣
  4. 3Blue1Brown
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末钱床,一起剝皮案震驚了整個(gè)濱河市荚斯,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌查牌,老刑警劉巖事期,帶你破解...
    沈念sama閱讀 222,590評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異纸颜,居然都是意外死亡兽泣,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門胁孙,熙熙樓的掌柜王于貴愁眉苦臉地迎上來唠倦,“玉大人称鳞,你說我怎么就攤上這事〕肀牵” “怎么了冈止?”我有些...
    開封第一講書人閱讀 169,301評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)候齿。 經(jīng)常有香客問我熙暴,道長(zhǎng),這世上最難降的妖魔是什么慌盯? 我笑而不...
    開封第一講書人閱讀 60,078評(píng)論 1 300
  • 正文 為了忘掉前任周霉,我火速辦了婚禮,結(jié)果婚禮上亚皂,老公的妹妹穿的比我還像新娘诗眨。我一直安慰自己,他們只是感情好孕讳,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,082評(píng)論 6 398
  • 文/花漫 我一把揭開白布匠楚。 她就那樣靜靜地躺著,像睡著了一般厂财。 火紅的嫁衣襯著肌膚如雪芋簿。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,682評(píng)論 1 312
  • 那天璃饱,我揣著相機(jī)與錄音与斤,去河邊找鬼。 笑死荚恶,一個(gè)胖子當(dāng)著我的面吹牛撩穿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播谒撼,決...
    沈念sama閱讀 41,155評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼食寡,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了廓潜?” 一聲冷哼從身側(cè)響起抵皱,我...
    開封第一講書人閱讀 40,098評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎辩蛋,沒想到半個(gè)月后呻畸,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,638評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡悼院,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,701評(píng)論 3 342
  • 正文 我和宋清朗相戀三年伤为,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片据途。...
    茶點(diǎn)故事閱讀 40,852評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡绞愚,死狀恐怖叙甸,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情爽醋,我是刑警寧澤蚁署,帶...
    沈念sama閱讀 36,520評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站蚂四,受9級(jí)特大地震影響光戈,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜遂赠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,181評(píng)論 3 335
  • 文/蒙蒙 一久妆、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧跷睦,春花似錦筷弦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蜕乡,卻和暖如春奸绷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背层玲。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評(píng)論 1 274
  • 我被黑心中介騙來泰國(guó)打工号醉, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人辛块。 一個(gè)月前我還...
    沈念sama閱讀 49,279評(píng)論 3 379
  • 正文 我出身青樓畔派,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親润绵。 傳聞我的和親對(duì)象是個(gè)殘疾皇子线椰,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,851評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容