這一章主要介紹了什么是矩陣與向量、相關(guān)運(yùn)算(矩陣加法、標(biāo)量乘法、矩陣向量乘法、矩陣乘法)、矩陣乘法特征和逆、轉(zhuǎn)置。
一、矩陣和向量
1、矩陣:是指縱橫排列的二維數(shù)據(jù)表格;(下圖為m×n矩陣)
矩陣的寫法:行×列;
矩陣元素:A_ij表示A矩陣的 i 行 j 列的元素, i , j 的索引一般從1開始,當(dāng)然也可以從0開始,但是本課程約定從1開始;

例:下面是一個4×2的矩陣,A_32=1437

2、向量:一種特殊的矩陣(n×1矩陣),也稱之為n維向量,包括1索引向量和0索引向量,本課程中主要涉及列向量。

注:慣例,用大寫字母表示矩陣,用小寫字母表示數(shù)字或標(biāo)量或向量。
二、相關(guān)運(yùn)算(矩陣加法、標(biāo)量乘法、矩陣向量乘法、矩陣乘法)
1、矩陣加法:矩陣維數(shù)要相同,將對應(yīng)索引的元素直接相加得到新的矩陣;

2、標(biāo)量跟矩陣相乘:將標(biāo)量與矩陣元素逐個相乘,該乘法符合交換率。除法一樣,因?yàn)槌ㄒ部梢詫懗沙朔ǖ牡箶?shù)。(標(biāo)量:代表一個實(shí)數(shù))

3、矩陣向量乘法:矩陣m×n與向量n相乘,結(jié)果是m×1的矩陣,也就是向量m
計算過程:取矩陣第1行的每一列與向量對應(yīng)的行相乘并將結(jié)果相加,得到結(jié)果向量的第1行,矩陣逐行做此操作得到最終的結(jié)果。

例:

4、矩陣乘法
矩陣m×n只能與n×o的矩陣相乘,也就是說左邊的列要等于右邊的行,結(jié)果是m×o的矩陣,矩陣乘法不符合交換率。
計算過程:先拿右邊矩陣的第一列做為向量跟左邊的矩陣做向量與矩陣乘法,結(jié)果是一列向量,然后再拿右邊第2列與左邊矩陣做乘法......以此類推

例:

矩陣乘法可以用numpy的matmul函數(shù)或dot函數(shù)來計算
三、矩陣乘法的性質(zhì)
1、矩陣乘法不服從交換率,就算是行和列的維度都相同也不行,

例:

2、矩陣乘法服從結(jié)合率:

3、單位矩陣:一般用 I 或者 E 表示,其從左上角到右下角的對角線的值都為1,其余元素值為0。

對于所有的矩陣A都有:

四、逆、轉(zhuǎn)置
1、如果A是一個m×m的矩陣,而且A有其逆矩陣,則:

并不是所有的矩陣都有逆矩陣,沒有逆矩陣的矩陣稱為奇異矩陣或者退化矩陣。
附:七種矩陣的定義
用numpy求逆矩陣:
import numpy as np
a = np.array([[1, 2], [3, 4]]) # 初始化一個非奇異矩陣(數(shù)組)
print(np.linalg.inv(a)) # 對應(yīng)于MATLAB中 inv() 函數(shù)
# 矩陣對象可以通過 .I 更方便的求逆
A = np.matrix(a)
print(A.I)



轉(zhuǎn)置基本性質(zhì):

參考資料:
1、https://blog.csdn.net/xienan_ds_zj/article/details/86738316
2、https://github.com/fengdu78/Coursera-ML-AndrewNg-Notes/blob/master/markdown/week1.md