NumPy函数库基础

Python Training
python
numpy
Author
Published

Tuesday, January 7, 2020

机器学习算法涉及很多线性代数知识,我们会经常使用 NumPy 函数库,用线性代数简化不同的数据点上执行的相同数学运算。将数据表示为矩阵形式,只需要执行简单的矩阵运算而不需要复杂的循环操作。

在Python shell开发环境中输入下面命令:from numpy import *,将 NumPy 函数库中的所有模块引入到当前的命名空间,输入以下命令:

NumPy

上述命令构造了一个 4*4 的随机数组(随机数组在不同计算机上输出可能不同)。

在 NumPy 函数库中存在两种不同的数据类型(矩阵 matrix 和数组 array),二者都可以用于处理行列表示的数字元素。虽然看起来很相似,但在这两个数据类型上执行相同的数学运算可能得到不同的结果,其中的矩阵 matrix 与 MATLAB 中 matrices 等价。

调用 mat() 函数可将数组转换为矩阵:

mat

如何进行矩阵求逆呢?不记得或者没学过矩阵求逆也没关系,NumPy 库 .I 操作符可以很方便地算出矩阵的逆运算:

逆矩阵

接着执行矩阵乘法,得到矩阵与其逆矩阵相乘的结果:

矩阵乘法

结果应该是单位矩阵,除了对角线元素是 1,4*4 矩阵的其他元素应该全是 0。上面实际输出略有不同,矩阵里还留下了很多数值非常小的元素,这是计算机处理误差产生的结果,我们来看一下误差值:

误差

函数 eye(4) 创建 4*4 的单位矩阵。

只要能够顺利完成上面的例子,你就已经正确地安装并初步使用了 NumPy 函数库。后面我们会对它有更深的了解。