机器学习笔记 | Linear Algebra Review(复习线性代数)

1、矩阵和向量(Matrices and Vectors)

机器学习笔记 | Linear Algebra Review(复习线性代数)_第1张图片

上面矩阵A是一个4 x 2矩阵,Aij​ ,下标i j分别对应矩阵的第i行和第j列 。

机器学习笔记 | Linear Algebra Review(复习线性代数)_第2张图片

一个有'n'行的向量被称为'n'维向量。

vi表示向量第i行中的元素。

一般情况下,所有的向量和矩阵都是从1-开始索引的。

矩阵一般用大写字母表示,向量一般用小写字母表示。

标量是一个单个值,不是向量或矩阵。

R是实数的集合,Rn(n为上标)是实数的n维向量的集合。

Octave/Matlab中相关矩阵、向量的命令

机器学习笔记 | Linear Algebra Review(复习线性代数)_第3张图片

机器学习笔记 | Linear Algebra Review(复习线性代数)_第4张图片

2、加法和标量乘法(Addition and Scalar Multiplication)

只有相同维度的两个矩阵才能相加、相减。

标量乘法:

标量除法:

3、矩阵向量相乘(Matrix Vector Multiplication)

计算y的过程可以分解为计算 yi 的值 ,让 A 的第 i 行元素 ,分别乘以向量 x 中的元素,并且相加 。

机器学习笔记 | Linear Algebra Review(复习线性代数)_第5张图片

 

机器学习笔记 | Linear Algebra Review(复习线性代数)_第6张图片

矩阵A=(m,n)  矩阵B=(n,h),则A x B=(m,h),这里的m,n,h为矩阵的行数和列数。

4、矩阵乘法(Matrix Matrix Multiplication)

如果A是一个m×n的矩阵(m行n列) 。将要用它与 一个n×o的B矩阵(n行o列)相乘 ,B矩阵的n必须匹配A矩阵的n ,所以第一个矩阵的列的数目,必须等于第二矩阵中的行的数目,并且相乘得到的结果 ,结果会是一个m×o的矩阵,就像下面这个矩阵C。

机器学习笔记 | Linear Algebra Review(复习线性代数)_第7张图片

机器学习笔记 | Linear Algebra Review(复习线性代数)_第8张图片

5、矩阵乘法的属性(Matrix Multiplication Properties)

矩阵乘法是不可交换的,不符号交换律,因为会改变结果维度,即矩阵 A∗B≠B∗A

矩阵乘法符号结合律,即矩阵(A∗B)∗C=A∗(B∗C)

6、逆和转置(Inverse and Transpose)

矩阵A的逆表示为,矩阵A乘以它的逆矩阵为单位矩阵。

一个非方阵没有一个逆矩阵。\没有逆矩阵的矩阵是奇异矩阵的或退化矩阵。

机器学习笔记 | Linear Algebra Review(复习线性代数)_第9张图片

矩阵的转置就是将矩阵顺时针旋转90°,然后将其反转。

机器学习笔记 | Linear Algebra Review(复习线性代数)_第10张图片

 

机器学习笔记 | Linear Algebra Review(复习线性代数)_第11张图片

我们可以用transpose(A)函数或A'在matlab中计算矩阵的转置,用pinv(A)或inv(A)函数在Matlab中计算矩阵的逆变换。

% Initialize matrix A 
A = [1,2,0;0,5,6;7,0,9]

% Transpose A 
A_trans = A' 

% Take the inverse of A 
A_inv = inv(A)

% What is A^(-1)*A? 
A_invA = inv(A)*A


% Take the inverse of A 
A_pinv = pinv(A)

% What is A^(-1)*A? 
A_pinvA = pinv(A)*A

运行结果:

A =

   1   2   0
   0   5   6
   7   0   9

A_trans =

   1   0   7
   2   5   0
   0   6   9

A_inv =

   0.348837  -0.139535   0.093023
   0.325581   0.069767  -0.046512
  -0.271318   0.108527   0.038760

A_invA =

   1.00000  -0.00000   0.00000
   0.00000   1.00000  -0.00000
  -0.00000   0.00000   1.00000

A_pinv =

   0.348837  -0.139535   0.093023
   0.325581   0.069767  -0.046512
  -0.271318   0.108527   0.038760

A_pinvA =

   1.0000e+00   1.1102e-16   1.1102e-16
   1.1102e-16   1.0000e+00   1.6653e-16
   3.3307e-16   2.2204e-16   1.0000e+00

 

你可能感兴趣的:(机器学习,线性代数)