ker矩阵是什么意思_直观理解!你一定要读一下的“矩阵和线性代数入门”
首發(fā)于 | 知乎 作者 |?家里有只肉丸子
鏈接 | https://zhuanlan.zhihu.com/p/137112358
許多同學(xué)一聽(tīng)到高等代數(shù)(線性代數(shù))的名字就瑟瑟發(fā)抖,覺(jué)得似乎是極困難的科目。
在我大一那年,學(xué)完高等代數(shù)后,確實(shí)有不知所云之感。一本高代學(xué)完,除了記住各種概念,定義,什么若爾當(dāng)標(biāo)準(zhǔn)型,什么矩陣的秩……其他什么也不了解,最后考研的時(shí)候拿起教科書(shū)重新啃了一遍,宛若新學(xué)。
很多朋友可能覺(jué)得,這門(mén)課就是來(lái)折磨廣大大學(xué)生朋友的吧!
其實(shí)不然,隨著讀書(shū)越久,加上工作了幾年,越發(fā)覺(jué)得當(dāng)年的線性代數(shù)學(xué)得不夠,學(xué)得不好。
那么,我就拋磚引玉,來(lái)聊聊,線性代數(shù)到底是個(gè)什么東西,那些稀奇古怪的概念是怎么來(lái)的,又要到哪去。聊到哪算哪哈。
下面我的討論主要集中在工程領(lǐng)域,主要涵蓋一些線性代數(shù)和數(shù)值分析的知識(shí)。
(因?yàn)椴⒎菄?yán)格論述,所以難免有所疏漏,歡迎斧正)
? ?1.線性代數(shù)怎么來(lái)的?
有些線性代數(shù)教材上來(lái)就給大家講線性空間,這不禁會(huì)讓人頭暈?zāi)X脹。其實(shí),線性代數(shù)這門(mén)學(xué)科,是和生產(chǎn)生活聯(lián)系極其緊密的,它的來(lái)源也并不復(fù)雜。
線性代數(shù)這門(mén)學(xué)科的出現(xiàn),最開(kāi)始應(yīng)該是來(lái)源于線性方程組。下面這個(gè)就是一個(gè)典型的線性方程組:
方程大家都知道,初中就學(xué)過(guò)是吧,那么什么是線性方程?
就是未知數(shù)都是一次的方程。比如
這樣的方程。
線性方程是比較簡(jiǎn)單的一類方程,但它的實(shí)用性一點(diǎn)都不簡(jiǎn)單。在復(fù)雜的工業(yè)控制系統(tǒng)中、生物學(xué)家和人口學(xué)家的模型里,或是風(fēng)洞實(shí)驗(yàn)室的分析過(guò)程中都有現(xiàn)行方程的影子。
當(dāng)然,更復(fù)雜的非線性方程也很重要,但限于難度和篇幅原因,這里暫時(shí)先不討論。
方程是數(shù)學(xué)家們用來(lái)描述世界的工具(之一),也可以說(shuō),是數(shù)學(xué)家用來(lái)描述世界規(guī)律的工具。
什么是世界的規(guī)律?那就是道
——道可道?可道!
而線性方程組就是線性方程的擴(kuò)展。這也就引出了我們今天所說(shuō)的主題——線性代數(shù)
數(shù)學(xué)家們一開(kāi)始可能覺(jué)得寫(xiě)那么多字太麻煩,干脆創(chuàng)新一種“記號(hào)”——矩陣。
創(chuàng)新記號(hào),簡(jiǎn)寫(xiě)什么的是數(shù)學(xué)家的最愛(ài)。君不見(jiàn)微積分符號(hào)引發(fā)了萊布尼茲和牛頓的曠日持久的爭(zhēng)議?
于是,通過(guò)用一個(gè)大寫(xiě)字母,比如A:
來(lái)表示一個(gè)樣子是方陣的數(shù)陣,數(shù)學(xué)家將線性方程組寫(xiě)成了這個(gè)樣子:
請(qǐng)注意:矩陣的最初目的,就是線性方程組的簡(jiǎn)寫(xiě)!
于是,現(xiàn)在的線性方程組就可以用三種等價(jià)的方式來(lái)表述:
矩陣方程?
線性方程組
或者向量方程:??(這種表述其實(shí)是后續(xù)線性代數(shù)的核心思想,但在這里先不多說(shuō)了)
以上三種表述方式,都有相同的方法來(lái)解——通過(guò)行化簡(jiǎn)算法,化簡(jiǎn)增廣矩陣。比如這樣:
(這個(gè)知識(shí)后面會(huì)用到,先放一邊)
既然創(chuàng)造了新的“記號(hào)”,矩陣,數(shù)學(xué)家們自然要研究一下。
? ?2.矩陣的本質(zhì)以及線性代數(shù)到底研究什么
2.1 我們先說(shuō)說(shuō)矩陣的本質(zhì)
我們看到一個(gè)矩陣,真的是平平無(wú)奇。這東西有啥可研究的呢?
對(duì)于矩陣,其實(shí)可以有兩種認(rèn)識(shí):
矩陣可以看作一個(gè)數(shù)的矩形表(大部分同學(xué)應(yīng)該都是這么看的)
也可以看作一組列向量!(這個(gè)認(rèn)識(shí)是后面線性空間等一系列知識(shí)的基礎(chǔ))
而后者,是線性代數(shù)的基本思想之一。反過(guò)來(lái)也成立,向量的線性組合可以看作矩陣與向量的積。
我們現(xiàn)在重新給線性代數(shù)確定一下研究范圍:
它是研究可以表示為某一固定向量集合??的線性組合的所有向量的一門(mén)學(xué)科。
剛剛我們說(shuō)了,我們可以把線性代數(shù)方程組表示為矩陣方程的形式:??。
這個(gè)方程表示什么意思呢?
可以這樣理解:在空間中有一個(gè)向量??,通過(guò)矩陣??的作用后,變成了向量?
這種理解,就揭示了矩陣的本質(zhì)~
而矩陣的本質(zhì),可以看作是一種運(yùn)動(dòng)或者變換。
那么,事實(shí)上,一個(gè)??矩陣,就是描述n維線性空間到n維線性空間的線性變換(比如:拉伸, 壓縮,投影……)
2.2 再聊一下矩陣的運(yùn)算
既然矩陣是一種變換,那么自然而然地,我們會(huì)想到兩個(gè)矩陣之間相互作用一下會(huì)有什么結(jié)果。這就自然地引出了矩陣的運(yùn)算!
下面來(lái)看看矩陣的運(yùn)算(不具體列舉公式了):
加法運(yùn)算
標(biāo)量乘法運(yùn)算
乘法運(yùn)算
記得我在第1節(jié)表粗的那句話嗎?——矩陣的最初目的,就是線性方程組的簡(jiǎn)寫(xiě)!
如果想要理解這些運(yùn)算的規(guī)則,最好的方式是從線性方程組的角度考慮!
比如矩陣的加法運(yùn)算:
如果你把它還原成線性方程組,那么加法運(yùn)算不過(guò)是線性方程組中未知數(shù)的系數(shù)相加!
標(biāo)量乘法和乘法也都可以從線性方程組去理解。
當(dāng)你知道了這些運(yùn)算規(guī)則之后,可以代入矩陣的幾何意義進(jìn)行理解~
比如矩陣的乘法運(yùn)算:??。
進(jìn)行一次變換(??),在進(jìn)行一次變換(??),相當(dāng)于進(jìn)行了(??)變換。(你也可以這樣理解矩陣的乘法的幾何意義:兩次變換的疊加)
(但注意:??)
然后,既然矩陣是一種變換,那么自然而然地也有逆向的變換,這個(gè)變換就是矩陣的逆。
……………………緩一口氣,稍微理解一下的分割線……………………
2.3 一個(gè)重要的概念——矩陣的逆
我們?cè)诰仃囘\(yùn)算中,研究了兩個(gè)或多個(gè)矩陣相互作用所達(dá)成的效果。
矩陣的逆類似于一個(gè)數(shù)的倒數(shù),你看矩陣逆的定義:
如果滿足:
(??是一個(gè)對(duì)角線均為1,其他位置為0的矩陣,簡(jiǎn)稱單位矩陣)
那么,矩陣就是可逆的,且逆矩陣記為?
如果用幾何的觀點(diǎn)來(lái)理解,矩陣的逆就是一個(gè)反向變換
比如:
若 A表示順時(shí)針旋轉(zhuǎn)90°的話,那么??就表示逆時(shí)針旋轉(zhuǎn)90°
你看:
經(jīng)過(guò)矩陣??變換,在經(jīng)過(guò)矩陣??變換,又變?yōu)樵瓉?lái)的矩陣。
那么,如果矩陣A是可逆的,可逆矩陣又稱為非奇異矩陣。
接下來(lái),很自然的想法就是——
矩陣可逆是否有辦法判斷呢?
2.4 行列式
有一個(gè)辦法——那就是通過(guò)行列式!(這不是唯一的辦法,還可以通過(guò)矩陣的秩……)
這里又引入了一個(gè)極其重要的概念,它一開(kāi)始可能僅僅是判斷矩陣可逆與否,但后來(lái),數(shù)學(xué)家逐漸發(fā)現(xiàn)了更多作用和意義。
下面我們說(shuō)說(shuō)行列式。
行列式的定義看起來(lái)很難懂
看看,這是人能記住的么!
當(dāng)然,如果從低階往高階推廣,還是稍微有點(diǎn)助記作用。
我們知道,如果一個(gè)矩陣行列式不為零,那么這個(gè)矩陣可逆。
但是不要著急,行列式可不會(huì)這么簡(jiǎn)單~
我們看這個(gè)稀奇古怪的東西雖然一頭霧水,但數(shù)學(xué)家經(jīng)過(guò)仔細(xì)思考后發(fā)現(xiàn):
?其實(shí)描述了矩陣??的列確定的平行四邊形的面積(??為??矩陣時(shí))
或者由??確定的平行六面體的體積(??為??矩陣時(shí))
所以,推而廣之啊,行列式的本質(zhì)就出來(lái)了!
行列式的幾何性質(zhì)(本質(zhì)),是描述n維線性空間中線性變換“大小”的量
……………………………上面的論述請(qǐng)多理解一下哈…………………………
比如在2維空間中,我可以推導(dǎo)出這樣一個(gè)定理:
設(shè)??是一個(gè)由??矩陣??確定的線性變換,若??是這個(gè)??空間中的一個(gè)平行四邊形,則
請(qǐng)好好理解上面的事實(shí),有助于逆理解行列式~
好了,回過(guò)頭來(lái)看看矩陣可逆這回事。
想象一下,在一個(gè)二維平面上,如果一個(gè)A矩陣把一個(gè)平行四邊形a變成另一個(gè)b,這個(gè)矩陣A的行列式可以理解為放大的倍數(shù)。
當(dāng)行列式=0的時(shí)候,就把這個(gè)平行四邊形a的面積就變沒(méi)了!(一條線的面積是0)那肯定沒(méi)有逆矩陣可以把這條線再變回原來(lái)的向量了。
因此,“矩陣A可逆” 完全等價(jià)于??不難理解。
講了這么多,似乎只說(shuō)了線性代數(shù)中一點(diǎn)點(diǎn)微不足道的概念。那么,我們還聽(tīng)說(shuō)過(guò)矩陣分解,譜半徑,條件數(shù)……一大堆稀奇古怪的東西,那些是怎么來(lái)的?
不要著急,所有的事情都不會(huì)是無(wú)來(lái)由的。
下面我說(shuō)的這個(gè)問(wèn)題很關(guān)鍵,這也是線性代數(shù)中無(wú)數(shù)稀奇古怪的知識(shí)的來(lái)源。
? ?3.真實(shí)世界中,線性方程組的數(shù)值解法
3.1 線性方程組的一般解法
在一開(kāi)始說(shuō)起線性方程組的時(shí)候,我們說(shuō)了真實(shí)世界中求解線性方程組和我們?cè)趯W(xué)校中做的一樣,采用行化簡(jiǎn)得方法進(jìn)行求解。(就是我在開(kāi)頭說(shuō)后面會(huì)用到的那個(gè)知識(shí)點(diǎn))
我們對(duì)這種方法簡(jiǎn)稱為線性方程組的直接數(shù)值解法,包括Gauss消去法,列主元Gauss消去法,Gauss-Jordan消去法……
當(dāng)然,既然有直接的解法,自然還有間接的解法,也就是迭代法,包括Jacobi迭代法,Gauss-Seidle迭代法等(這個(gè)暫不討論)
那么,在運(yùn)算過(guò)程中,什么是最重要的?
精度和運(yùn)算量!
我們一定要記住,真是世界的問(wèn)題是充滿了誤差并且計(jì)算力有限的。
我直接告訴你結(jié)論:以上三種消去法計(jì)算線性方程組的運(yùn)算量都是??,(n為變量個(gè)數(shù))
這里有一個(gè)很有趣的知識(shí)點(diǎn),當(dāng)年一直覺(jué)得很無(wú)聊,所以特意拿出來(lái)說(shuō)說(shuō)。
3.2 矩陣的分解
將矩陣分解為兩個(gè)或更多個(gè)矩陣的乘積。
那么,為什么要引入矩陣的分解呢?其實(shí)還要從真實(shí)世界說(shuō)起。
我們以一個(gè)最常見(jiàn)的矩陣分解——LU分解為例先說(shuō)說(shuō)
?,其中??是一個(gè)下三角矩陣(對(duì)角線元素全為1),??是一個(gè)上三角矩陣
那么,線性方程組
就可以變成:
這樣,就可以拆解為:
好吧,一個(gè)方程變成了兩個(gè)。正像你看到的,矩陣分解就是這么無(wú)聊,似乎沒(méi)啥用處。可是,事實(shí)并非如此——
我們來(lái)看看矩陣??分解的計(jì)算量。如果你去解一個(gè)方程組,??分解的運(yùn)算量是多少呢?哦,沒(méi)錯(cuò),也是?
似乎在運(yùn)算上也不比其他方法強(qiáng)是吧
但是,要知道,我們現(xiàn)實(shí)生活中遇到的問(wèn)題,往往不是一錘子買(mǎi)賣(mài)。
比如,你考慮
這樣一個(gè)由m個(gè)方程組組成的系列(這種問(wèn)題很常見(jiàn),我們常常把新的數(shù)據(jù)帶入到已有的模型里),那矩陣的LU分解就顯現(xiàn)出它的威力了!
LU分解的方法只需要作一次LU分解,然后做m次解三角方程(m為方程組系列中方程組的數(shù)目)
比之前說(shuō)的那幾種消去法的運(yùn)算量少了??次運(yùn)算!
這就是LU分解的真實(shí)意義所在。
那么我們?cè)倏匆粋€(gè)真實(shí)世界的例子:
3.3 一個(gè)有趣的小問(wèn)題:蝴蝶效應(yīng),以及所引出的條件數(shù),矩陣范數(shù)……在實(shí)際問(wèn)題中,線性方程組是由計(jì)算機(jī)求解的。
但要知道,計(jì)算機(jī)一般把數(shù)字用浮點(diǎn)數(shù)來(lái)表示,數(shù)位通常為8-16位,這樣就給線性方程組的求解引入了誤差
插播一句:為什么理論家沒(méi)辦法治國(guó)?因?yàn)楝F(xiàn)實(shí)世界是充滿了誤差和摩擦力的,而理論家往往并不考慮這些。
我們都聽(tīng)說(shuō)過(guò)“蝴蝶效應(yīng)”。微小的初始誤差有可能導(dǎo)致巨大的結(jié)果差異。
其實(shí),在求解線性方程組中我們就會(huì)遇到這樣的問(wèn)題。
比如這樣一個(gè)方程組:
這個(gè)方程的解是?
我們?cè)倏催@個(gè)方程組:
這個(gè)方程組的解是多少呢?乍一看,應(yīng)該和上一個(gè)差不多吧?
可惜,差得有點(diǎn)多!不要眨眼睛~它的解是:
這就說(shuō)明:
初始條件(A)的微小擾動(dòng),造成的結(jié)果有巨大的差異!
……………緩一口氣,稍微理解一下的分割線………………
我們不妨把這類方程組叫做“蝴蝶效應(yīng)”方程組(它的正確稱呼應(yīng)該是“病態(tài)的”方程組,但這個(gè)名字沒(méi)有我起的名字那么浪漫不是)
那么,我們?nèi)绾未_定這個(gè)方程組是這種“蝴蝶效應(yīng)”方程組呢?這里引入一個(gè)概念——條件數(shù)(??)
而條件數(shù)的定義又則涉及到了矩陣的范數(shù)。
其實(shí),范數(shù)的引入是很自然的,我們描述一個(gè)“數(shù)”的大小,用“數(shù)值”,描述一個(gè)向量的長(zhǎng)度(歐式距離),用“歐氏距離”,那么如果我想描述矩陣的“大小”(姑且這樣說(shuō))該用什么?
用到的就是范數(shù)。
范數(shù)可以看作抽象的“大小”。而不同的范數(shù)可以看作不同度量方式。
范數(shù),譜半徑,條件數(shù),甚至特征值這些東東統(tǒng)統(tǒng)都是在研究現(xiàn)實(shí)問(wèn)題中逐漸開(kāi)發(fā)出來(lái)的新東西。
? ?總結(jié)
所以,到此稍微總結(jié)一下吧:
看了這么多,其實(shí)我相信你對(duì)線性代數(shù)已經(jīng)有了一個(gè)初步的認(rèn)識(shí)了。它就是一門(mén)從研究線性方程組起家的學(xué)問(wèn)。當(dāng)然,后續(xù)抽象的部分,比如向量空間,矩陣的秩等等在這里都沒(méi)有涉及。但我相信,如果你明白了矩陣的一些基本事實(shí),以及他們的來(lái)龍去脈,弄懂那些知識(shí)并不難~
最后,祝大家好好學(xué)習(xí),天天向上~
—完—
為您推薦
IoU、GIoU、DIoU、CIoU損失函數(shù)的那點(diǎn)事兒
GitHub重大更新:在線開(kāi)發(fā)上線,是時(shí)候卸載IDE了
史上最爛的項(xiàng)目:苦撐12年,600多萬(wàn)行代碼...
數(shù)據(jù)分析入門(mén)常用的23個(gè)牛逼Pandas代碼
知乎高贊:985計(jì)算機(jī)視覺(jué)畢業(yè)后找不到工作怎么辦?
總結(jié)
以上是生活随笔為你收集整理的ker矩阵是什么意思_直观理解!你一定要读一下的“矩阵和线性代数入门”的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 近视眼
- 下一篇: 如何设置文件夹背景色为全黑色