当前位置: 首页 > news >正文

深度学习|pytorch基本运算-hadamard积、点积和矩阵乘法

【1】引言

pytorch对张量的基本运算和线性代数课堂的教学有一些区别,至少存在hadamard积、点积和矩阵乘法三种截然不同的计算方法。

【2】hadamard积

hadamard积是元素对位相乘,用“*”连接张量,代码:

# 导入包
import torch
# 生成多维张量
y=torch.tensor([[1,2,3],[1,2,3],[1,2,3]])
z=torch.tensor([[1,2,3],[3,2,1],[0,2,6]])
# hadamard积运算
a=y*z
# 打印
print(a)

代码运行后,按照对位相乘的效果输出:

图1 hadamard积运算 

【3】点积

点积是元素对位相乘后再求和,用“torch.sum(*)”连接张量,代码:

# 导入包
import torch
# 生成多维张量
y=torch.tensor([[1,2,3],[1,2,3],[1,2,3]])
z=torch.tensor([[11,2,3],[3,12,1],[10,2,16]])
# hadamard积运算
a=y*z
# 打印
print(a)
# 点积运算
b=torch.sum(y*z)
# 打印
print(b)

代码运行后,按照先对位相乘、再求和的效果输出:

 图2 点积运算 

【4】矩阵乘法

矩阵乘法是第一个矩阵的第i行与第二个矩阵第j列相乘的效果,用“torch.mm()”连接矩阵,就是大家所熟悉的线性代数中得矩阵乘法,代码:

# 导入包
import torch
# 生成多维张量
y=torch.tensor([[11,2,3],[1,12,30],[10,12,3]])
z=torch.tensor([[11,12,3],[3,12,10],[10,2,16]])
# hadamard积运算
a=y*z
# 打印
print(a)
# 点积运算
b=torch.sum(y*z)
# 打印
print(b)
# 矩阵乘法
c=torch.mm(y,z)
# 打印
print(c)

代码运行后,按照第一个矩阵的第i行与第二个矩阵第j列相乘的效果输出:

 图3 矩阵乘法运算  

【5】总结

本次学习了pytorch基本运算,包括hadamard积、点积和矩阵乘法:

  • hadamard积是元素对位相乘,用“*”连接张量
  • 点积是元素对位相乘后再求和,用“torch.sum(*)”连接张量
  • 矩阵乘法是第一个矩阵的第i行与第二个矩阵第j列相乘的效果,用“torch.mm()”连接矩阵,就是大家所熟悉的线性代数中得矩阵乘法。
http://www.xdnf.cn/news/764389.html

相关文章:

  • 如何学习才能更好地理解人工智能工程技术专业和其他信息技术专业的关联性?
  • Python-matplotlib库画不规则图
  • 机器视觉图像处理之图像滤波
  • LeetCode 高频 SQL 50 题(基础版) 之 【高级查询和连接】· 上
  • 深度学习与神经网络 前馈神经网络
  • 【LeetCode】数组刷题汇总记录
  • 二、Kubernetes 环境搭建
  • vue中父子参数传递双向的方式不同
  • Git GitHub Gitee
  • Windows环境下Scoop包管理工具的全面指南
  • [yolov11改进系列]基于yolov11引入特征融合注意网络FFA-Net的python源码+训练源码
  • 自定义序列生成器之单体架构实现
  • I2C Host Adapter (1)
  • 移除3D对象的某些部分点云
  • 使用TDEngine REST API + Python来计算电力指标的ETL真实案例
  • 前端框架Vue
  • CTF:网络安全的实战演练场
  • 系统级 EOS 测试方法 - System Level EOS Testing Method
  • Ⅱ.计算机二级选择题(运算符与表达式)
  • C++之动态数组vector
  • 【软件测试】测试框架(unittest/pytest)
  • 【Elasticsearch】ILM(Index Lifecycle Management)策略详解
  • 【Java Web】速通Tomcat
  • Origin将杂乱的分组散点图升级为美观的带颜色映射的气泡图
  • Java垃圾回收机制详解:从原理到实践
  • 数字规则:进制转换与原码、反码、补码
  • 第九天:java注解
  • Cesium快速入门到精通系列教程三:添加物体与3D建筑物
  • Flickr30k Entities短语定位评测指南
  • 进阶日记(一)大模型的本地部署与运行