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

相关推荐
星火开发设计几秒前
Python数列表完全指南:从基础到实战
开发语言·python·学习·list·编程·知识·期末考试
悦数图数据库3 分钟前
“复旦大学—杭州悦数先进金融图技术校企联合研究中心年度总结会”圆满举行
大数据·数据库·人工智能
星浩AI6 分钟前
LCEL:打造可观测、可扩展、可部署的 LangChain 应用
人工智能·后端·python
agicall.com6 分钟前
信创电话助手自动录音功能说明
人工智能·语音识别·自动录音·座机录音·固话录音
初次攀爬者8 分钟前
RAG核心升级|多LLM模型动态切换方案
人工智能·后端·ai编程
这儿有一堆花10 分钟前
Python 虚拟环境的配置与管理指南
开发语言·python
bst@微胖子10 分钟前
HuggingFace项目实战之分类任务实战
pytorch·深度学习·分类
yunni811 分钟前
知识库 × AI写作:打通公文写作的“最后一公里”
大数据·人工智能
Baihai_IDP14 分钟前
Andrej Karpathy:2025 年 LLM 领域的六项范式转变
人工智能·面试·llm
踩着两条虫14 分钟前
VTJ.PRO「AI + 低代码」应用开发平台的后端模块系统
前端·人工智能·低代码