简易了解Pytorch中的@ 和 * 运算符

1.基础知识

在pytorch中,@和*运算符用于不通类型的数数学运算,具体是矩阵乘法和逐元素乘法。

基本知识

 
运算符功能适用场景示例
@ 矩阵乘法(或点乘) 用于执行线性代数中的矩阵乘法 C = A @ B,其中 A 和 B 为矩阵
* 逐元素乘法 用于对同一形状的张量进行逐元素相乘 C = A * B,其中 A 和 B 为同形状张量

两者的差异总结如下:

 
特点矩阵乘法 (@)逐元素乘法 (*)
运算类型 矩阵乘法(线性代数) 逐元素运算
适用条件 列数等于行数 形状相同
返回结果形状 (m, p) 与输入张量相同
使用示例 C = A @ B C = A * B
适用场景 线性变换、深度学习中的权重计算 图像处理、逐元素操作等
  • 使用 @ 运算符进行矩阵乘法适合线性代数操作,常用于深度学习中的层与权重的运算
  • 使用 * 运算符进行逐元素乘法适合需要对张量进行元素级操作的场景,如数据处理和图像增强等

2. @
@ 运算符用于执行矩阵乘法或向量点乘
对于两个矩阵 A 和 B,其结果 C 是一个新矩阵,其中 C[i][j] 是 A 的第 i 行与 B 的第 j 列的点积

适用条件: A 的列数必须等于 B 的行数,即 A 的形状为 (m, n),B 的形状为 (n, p),则结果 C 的形状为 (m, p)

3. *
*运算符用于对两个相同形状的张量进行逐元素相乘
结果张量的每个元素是操作数张量中对应元素的乘积

适用条件: A 和 B 必须具有相同的形状(或能够通过广播规则兼容)

 

————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_47872288/article/details/143212224

posted @   有何m不可  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示