关于python的矩阵乘法运算
短信预约 -IT技能 免费直播动态提醒
一、矩阵乘法
矩阵乘法为 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]])
到此这篇关于关于python的矩阵乘法运算的文章就介绍到这了,更多相关python矩阵乘法运算内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341