線性代數中的矩陣乘法推理。

2021-10-09 02:42:32 字數 2714 閱讀 5854

性代數中的矩陣乘法推理。

首先要說什麼是線性對映。線性對映即將 n 維的向量,通過 m*n 的矩陣對映成 m 維的向量。

比如a矩陣 [[0 1] [2 3] [4 5]] 乘以2維的x向量[0 1] ,即將此向量對映成3維的y向量[1 3 5], 計算方法為 y[i] =

那麼矩陣乘法呢?即將多次對映過程中的中間矩陣相乘得一矩陣d,而d對原始向量對映的結果與多次對映的結果相同,即矩陣d為矩陣相乘結果。

乘法推理:xn為原始向量, rmn為一次對映矩陣,tsm為二次映身矩陣,ys為目標向量,dsn為矩陣乘積目標:

即ys = xn * rmn * tsm;

其中一次對映得m維的向理: vm = xn*rmn =

x0 * r00 + x1* r01 + ... +xn* r0n,

x0 * r10 + x1* r11 + ... +xn* r1n,

x0 * rm0 + x1* rm1 + ... +xn* rmn,

其中一次對映得s維的向理:  ys = vm * tsm  =

(x0 * r00 + x1* r01 + ... +xn* r0n) * t00 + (x0 * r10 + x1* r11 + ... +xn* r1n)*t01 + .... +(x0 * rm0 + x1* rm1 + ... +xn* rmn) * t0m,

(x0 * r00 + x1* r01 + ... +xn* r0n) * t10 + (x0 * r10 + x1* r11 + ... +xn* r1n)*t11 + .... +(x0 * rm0 + x1* rm1 + ... +xn* rmn) * t1m,

(x0 * r00 + x1* r01 + ... +xn* r0n) * ts0 + (x0 * r10 + x1* r11 + ... +xn* r1n)*ts1 + .... +(x0 * rm0 + x1* rm1 + ... +xn* rmn) * tsm,

單看第一行********************=開始

(x0 * r00 + x1* r01 + ... +xn* r0n) * t00 + (x0 * r10 + x1* r11 + ... +xn* r1n)*t01 + .... +(x0 * rm0 + x1* rm1 + ... +xn* rmn) * t0m,

即為:(x0 * r00* t00 + x1* r01* t00 + ... +xn* r0n* t00) + (x0 * r10*t01 + x1* r11*t01 + ... +xn* r1n*t01 )+ .... +(x0 * rm0* t0m + x1* rm1* t0m + ... +xn* rmn* t0m) ,

即為:x0 * (r00* t00 + r10*t01 + ...  + rm0* t0m) + x1 * (r01* t00 + r11*t01 + ...  + rm1* t0m) + ... + xn * (r0n* t00 + r1n*t01 + ...  + rmn* t0m)

因為向量 * 向量 = 向量各元素乘積之和,所以上面可簡化為:

向量 xn 乘以 向量 [(r00* t00 + r10*t01 + ...  + rm0* t0m),  (r01* t00 + r11*t01 + ...  + rm1* t0m), ...  (r0n* t00 + r1n*t01 + ...  + rmn* t0m)]

同理 (r00* t00 + r10*t01 + ...  + rm0* t0m),可簡化為 向量rv0 * 向量t0v,

其中,rv0表矩陣rmn的第0列列向量[r00, r10, ..., rm0],

t0v表矩陣tsm的第一行行向量[t01, t02, ..., t0m]

同理 (r01* t00 + r11*t01 + ...  + rm1* t0m),可簡化為 向量rv1 * 向量t0v,

,rv1表矩陣rmn的第1列列向量[r01, r11, ..., rm1],

t0v表矩陣tsm的第一行行向量[t01, t02, ..., t0m]

所以第一行即為

xn * [rv0 * t0v, rv1 * t0v, ..., rvn * t0v ]

單看第一行********************=結束

所有行都如上,可解釋為ys =

xn * [rv0 * t0v, rv1 * t0v, ..., rvn * t0v ],

xn * [rv0 * t1v, rv1 * t1v, ..., rvn * t1v ],

xn * [rv0 * tsv, rv1 * tsv, ..., rvn * tsv ],

根據向量與矩陣的乘法,將向量xn提出來,即得一矩陣dsn = 

[rv0 * t0v, rv1 * t0v, ..., rvn * t0v ],

[rv0 * t1v, rv1 * t1v, ..., rvn * t1v ],

[rv0 * tsv, rv1 * tsv, ..., rvn * tsv ],

即ys =xn* dsn;

rv0表矩陣rmn的第0列列向量[r00, r10, ..., rm0],

rv1表矩陣rmn的第1列列向量[r01, r11, ..., rm1],

以此類推,

t0v表矩陣tsm的第0行行向量[t01, t02, ..., t0m]

t1v表矩陣tsm的第0行行向量[t11, t12, ..., t1m]

以此類推,

即:dsn[i, j] = rvj *tiv;即: 前矩陣的 j 所在的列向量 乘以 後矩陣的 i 所在的行向量;

線性代數 矩陣乘法和逆矩陣

逆矩陣 本節是網易公開課上的麻省理工大學線性代數課程第三節 矩陣乘法和逆矩陣 的學習筆記。矩陣相乘,並不一定要求是方陣。如果矩陣a是乙個 mxn 的矩陣 m行,n列 則矩陣b必須是乙個 nxp n行,p列 的矩陣,這樣兩者才能相乘,相乘的結果矩陣c是乙個 mxp m行,p列 的矩陣。假設 ab c ...

線性代數 矩陣乘法演算法實現

作者zhonglihao 演算法名矩陣乘法 matrix multiplication 分類線性代數 複雜度n 3 形式與資料結構 c 實現 一維陣列儲存 特性指標封裝返回 具體參考出處 教科書備註 include stdafx.h include include stdio.h void matr...

矩陣 Matrices 線性代數

矩陣 在數學中,矩陣 matrix 是乙個按照長方陣列排列的複數或實數集合 矩陣相加 通常的矩陣加法被定義在兩個相同大小的矩陣 矩陣乘法 矩陣和向量的乘法 如圖 m n 的矩陣乘以 n 1 的向量,得到的是 m 1 的向量 矩陣乘法 m n 矩陣乘以 n o 矩陣,變成 m o 矩陣。矩陣乘法的性質...