back to index

[線性代數] 這門課在學什麼?


link |
00:00.000
好,那我們就來上課吧,我們就正式來講線性代數
link |
00:06.000
那線性代數這門課,我們要學什麼呢,什麼是線性代數呢
link |
00:13.000
那其實在線性代數這門課裡面,我們最主要學的是一個叫做線性系統的東西
link |
00:21.000
什麼是線性系統呢,我們先來看一下什麼叫做系統
link |
00:27.000
所謂的系統啊,它有很多不同的名字,舉例來說,它又叫做function,它又叫做transformation,或者是又叫做operator
link |
00:39.000
那system啊,function啊,transformation啊,operator啊是一樣的東西
link |
00:44.000
它們都是給它一個輸入,它就會突一個輸出
link |
00:49.000
那像這樣子的system,給一個輸入就突一個輸出的system,在我們的身邊比比皆是
link |
00:56.000
舉例來說,現在手機都有語音辨識的功能,所謂的語音辨識系統
link |
01:02.000
就是它會吃一個聲音訊號當作輸入,它的輸出就是這段聲音訊號所對應的文字
link |
01:11.000
或者是對話系統,大家也不陌生,今天Siri都可以跟你講話
link |
01:17.000
你只要對Siri說一句話,它就會給你一個回應,這也是一個系統
link |
01:23.000
或者是當你拿手機撥電話給另外一個人,你的聲音透過你的手機,再透過記憶體台
link |
01:31.000
傳到你的朋友的手機上面,從朋友的手機上面發出一段聲音,這也是一個系統
link |
01:37.000
輸入是你的聲音,輸出是另外一個手機上你的聲音,而這個是通訊的系統
link |
01:46.000
所以我們生活中有各式各樣的系統,而在線性單數這門課,我們想要關注的是各式各樣系統裡面的某一類
link |
01:57.000
我們關注的是線性的系統,那什麼樣的系統叫做線性的系統呢?
link |
02:04.000
一個線性的系統要滿足以下兩個條件,第一個條件叫preserving multiplication
link |
02:12.000
preserving multiplication是什麼意思呢?假設現在我們有一個系統,它輸入一個東西
link |
02:19.000
比如說這邊輸入的是一個南瓜的種子,它就會吐出一個南瓜
link |
02:26.000
那如果你今天輸入K個種子,它就吐出K個南瓜,那這個就是preserving multiplication
link |
02:35.000
輸入乘上K倍,輸出就跟著乘上K倍,這是線性系統的第一個特徵,叫做preserving multiplication
link |
02:45.000
如果用白話來講,就是一分耕耘一分收穫,兩分耕耘兩分收穫,三分耕耘三分收穫,以此類推
link |
02:55.000
這是線性系統的第一個特徵,第二個特徵叫做preserving addition
link |
03:01.000
什麼叫preserving addition呢?如果這個系統種下一個南瓜的種子,它就吐出一個南瓜
link |
03:08.000
種下一個玉米的種子,就吐出一個玉米,那你種下南瓜加上玉米,它就吐出南瓜加上玉米
link |
03:19.000
所以這個preserving addition用白話來講,就是種瓜得瓜,種豆得豆,種瓜豆就得瓜豆
link |
03:28.000
如果滿足這兩個條件,就叫做一個線性系統
link |
03:34.000
在舉例的時候,我們特別刻意不舉數字的例子,我們刻意不說現在的輸入是一個數值或者是一個向量
link |
03:44.000
之所以舉例的時候先舉一些奇奇怪怪的東西,是為了要告訴你說所謂線性系統的定義並不局限於向量或者是數字上面,它的定義是更為寬廣的
link |
03:59.000
但是在這一門課裡面,我們所討論的系統,它的輸入輸出通常都是向量
link |
04:07.000
如果從向量的觀點再講一次的話,preserving multiplication就是這個樣子,有一個系統輸入一個向量,這個向量是1,2,輸出3,4,5
link |
04:18.000
但如果輸入是1,2乘上k倍,輸出就會是3,4,5乘上k倍
link |
04:25.000
如果講更具體一點,k等於2,也就是輸入是2跟4的話,那輸出就是3,4,5乘上2,也就是6,8,10
link |
04:37.000
這個是線性系統的第一個特徵
link |
04:41.000
那線性系統的第二個特徵是怎麼樣呢?假設我們已經知道說這個線性系統輸入1,2就突出3,4,5
link |
04:49.000
輸入5,6就突出7,8,9,那我們不需要針對這個線性系統實際做測試
link |
04:57.000
我們就已經可以知道說,假設輸入是1,2加5,6,那輸出就是3,4,5加7,8,9
link |
05:05.000
假設輸入是1,2加5,6,也就是6跟8,那輸出就是3,4,5加7,8,9,也就是10,12,14
link |
05:13.000
滿足這兩個特徵就是線性的系統
link |
05:18.000
接下來我們就來看看以下這些系統是不是線性的
link |
05:24.000
我們第一個例子是,假設有一個系統它做的事情就是把輸入的東西做平方
link |
05:31.000
輸入x就輸出x平方,輸入2就輸出4,輸入3就輸出3的平方,也就是9
link |
05:39.000
那這樣一個系統它是不是線性的呢?
link |
05:44.000
給大家10秒鐘的時間想一下
link |
05:48.000
那為什麼它不是線性的呢?你就檢查一下它有沒有符合線性系統的兩個特徵
link |
05:54.000
首先我們先看第一個特徵,preserving multiplication
link |
05:59.000
如果輸入乘上k倍,假設輸入不是x而是k倍的x
link |
06:05.000
這個系統它的輸出會是k平方乘x平方
link |
06:11.000
那如果是一個線性系統,輸入是k倍,輸出一定要是k倍
link |
06:17.000
如果一個線性系統輸入x,輸出會是x平方,那輸入kx,輸出應該會是k倍的x平方
link |
06:25.000
那這個系統不是,它把輸入平方倍,也就是說它的輸出是k平方x平方
link |
06:30.000
所以它沒有滿足線性系統的第一個特徵
link |
06:34.000
那有沒有滿足線性系統的第二個特徵呢?也沒有
link |
06:38.000
如果輸入x1,輸出是x1平方,輸入x2,輸出是x2平方
link |
06:43.000
這個系統輸入x1加x2,輸出是x1加x2的平方
link |
06:49.000
如果是一個線性系統,理論上它的輸出應該是x1平方加x2平方,x1平方加x2平方
link |
06:57.000
那這個系統它的輸出是x1加x2平方,我們知道x1加x2平方並不等於x1平方加x2平方
link |
07:04.000
所以這個系統不是一個線性的系統
link |
07:08.000
那這邊有一個系統,它的輸入是一個矩陣
link |
07:13.000
我們比較強調一下所謂的系統,它的輸入可以是任何東西
link |
07:17.000
雖然多數的時候在這門課裡面,我們的系統的輸入都是一個向量
link |
07:21.000
但沒有規定,一定要是向量,完全可以是別的東西
link |
07:25.000
線性系統的定義也不侷限於向量而已
link |
07:29.000
那假設有一個系統,它輸入的是一個矩陣,比如說689902
link |
07:35.000
那它這個系統做的事情是,它會把輸入的矩陣,以左上到右下的對角線為軸進行翻轉
link |
07:43.000
也就是輸入689902以後,輸出也是689902
link |
07:50.000
只是本來689是直的,輸出變成橫的,902本來是直的,輸出變成橫的
link |
07:57.000
那這個運算叫做transpose
link |
08:01.000
這個系統做的事情就叫做對矩陣進行transpose
link |
08:06.000
那transpose這件事情是不是linear的呢?
link |
08:15.000
給大家十秒鐘的時間想一下
link |
08:18.000
好,那覺得transpose是linear的同學舉手一下
link |
08:28.000
好,大家都覺得是linear,那就手放下
link |
08:31.000
好,沒錯,transpose確實是linear
link |
08:35.000
那怎麼說呢?你就檢查一下它有沒有符合所謂linear的兩個特性
link |
08:40.000
第一個特性,有沒有preserving multiplication呢?
link |
08:43.000
你把輸入乘上k倍,輸出會變成怎麼樣呢?
link |
08:48.000
把輸入乘上k倍,在通過這個transpose系統以後
link |
08:53.000
輸出會變成這個樣子,本來輸入是直的都變橫的
link |
09:00.000
那輸入乘上k倍,輸出的結果是不是也變k倍呢?
link |
09:05.000
顯然也是變k倍,所以transpose滿足線性的第一個特徵
link |
09:09.000
那第二個特徵,假設輸入這個689902,輸出會變成689902
link |
09:15.000
輸入是123456,輸出會變成123456
link |
09:20.000
那假設把輸入加起來,把這兩個矩陣加起來
link |
09:25.000
作為transpose這個operator的輸入
link |
09:28.000
所謂的operator其實也是function,也是系統
link |
09:31.000
有時候我們在不同的情境下會有不同的稱呼
link |
09:33.000
但是operator、transformation、function、system
link |
09:37.000
其實都是同一個東西,就是輸入一個東西,輸出一個東西
link |
09:41.000
這個系統輸入這兩個矩陣的相加
link |
09:45.000
那輸出呢?輸出會是這個樣子
link |
09:47.000
我們把輸入都放橫的,輸入本來直的都放橫的
link |
09:52.000
而這個輸出會是原來的輸出的和
link |
09:57.000
所以transpose這件事情是linear
link |
10:01.000
那講到目前為止你都覺得說
link |
10:03.000
所謂的linear好像是一個非常簡單的事情
link |
10:06.000
好像是一個非常簡單的動作
link |
10:10.000
但是真的是這樣嗎?我們再來看下一個例子
link |
10:14.000
什麼叫做derivative呢?derivative是這樣子的
link |
10:18.000
假設我們輸入一個function f
link |
10:21.000
derivative做的事情就是會求它的導數得到f'
link |
10:26.000
這個我們在微積分的時候已經學過了
link |
10:30.000
那假設你已經忘記derivative是什麼的話
link |
10:33.000
那我們舉一個簡單的例子,假設輸入是一個function x'
link |
10:37.000
那system可以輸入任何東西啊
link |
10:39.000
所以我們可以把一個function當作是一個system的輸入
link |
10:44.000
所以輸入是一個function叫x'
link |
10:46.000
輸出會是什麼?是另外一個function叫2x
link |
10:49.000
輸入是3x,輸出會是3
link |
10:53.000
這個就是derivative
link |
10:55.000
那derivative是不是linear的呢?
link |
10:59.000
給大家五秒鐘的時間想一下
link |
11:03.000
你覺得derivative不是linear的同學舉手一下
link |
11:08.000
有同學覺得不是linear的
link |
11:10.000
你覺得derivative是linear的同學舉手一下
link |
11:14.000
好,手放下
link |
11:15.000
我覺得舉手的人顯然是比較少的
link |
11:17.000
所以顯然對大家來說
link |
11:18.000
這個東西到底是不是linear
link |
11:21.000
會讓你覺得有點困惑
link |
11:24.000
linear感覺就是一個很簡單的東西
link |
11:26.000
但是這麼複雜的,求導數這麼複雜的運算
link |
11:32.000
它會是一個linear的東西嗎?
link |
11:34.000
我們來看看它是否滿足linear的定義
link |
11:39.000
假設輸入f,我們會得到f'
link |
11:42.000
輸入k倍的f,依照你對derivative的理解
link |
11:47.000
依照你大一微積分學的東西
link |
11:50.000
它是不是也會變成k倍的f'呢?
link |
11:53.000
顯然是的
link |
11:55.000
那假設有另外一個function g
link |
11:57.000
它通過derivative以後得到的是g'
link |
12:00.000
那假設輸入的是f加g
link |
12:02.000
那輸出其實就是f'加g'
link |
12:05.000
這個是在微積分的時候跟大家講過的
link |
12:10.000
derivative的種種特性之一
link |
12:13.000
所以顯然derivative也是滿足線性系統的兩個特徵的
link |
12:18.000
所以derivative這件事情,求導數這件事情
link |
12:22.000
它是線性的
link |
12:24.000
雖然它有點複雜,但它是線性的
link |
12:28.000
那接下來,積分從at到b這件事情
link |
12:34.000
它是不是線性的呢?
link |
12:37.000
什麼叫積分呢?
link |
12:39.000
這個我想大家其實知道,我幫你複習一下
link |
12:41.000
假設輸入是一個函式,叫做f of x
link |
12:45.000
那積分呢?
link |
12:47.000
積分其實也是一個function,也是一個system
link |
12:50.000
它的輸入是一個函式,它的輸出是什麼呢?
link |
12:52.000
它的輸出是一個數值,是一個scalar
link |
12:55.000
這個scalar是什麼呢?
link |
12:57.000
這個scalar就是把f of x這個function
link |
13:00.000
從a積分到b,這個就是積分這個函式的輸出
link |
13:05.000
所以積分這個函式,它輸入一個function
link |
13:08.000
輸出一個數值
link |
13:11.000
那講得更具體一點
link |
13:13.000
假設f of x就是藍色這一條線
link |
13:18.000
所謂的積分是怎麼回事呢?
link |
13:20.000
所謂的積分就是,假設從a積到b
link |
13:23.000
你就在a這邊畫一條線,b這邊畫一條線
link |
13:27.000
然後把藍色跟這個x軸的面積
link |
13:32.000
把它框出來
link |
13:34.000
那這個部分,這個面積就是積分的結果
link |
13:39.000
或者是,假設你還是不知道這是什麼的話
link |
13:42.000
那就舉實際的例子
link |
13:44.000
假設f of x是x平方
link |
13:47.000
那做完積分以後
link |
13:49.000
從a積到b得到的答案是什麼呢?
link |
13:53.000
x平方的積分從a積到b得到的結果
link |
13:57.000
是三分之一b三方減a三方
link |
14:01.000
雖然f of x它是一個函數
link |
14:04.000
但經過積分以後
link |
14:06.000
它變成一個數值
link |
14:08.000
這個數值是三分之一b三方減a三方
link |
14:12.000
所以我們現在有一個system
link |
14:14.000
這個system的輸入是一個函數
link |
14:16.000
輸出會把這個函數變成一個數值
link |
14:18.000
這個東西它是不是線性的呢?
link |
14:30.000
給大家三秒鐘的時間想一下
link |
14:32.000
你覺得積分是線性的同學舉手一下
link |
14:37.000
手放下
link |
14:38.000
多數同學覺得積分是線性的
link |
14:41.000
沒錯,積分確實是線性的
link |
14:43.000
如果你看一下線性系統的兩個原則的話
link |
14:47.000
積分符不符合這兩個原則呢?
link |
14:49.000
顯然是符合這兩個原則的
link |
14:51.000
假設輸入是f of x
link |
14:54.000
然後我們從a積到b
link |
14:57.000
那輸入假設變成k倍的f of x
link |
15:01.000
那輸出呢?
link |
15:02.000
輸出就是k倍的f of x從a積到b
link |
15:05.000
k倍的f of x從a積到b
link |
15:08.000
我們可以把k提出來
link |
15:10.000
可以把k拿到積分的符號之外
link |
15:13.000
那這個是微積分都有教過大家的東西
link |
15:16.000
所以把k拿出來變成k倍的從a積到b
link |
15:20.000
變成k倍的f of x從a積到b
link |
15:23.000
所以輸入變k倍
link |
15:25.000
輸出也變成k倍
link |
15:29.000
那有沒有符合preserving addition這件事情呢?
link |
15:32.000
假設f of x做完積分得到這樣
link |
15:36.000
g of x做完積分得到這樣
link |
15:38.000
我們把f of x加g of x當作這個函式的輸入
link |
15:42.000
輸出就是把f of x加g of x從a積到b
link |
15:46.000
那根據我們在微積分學過的東西
link |
15:49.000
f of x跟g of x他們可以分開積分
link |
15:52.000
所以f of x加g of x從a積到b
link |
15:55.000
你可以寫成f of x從a積到b
link |
15:57.000
加上g of x從a積到b
link |
16:00.000
那所以顯然當我們把輸入加起來的時候
link |
16:05.000
我們得到的結果
link |
16:06.000
做完積分以後得到的結果
link |
16:08.000
也是輸出相加
link |
16:11.000
所以積分這件事情也是線性的
link |
16:15.000
所以線性的系統比你想像的還要常見
link |
16:18.000
很多你常見的operation
link |
16:20.000
它們其實都是線性的