Loading

「吴恩达机器学习」3.线性代数回顾

Martrices and Vectors

主要介绍矩阵和向量的概念。

Martrices

矩阵:矩形的数字阵列,通常用大写字母表示。

Matrix: Rectangular array of numbers.

矩阵的维数:行数 \(\times\) 列数

Dimension of matrix: number of rows x number of columns.

如图,一个维数为\(4 \times 2\)的矩阵:

矩阵元素\(A_{ij}\)表示矩阵中第\(i\)行第\(j\)列的元素,比如\(A_{41}=147\)

Vectors

向量是一种特殊的矩阵,是\(n\)行1列的矩阵(列向量),通常用小写字母表示。

向量元素\(y_i\)表示向量中的第\(i\)个元素。

如图所示,\(y\)是一个4维向量,也是一个\(4 \times 1\)矩阵。

向量有1索引向量和0索引向量两种形式,区别在于元素是从1开始计算还是从0开始计算。通常在数学中采用1索引向量,而在机器学习中采用0索引向量进行表示。

Addition and Scalar Multiplication

主要介绍矩阵加法运算,以及标量乘以矩阵的运算。

Matrix Addition

矩阵加法只需要将两个矩阵的对应元素相加即可,也就是说矩阵加法只能用于计算相同维度的矩阵,计算结果也是一个相同维度的矩阵。

比如,

\[\begin{bmatrix} 1 & 0 \\ 2 & 5 \\ 3 & 1 \end{bmatrix} + \begin{bmatrix} 4 & 0.5 \\ 2 & 5 \\ 0 & 1 \end{bmatrix} = \begin{bmatrix} 5 & 0.5 \\ 4 & 10 \\ 3 & 2 \end{bmatrix} \]

Scalar Multiplication

标量乘以矩阵只需要将标量乘上矩阵的所有元素即可。

比如,

\[3 \times \begin{bmatrix} 1 & 0 \\ 2 & 5 \\ 3 & 1 \end{bmatrix} = \begin{bmatrix} 3 & 0 \\ 6 & 15 \\ 9 & 3 \end{bmatrix} \]

Matrix-vector Multiplication

主要介绍矩阵-向量乘法,也就是如何计算矩阵乘以向量。

从一个例子介绍矩阵向量乘法:

计算方法总结如下:

采用\(A\)矩阵的第\(i\)行元素,乘上\(x\)向量,然后求和得到\(y_i\),以此计算所有\(y_i\),得到最终的向量\(y\)

一个\(m \times n\)的矩阵乘上\(n \times 1\)的向量,最终会得到一个\(m \times 1\)的向量。

矩阵运算可以应用在我们之前的房价预测例子中,我们目前有4个房间尺寸,同时也有假设函数,假如我们想要计算每个房间对应的预测房价。

可以把房价用矩阵表示为:

\[\begin{bmatrix} 1 & 2104 \\ 1 & 1416 \\ 1 & 1534 \\ 1 & 852 \end{bmatrix} \]

把假设函数用向量表示为:

\[\begin{bmatrix} -40 \\ 0.25 \end{bmatrix} \]

那么每个房间对应的房价预测值就是:

\[\begin{bmatrix} 1 & 2104 \\ 1 & 1416 \\ 1 & 1534 \\ 1 & 852 \end{bmatrix} \times \begin{bmatrix} -40 \\ 0.25 \end{bmatrix} \]

\(Prediction=DataMatrix * Parameters\)

这是一个编程上的技巧,如果不采用矩阵的方式,那么就需要写一个循环,不仅代码代码量更大,同时运算效率更低。

Matrix-matrix multiplication

主要介绍矩阵-矩阵乘法,也就是如何计算矩阵乘以矩阵。

依然先通过一个例子介绍:

先把第二个矩阵分裂成两个向量,然后分别计算第一个矩阵和向量的乘积,最后把两个乘积结果合并到一起,就实现了矩阵-矩阵乘法。

计算步骤总结如下:

矩阵\(A\)乘以矩阵\(B\)的第\(i\)列(向量)作为矩阵\(C\)的第\(i\)列值,以此类推即可求出矩阵\(C\)

再次回到房价预测的例子中,这次我们有3个假设函数:

我们可以把整个计算过程转化成下面的矩阵乘积:

Matrix Multiplication Properties

主要讲解矩阵乘法的性质。

矩阵乘法不满足交换律

矩阵乘法满足结合律

Identity Matrix

在实数计算中,对于任何实数\(z\)\(1 \times z = z \times 1 = z\),1称为identity。

对于任何的矩阵\(A\)\(A_{m \times n} \cdot I_{n \times n} = I_{m \times m} \cdot A_{m \times n}= A_{m \times n}\)\(I\)称为单位矩阵(identity matrix)。

\(I\)是对角线元素都为1,其他元素都为0的方阵。

注意这里的\(I\)维数不一样。

Inverse and Transpose

本节课主要讲解矩阵求逆和矩阵转置。

Matrix Inverse

在普通的数值运算中,\(z z^{-1} =1\)\(z^{-1}\)就称为\(z\)的inverse。

Not all numbers have an inverse. E.g. 0.

Matrices that don’t have an inverse are “singular” or “degenerate”.

Matrix Transpose

把矩阵\(A\)的第\(i\)行元素变成矩阵\(A^T\)的第\(i\)列元素,也可以沿着矩阵$A\(45度直线,作镜像翻转,也能得到矩阵\)A^T$。

矩阵转置的基本性质:

\[(A \pm B)^T = A^T \pm B^T \\ (A \times B)^T = B^T \times A^T \\ (A^T)^T = A \]

posted @ 2021-12-28 12:11  活用数据  阅读(317)  评论(0编辑  收藏  举报