人工智能必备数学知识-矩阵运算

648 阅读2分钟

矩阵运算-神经网络的底层肌理

什么是矩阵

英文:matrix

举个例子

[
[1,2,3],
[1,1,0],
[0,1,1]
]

索引

[
[a11,a12,a13],
[a21,a22,a23],
[a31,a32,a33]
]

矩阵的应用

图片

矩阵计算与人工智能

仿神经元运算,每个不同的神经元有个权重

矩阵运算案例-房价预测

同型矩阵

定义

行数、列数分别相同的矩阵

性质

互为同型矩阵才能进行加法运算

基本运算

加法

交换律,结合律✅

[            [            [[1,2,3],     [9,8,7],     [10,10,10],
[4,5,6],  +  [6,5,4],  =  [10,10,10],
[7,8,9]      [3,2,1]      [10,10,10],
]            ]            ]

乘法

矩阵与数相乘相除

交换律、结合律、分配律✅

[                 [
[1,2,3],          [5,10,15],
[4,5,6],  x  5  = [20,25,30],
[7,8,9]           [35,40,45],
]                 ]
矩阵的相乘

第一个矩阵的列数,必须啊等于第二个矩阵的行数

交换律❎

结合律、分配律✅

行列元素相乘并求和

[            [            [[1,2,3],     [9,8,7],     [30,24,18],
[4,5,6],  x  [6,5,4],  =  [84,69,54],
[7,8,9]      [3,2,1]      [138,114,90]
]            ]            ]
矩阵的转置
转置的算法

aji -> aij

A               AT
[               [[1,2,3],        [1,4,7],
[4,5,6],        [2,5,8],
[7,8,9]         [3,6,9]  
]            	]
转置的算律

(A+B)T = AT + bT

(AxB)T = BT x AT

(AT)T = A

(kA)T = k(AT)

向量

定义

只有一行的矩阵或者只有一列的矩阵

向量的基本运算

遵循矩阵的计算法则

矩阵与向量相乘,结果仍为向量

实战

import numpy as np

A = np.array([[5, 2], [4, 3], [1, 1]])
B = np.array([[2, 7], [9, 3], [1, 5]])

AT = A.T

print(np.dot(AT,B))

BT = B.T

print(np.dot(BT,A))


def computed(quantity,price):
		return array.dot(q,p.T)
	
    
q = np.array([100, 120, 800], [200, 150, 1000])
p = np.array([5,50,1])

print (computed(q,p))#--->[7300 9500]