Pytorch中乘法函数torch.matmul() 的一种用法

主要记录下torch.matmul(A,B)的用法中的一种情况:

当A,B有一个是3维以上,另一个是3维或3维以上时,如果想要使用torch.matmul(A,B),必须同时满足:

1.A和B的最后两个维度满足矩阵乘法的要求。例如A的维度是(3,1,3,3),B是(3,3,2),此时A的最后2维是(3,3),B是(3,2),符合条件

2.除去最后两个维度,A和B的其他维度要满足可以广播的条件。例如A的维度是(3,1,3,3),B是(3,3,2),除去最后两个维度,A剩下了(3,1),B是(3,),很明显此时满足广播条件

广播机制参考:Pytorch中的广播机制(Broadcast)_pytorch广播机制-CSDN博客

满足上述要求后,继续看如何执行 torch.matmul(A,B):

还是对于A的维度是(3,1,3,3),B是(3,3,2)的这个例子,假设相乘后的结果为C,那么C的维度可以按下面步骤求出:

1.A和B的最后两个维度执行矩阵乘法,得到的维度就是C的最后两个维度,也就是(3,2)

2.除去A和B的最后两个维度,其他维度进行广播后得到的维度是(3,3),这就是C的前几个维度

3.将上述维度合起来就是C的维度:(3,3,3,2)

关于torch.matmul(A,B)的更多用法参考:

Pytorch中张量矩阵乘法函数(mm, bmm, matmul)使用说明,含高维张量实例及运行结果_torch.mm-CSDN博客

https://www.cnblogs.com/HOMEofLowell/p/15963140.html

https://zhuanlan.zhihu.com/p/638404226

相关推荐
架构源启几秒前
2026 进阶篇:Spring Boot响应式编程 + Spring AI 1.1.4 流式实战 + Vue前端完整实现(避坑指南)
java·前端·vue.js·人工智能·spring boot·spring·ai编程
MacroZheng1 分钟前
面试官:“你连Claude Code都没用过吗?”,我怼回去:“就没用过又怎么了?”
人工智能·后端·claude
IDZSY04302 分钟前
【技术视角】从0到1拆解机乎AI:AI社交平台的技术架构与产品设计
人工智能
skywalk81632 分钟前
CodeArts碰到问题:CodeArts 智能体使用失败,显示:会话创建失败,请稍后重试
开发语言·python
Metaphor6922 分钟前
使用 Python 查找并替换 Word 文档中的文本
python·c#·word
视觉&物联智能3 分钟前
【杂谈】-人工智能于现代网络安全运营的价值持续攀升
人工智能·安全·web安全·ai·chatgpt·agi·deepseek
昨夜见军贴06163 分钟前
采购订单校验报告审核效率革命,IACheck与AI报告审核全力赋能无误处理
人工智能
思考着亮6 分钟前
8.Python 异常 (Exception)
python
数据牧羊人的成长笔记6 分钟前
认识深度学习_PyTorch入门+神经网络基础+卷积神经网络+迁移学习+生成对抗网络_GAN+CNN目标检测+循环神经网络与NLP
pytorch·深度学习·神经网络
是大强7 分钟前
下载的jar怎么放到本地仓库
python·pycharm·jar