PyTorch中的常见乘法运算(*、@、Mul、Matmul)

哈达玛积:torch.mul()、torch.dot()、*

两个相同尺寸的张量相乘,然后对应元素的相乘就是哈达玛积,这种乘法要求参与运算的矩阵唯独相同,运算结果还是一个相同维度的矩阵。在这个运算中,torch.mul()和*以及torch.dot()的作用是等价的:

python 复制代码
a = torch.tensor([1,2])
b = torch.tensor([2,3])
print(a*b)
print(torch.mul(a,b))
>>> tensor([2, 6])
>>> tensor([2, 6])

这与除法的运算规则相同,torch中的torch.div()其实就是/, 类似的:torch.add就是+,torch.sub()就是-,不过符号的运算更简单常用:

python 复制代码
a = torch.tensor([1.,2.])
b = torch.tensor([2.,3.])
print(a/b)
print(torch.div(a/b))
>>> tensor([0.5000, 0.6667])
>>> tensor([0.5000, 0.6667])

矩阵乘法:torch.mm()、torch.matmul()、@

如果参与运算的是一个多维张量,那么最好torch.matmul(),由于广播机制的原因,在多维张量中,参与矩阵运算的其实只有后两个维度,前面的维度则被认为是batch:

python 复制代码
a = torch.tensor([1.,2.])
b = torch.tensor([2.,3.]).view(1,2)
print(torch.mm(a, b))
print(torch.matmul(a, b))
print(a @ b)

tensor([[2., 3.],
        [4., 6.]])
tensor([[2., 3.],
        [4., 6.]])
tensor([[2., 3.],
        [4., 6.]])
相关推荐
亿林-智企AI5 分钟前
AI数字人技术浪潮:亿林数据引领人机交互新范式
人工智能·人机交互·智能客服·ai数字人·ai智能体·算力一体机
TechMasterPlus5 分钟前
openhands论文解读
人工智能
YangYang9YangYan23 分钟前
2026年中专计算机专业证书报考指南:高性价比认证与职业路径规划
大数据·人工智能·学习·计算机视觉
DMD16829 分钟前
从仓库到门店:AI如何重构零售供应链的“最后一公里”
人工智能·科技·重构·零售·数字化转型·产业升级·ai技术开发
秃头小饼干30 分钟前
虚拟机性能优化实战技术文章大纲
人工智能·云计算
番茄迷人蛋32 分钟前
欢迎使用AI美食大师项目
人工智能·ai
InfiSight智睿视界33 分钟前
即时零售仓网管理的AI 智能化演进
大数据·人工智能·零售
汽车仪器仪表相关领域37 分钟前
MTX-AL:传统指针美学与现代数字科技的完美融合 - 模拟宽带空燃比计
大数据·人工智能·科技·单元测试·汽车·压力测试·可用性测试
WHFENGHE43 分钟前
金具线夹测温在线监测装置:电力设备安全运行的核心技术支撑
大数据·人工智能·安全
Coding茶水间1 小时前
基于深度学习的35种鸟类检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·计算机视觉