这篇文章主要介绍了python的矩阵乘法运算怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python的矩阵乘法运算怎么使用文章都会有所收获,下面我们一起来看看吧。
一、矩阵乘法
矩阵乘法为 A@B 或 np.dot(A,B) ,若为对应元素相乘则用 A*B 或 np.multiply(A,B) 。
1. A@B 和 np.dot(A,B)
A = np.array([ [1,2], [3,4] ]) B = np.array([ [1,2], [3,4] ]) C1 = A @ B C2 = np.dot(A,B) print(C1) print('---------') print(C2)
输出为
[[ 7 10] [15 22]] --------- [[ 7 10] [15 22]]
2. A*B 或 np.multiply(A,B)
A = np.array([ [1,2], [3,4] ]) B = np.array([ [1,2], [3,4] ]) C3 = A*B C4 = np.multiply(A,B) print(C3) print('---------') print(C4)
输出为
[[ 1 4] [ 9 16]] --------- [[ 1 4] [ 9 16]]
二、邻接矩阵的相乘的意义
1.定义
假设存在一个N个节点的无向图。我们用 G[u][v] = G[v][u] = 1 表示从点 u 到点 v 有连边,否则 G[u][v] = G[v][u] = 0。
2.问题
如果用这个图的邻接矩阵进行自乘会得到什么呢?
3.理解
4.代码实现
邻接矩阵如下
代码如下
import torch # 构建邻接矩阵 a = [ [0,1,1,1], [1,0,0,1], [1,0,0,1], [1,1,1,0] ] A = torch.tensor(a) A = torch.mm(A,A) print(A)
输出结果如下
tensor([[3, 1, 1, 2], [1, 2, 2, 1], [1, 2, 2, 1], [2, 1, 1, 3]])