torch.bmm功能解读

bmmbatched matrix multiple 的简写,即批量矩阵乘法,矩阵是二维的,加上batch一个维度,因此该函数的输入必须是两个三维的 tensor,三个维度代表的含义分别是:(批量,行,列)。

对于 torch.bmm(tensor_a, tensor_b) 而言,

tensor_ashape为 (a, b, c)

tensor_bshape为 (d, e, f)

要求 a = d, c = e,即批量数相同,在计算时tensor_a 的第 i 个矩阵与 tensor_b 的第 i 个矩阵作乘法,i = 1, 2, 3, ..., a。因此为了矩阵乘法能够进行,c 和 e 必须相同。计算过程如图1所示。
图1. bmm计算过程

测试代码如下:

python 复制代码
import torch

BatchMatrix1 = torch.randn((3,4,3))
BatchMatrix2 = torch.randn((3,3,4))

BatchMatrixMultiple = torch.bmm(BatchMatrix1, BatchMatrix2)

print(BatchMatrixMultiple.shape)

输出为,与图1中绿色矩阵对应。

相关推荐
JoannaJuanCV几秒前
自动驾驶—CARLA仿真(29)传感器(Sensors and data)
人工智能·机器学习·自动驾驶
URBBRGROUN4674 分钟前
Spring AI @ToolParam 扩展注解改造实践
大数据·人工智能·spring
De-Alf7 分钟前
Megatron-LM学习笔记(6)Megatron Model Attention注意力与MLA
笔记·学习·算法·ai
2401_8414956415 分钟前
【LeetCode刷题】打家劫舍
数据结构·python·算法·leetcode·动态规划·数组·传统dp数组
中科天工24 分钟前
智能仓储解决方案到底是什么?
大数据·人工智能·智能
Ydwlcloud25 分钟前
AWS国际云服务器新用户优惠全解析:如何聪明地迈出上云第一步?
服务器·人工智能·云计算·aws
天天进步201528 分钟前
【InfiniteTalk 源码分析 04】训练策略拆解:如何实现超长视频的生成稳定性?
人工智能·深度学习
imbackneverdie29 分钟前
更经济实惠的润色方法,告别“中式英文”!
人工智能·考研·ai·自然语言处理·ai写作·研究生·ai工具
冰西瓜60033 分钟前
STL——vector
数据结构·c++·算法
天呐草莓35 分钟前
集成学习 (ensemble learning)
人工智能·python·深度学习·算法·机器学习·数据挖掘·集成学习