机器学习|吴恩达机器学习笔记---线性代数复习

前言

1.矩阵和向量(Matrices and Vectors ) 2.矩阵的加、减、乘、逆和转置

线性代数回顾(Linear Algebra Review) 这一节主要是回顾矩阵和向量的有关知识,比较简单,先罗列一下知识点,再通过代码回顾一下。
  • 矩阵的维数用行数×列数(m×n)来表示
  • 一般用大写字母A,B,C等表示矩阵,用下标指引矩阵中的元素,例如Aij表示是第i行第j列的元素(一般从1开始计数,有时从0开始计数)
  • 向量是一种特殊的矩阵,即只有一行或者一列的矩阵,称为行向量和列向量
  • 矩阵的加法:行列数相等的可以加
  • 矩阵和标量的乘法:每个元素都要乘
  • 矩阵和向量的乘法: m × n m×n m×n的矩阵乘以 n × 1 n×1 n×1的向量,得到的是 m × 1 m×1 m×1的向量
  • m × n m×n m×n矩阵乘以 n × o n×o n×o矩阵,变成 m × o m×o m×o矩阵
  • 矩阵的乘法不满足交换律: A × B ≠ B × A A×B≠B×A A×B?=B×A,但满足结合律。即: A × ( B × C ) = ( A × B ) × C A×(B×C)=(A×B)×C A×(B×C)=(A×B)×C
  • 单位矩阵:是个方阵,一般用I I I 或者E E E 表示,特点是从左上角到右下角的对角线(称为主对角线)上的元素均为1以外全都为0。性质是: A A ? 1 = A ? 1 A = I A{{A}^{-1}}={{A}^{-1}}A=I AA?1=A?1A=I,有 A I = I A = A AI=IA=A AI=IA=A
  • 矩阵的逆:如矩阵 A A A是一个 m × m m×m m×m矩阵(方阵),如果有逆矩阵,则: A A ? 1 = A ? 1 A = I A{{A}^{-1}}={{A}^{-1}}A=I AA?1=A?1A=I
  • 矩阵的转置:设 A A A为 m × n m×n m×n阶矩阵(即 m m m行 n n n列),第 i i i行 j j j列的元素是 a ( i , j ) a(i,j) a(i,j),即: A A A= a ( i , j ) a(i,j) a(i,j)。转置为这样一个 n × m n×m n×m阶矩阵 B B B,满足 B = a ( j , i ) B=a(j,i) B=a(j,i),即b ( i , j ) = a ( j , i ) b (i,j)=a(j,i) b(i,j)=a(j,i)( B B B的第 i i i行第 j j j列元素是 A A A的第 j j j行第 i i i列元素),记 A T = B {{A}^{T}}=B AT=B
import numpy as np a = np.mat([[1, 2, 3], [4, 4, 6], [7, 7, 9]])#定义3*3的矩阵 b = np.mat([[1], [1], [1]])#定义3维的向量 c = np.mat([[1, 0, 0], [0, 1, 0], [0, 0, 1]])#定义3*3的单位矩阵d = a.T#求矩阵a的转置 e = a.I#求矩阵a的逆print(a+c) print(a*c) print(a*b) print(3*c) print(d) print(e)

【机器学习|吴恩达机器学习笔记---线性代数复习】运行结果如下:
[[ 223] [ 456] [ 77 10]] [[1 2 3] [4 4 6] [7 7 9]] [[ 6] [14] [23]] [[3 0 0] [0 3 0] [0 0 3]] [[1 4 7] [2 4 7] [3 6 9]] [[-1.0.50.] [ 1.-2.1.] [ 0.1.16666667 -0.66666667]]

    推荐阅读