這系列獻給學過線代,算過矩陣,尚未開悟的同學。 1.1前言 有個網友發(fā)私信給我,問能不能寫篇線性代數的文章。我有點為難,在科學網寫科普,面向也是研究生和教師。線性代數是理工科大學生的基礎課,有中學基礎,就不難學,寫了怕沒人看。他說,許多朋友和他都學過線性代數,考試也得A,只是學后仍然是一腦子漿糊,如有文章梳理一下,相信很多讀者會受益。我上網查一下,果然有評論說,這課觀念臺階起的太高,猛然從中學的經驗數學進入抽象世界,很多人轉不過來,大多數人是在學習理論力學、統計分析、信號處理、控制理論或計算方法時,才領會一部分的??茖W發(fā)展至今,線性代數已是科學和工程不可或缺的基礎了,在MATLAB等軟件上計算和顯示,如同昨日之用計算器。它也是機器學習的基礎。對于線性代數的應用,熟練的計算和證明已不是關鍵,重要的是掌握概念,明白內涵,能否想象。而對這點稍微說些個人體會的,都被網上吃瓜群眾贊為醍醐灌頂。好吧,既然這么有用,我就給還沒有開悟的朋友充一回大神。 這個系列與“重修微積分”系列類似,面向已經學過線性代數,覺得做題考試讀文章還行,學過套路,但還沒變成武功的人。希望通過這系列文章,能形成對線性世界的直觀認知,不僅對懵懂者和初學者有用,對玩矩陣還算溜的人也有幫助。 許多人以為數學很枯燥,需要毅力來學習。這是未見美景者言??菰锸且驗椴荒芟胂螅烙浻脖巢判枰懔?。學習數學有點與物理一樣,都要在腦中“看到”內容的圖像,只是物理用實驗證明這想象中的世界是真實的,數學是用形式邏輯證明它是對的,經過了求證的跋涉,最后在心中留下的,要有永久記憶住的畫面。如果你對數學內容所知還只是公式推導,那還只是在途中,沒見到山后的風景,自然覺得郁悶。 線性代數理論主要是在20世紀發(fā)展的。對相關的內容,人們早先的興趣在于解線性方程組,萊布尼茨在17世紀用過行列式,18世紀有了用行列式求解的克萊姆法則,及直接求解的高斯消元法。到了19世紀人們引進矩陣的概念和運算,意識到它與行列式的關系。這些都還像是牛頓前的力學,散布著先哲們計算技巧和總結出規(guī)律的智慧珍珠,還未從抽象的高度來統合成一種理論。20世紀初,數學走向嚴謹形式推理的公理化系統。作為抽象理論的線性代數才逐漸成形,研究應用數學的和物理的人愕然發(fā)現,克萊姆法則也可以用在微分幾何,解方程的特殊函數不過是線性空間的基向量,量子力學中的力學變量可以用矩陣或算符表示。這些不同的高深知識,其實只是一種簡單抽象的知識在具體對象上的表現,我們可以站在高處來俯視。到了現在,線性代數已是純數學和應用數學的核心基礎,放寬約定深入挖掘則有抽象代數,加上拓撲約束走向無窮則有泛函分析,泛化成算子理論讓解微分方程與代數方程趨向統一,在計算機程序中有了它,向量和矩陣如同數量一樣的方便表達使用。而這種表達在物理、控制、計算、統計、信息科學和工程應用上,已經是在職必須通曉的工具,以致于瑞典數學家Lars Garding說:“現在不熟悉線性代數的概念,以這樣的基礎想去學自然科學,就和文盲差不多?!?/span> 線性代數在中國普及到工科要晚一些?,F在大約已是理工科的必修課,在50年前我上大學時還不是。所以教你們課的老師,也許還未能將其精髓傳授。上大一時,我在圖書館翻看吉林大學王湘浩謝邦杰編的《高等代數》,教理論力學的老師路過,翻了一下書頁,說你學這個沒什么用。沒用?可我還是覺得有趣,花了幾星期讀完,有中學數學基礎看懂內容,倒沒什么難度,只是對書中的前言,“學習這門課,必須學會從空間和矩陣的不同角度來看問題”,這段話還不大理解。這讓我在學習中反復捉摸這意思,直到后來學了更多數學時,才算徹底明白。領會這觀念讓我受益匪淺。這么說吧,這是數學抽象的門檻,過了這一關,數學就能編織成圖案印在腦中,多年不用還能憑印象說出內容。 數學從小學、中學到大學三個階段,分別是觀念改變的三個門檻。小學數學的核心是數的四則運算,如果2件50元,3件100元,哪個更便宜還轉不過來,那還停留在用手指計數的階段,甭學理工科了,玩別的更合適。中學基本是幾何想象、掌握函數的概念、代數推理和套公式應用,學好就能對付傳統職業(yè)的需要。如今開始,這已不敷科技職業(yè)的應用了,在計算機成為手頭必備的計算工具,矩陣和向量的概念將是常識,它們把算術中養(yǎng)成的逐個計算,變成適應于機器的批量處理。學習微積分和線性代數,過的是兩個不同的門檻。一個是理解無窮和收斂的概念,讓你用邏輯來推測無法經驗的無窮世界。另一個是數學抽象的把握,能把數的一元對應關系推廣到多元乃至各種數學實體,依照需要,能對同一對象用不同的數學抽象來概括,又能把不同的數學處理歸納成是一樣的,用統一的數學方法來處理。真正領悟這一點,你就上了一個臺階,進到更深數學領域才懂欣賞。數學是用基礎知識層層堆高的學問,前面的基礎沒學好,即使靠死記硬背考試過了關,想象的大廈疊的也是歪樓,再疊就倒了。所以數學差的人,未必不聰明,只是以前學夾生了,沒及早糾正。 1.2為什么學“線性代數”? 人們最初的抽象起于計數時的數量,這是一維的標量,最簡單有用的計算是相加和比例,幾千年的實踐讓它有了最直觀的想象和應用。平面幾何讓想象進入二維,物理構造了三維空間的真實。線性代數讓你進一步理解n維乃至無窮維中這種相加和比例的運用。 算術是標量的計算,也就是對具體的實(復)數做加減乘除的算法,這單個變量和計算結果的關系可以寫成一元的函數。如有多個變量就寫成多元函數,有多個結果就寫成一組函數。但從另一個角度來看,這多元變量值是一組數,這多個結果也是一組數,一組數也可以打包看作是一個數學的實體,叫“向量”,相同長度的數組在相加和比例運算中,仍然是同長度的數組,這封閉的群體叫做一個空間??臻g中的成員看做一個點。未知的多元變量,則是向量空間中變動的點,一組多元函數是定義域向量空間中的點,與函數組值向量空間中點的對應,或稱為映射。向量把一元的函數關系類比地推廣到一組多元函數乃至無窮組無窮多元函數,或表示為空間的映射,寫成與單變量函數的同樣形式,或在抽象空間上的統一形式。這種簡單清晰的表達,在理論和計算工具的應用上都極為方便。人們經過百年時間,終于習慣了這一點,現在成為科學和工程的公共基礎。 當然,僅僅這樣的改寫,除了表達方便、聯想直觀以外,并沒有帶來更豐富的內容。線性代數類似于算術,關注最基本的相加和比例的運算,這樣的關系稱為線性。因為向量空間中的元素對線性計算封閉,所以向量空間在數學上稱為“線性空間”。當多元的變量和計算結果表示為向量形式時,其線性關系的映射稱為線性算子;它們表達為數組的形式時,它們間的線性關系則可以表示為一個矩陣。這個線性的映射就是矩陣與向量的乘法運算。任何有限維數的向量都可以表示成一個有限長度的數組,有限維向量空間上的線性映射都對應著一個矩陣。線性代數研究怎么玩得轉它們。 線性意味著一種容易計算,可以簡單向前推測的系統。重要的是,這樣的系統可以用數乘來比例放大,用疊加原理來綜合??茖W研究經常把一個系統分解成子系統,分別研究它們,然后綜合它們的結果從而了解整體。例如力學中計算形變和運動用力的疊加,電路上電流電壓的疊加,力學聲學光學中波的疊加,量子計算波函數的疊加,數理方程用函數族解的疊加??茖W研究從牛頓前的零敲碎打,到現在的分解綜合是基于疊加原理。而疊加原理能行得通,系統必須是線性的。 在中學,代數是“懶人的算術”,把需要技巧的算術變成照章辦事。把算術題中已知數未知數各自寫成符號,按照算術中總結出的等價規(guī)則,來導出它們間的關系式。這樣要計算同一類的算術問題,就不需要按類型運用技巧了,通過機械的規(guī)則搬弄符號,約簡成單一未知數在左邊已知數在右邊的等式,代入計算就能得出答案。這是古希臘丟番圖發(fā)明的一種抽象方法,能夠統一處理同一類的數學問題。在這種抽象下,對方法的研究形成理論,得到的結果叫做公式。現代數學中的代數結構,是進一步地抽象,抽象的對象不是現實世界的事物,而是數學中的概念和工具。研究抽象集合中一種或多種封閉的運算結構,如群、環(huán)、域、格等,其中二元運算形成的抽象系統叫代數系統??傊碜鞒橄蟮男问竭\算觀念。 線性代數就是從理論高度用抽象的方法,研究這類可疊加的系統,從線性空間映射的高度看待它們中的運算,了解這些運算變換的結構??茖W研究上凡是用到數學涉及計算,有著漂亮定性和定量結果的,基本上是把它描寫成線性系統,或者以此來逼近。所以它成為現代科學和工程的公共基礎。 1.3向量表示已是計算機數據表示的基礎 幾個世紀前的數學家,曾經花費大量的精力來研究代數方程的解,期望后人只要學習他們的成果,沿著開辟好的路徑,按圖索驥地前行。計算機時代,卻把前人研究好的算法,打包成為同一個程序,后人不需要了解蹊徑,只要把數據也打包成統一的形式,就可以統一處理。讓我們先體驗一下向量作為一個數組,在計算工具中的應用。 向量a是一組數,把它看成多項式的系數,它可以表達一個多項式或者代數方程。代數方程所有的根x也是一個向量,方程的解可以看作以這向量作為變量的一個函數x=roots(a) ,將任何代數方程表示成系數的向量,就可以代入這函數來求解。比如說解五次方程,它沒有根式解,但可以計算近似的數值解。
應用向量的表達,在今日可以很方便地與計算機互動來完成科研和工程中的計算和圖像顯示工作。 我們將從線性方程組、矩陣和線性空間,不同的角度,建立起它們的聯系,讓你從直觀想象中了解線性代數的內容。 (待續(xù)) http://blog.sciencenet.cn/blog-826653-1032025.html 上一篇:了解點機器學習 |
|