关键词:线性代数 / 矩阵 / 基本定义
作者:郭俊麟 | 清华伯克利 数据科学
人工智能作为近10年最火的学科之一,背后却有着三大基础学科支持着他的发展,分别是线性代数,微积分,还有概率论,对于各式各样的经典算法,无一例外的都用到了矩阵来承载来自不同维度的数据,而许多人的一大烦恼就是知道原理却无从下手代码的实践,显然一大原因是对实现算法的编程语言或者函数库不够熟悉,以下小编将从 Python 编程语言的角度来从头回顾线性代数的基本专有名词,揭开人工智能算法的最原始面纱。
矩阵基本定义
本节主要介绍不同矩阵名称背后的定义,并直接使用代码来计算我们希望看到的结果。
在 python 代码中的numpy模块几乎可以说是数值计算的唯一选择。
import numpy as np
A = np.random.randint(0, 10, 72)
A = A.reshape(9, 8)
print(A)
输出:
[[5 4 5 8 5 7 0 7]
[5 6 4 0 9 8 6 5]
[1 2 9 6 7 7 3 5]
[3 4 7 8 4 6 9 2]
[4 8 1 3 5 4 8 4]
[5 1 5 7 3 9 9 8]
[0 8 4 1 6 9 3 2]
[4 3 0 3 6 4 5 9]
[2 8 6 3 5 5 3 4]]
主要的原因就在于不止提供调用的函数丰富之外,矩阵对应不同变量名的内存管理还被极大的优化,简而言之