matmul/mm 函数用法介绍

介绍torch.matmul之前先介绍torch.mm函数, mm和matmul都是torch中矩阵乘法函数,mm只能作用于二维矩阵,matmul可以作用于二维也能作用于高维矩阵

mm函数使用

x = torch.rand(4, 9)
y = torch.rand(9, 8)
print(torch.mm(x,y).shape)

torch.Size([4, 8])

matmul函数使用

  • 1 二维乘二维,结果和mm函数一样
x = torch.rand(4,9)
y = torch.rand(9,8)

print(torch.matmul(x,y).shape)
torch.Size([4, 8])
  • 2 高维乘法 3 维 乘 2 维
    将x的第0维提出来,剩下的就是二维矩阵乘法得到 9,4,8
x = torch.rand(9,4,9)
y = torch.rand(9,8)
 
print(torch.matmul(x,y).shape)

torch.Size([9, 4, 8])
  • 3 高维矩阵乘法 3维 乘 3维
    两种情况
    1)x和y的0维一样直接提出来,剩下的是二维矩阵乘法结果是 9,5,6
    2)x和y的第0维不一样,如果是有一个第0维是1则可以直接扩展成跟另一个矩阵的维度一样,然后直接提出来,剩下的二维矩阵乘法,下方x的矩阵第0维是1,y的是9,直接把x矩阵第0维扩展成9,即可跟下方第一个操作相同
x = torch.rand(9, 5, 8)
y = torch.rand(9, 8, 6)
print(torch.matmul(x,y).shape)

torch.Size([9,5,6])

x = torch.rand(1, 5, 8)
y = torch.rand(9, 8, 6)
print(torch.matmul(x,y).shape)

torch.Size([9,5,6])
torch.Size([9,5,6])
    1. 高维矩阵乘法 4维 乘 3 维
      根据上方总结的规则,下方同样做法,多余的一维或几维,直接提出来,剩下的同维度矩阵直接计算,如果是1就扩展成与之相对另一个矩阵的相同的数,如果不同也不为1,就直接报错
x = torch.rand(6, 9, 5, 8)
y = torch.rand(9, 8, 6)
print(torch.matmul(x,y).shape)
torch.Size([6,9,5,6])

x = torch.rand(6, 1, 5, 8)
y = torch.rand(9, 8, 6)
print(torch.matmul(x,y).shape)
torch.Size([6,9,5,6])

x = torch.rand(6, 9, 1, 5, 8)
y = torch.rand(9, 8, 6)
print(torch.matmul(x,y).shape)
torch.Size([6,9,9,5,6])

x = torch.rand(6, 9,8,9, 1, 5, 8)
y = torch.rand(9, 8, 6)
print(torch.matmul(x,y).shape)
torch.Size([6,9,8,9,9,5,6])

  

 

参考资料

torch.mm()&torch.matmul()
torch.matmul()用法介绍
pytorch官方文档
torch中点积,叉积和卷积

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/21041.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

OpenAI-whisper语音识别模型

1、whisper简介 Whisper是一个通用的语音识别模型。它是在不同音频的大型数据集上训练的,也是一个多任务模型,可以执行多语言语音识别、语音翻译和语言识别。 whisper有五种模型尺寸,提供速度和准确性的平衡,其中English-only模型…

软考初级程序员上午五单选(9)

1、在Windows中,用鼠标左键单击某应用程序窗口的最小化按钮后,该应用程序处于______的状态。 A.被强制关闭 B.不确定 C.被暂时挂起 D.在后台继续运行 2、将某ASCII字符采用偶校验编码(7位字符编码1位校验码…

毕业论文之转化为三线表格(wps)

目录 一、前言 1.修改之前的表格 2. 修改完成后(三线表格式) 二、操作步骤 一、前言 在论文里面的表格要求是三线表格式的时候,就需要我们去把这个表格修改成三线表格式。 1.修改之前的表格 2. 修改完成后(三线表格式&…

Linux:centos:组账户管理 》》添加组,用户加入组(设置组密码),删除组,查询账户信息,查询登录用户信息

/etc/group # 组信息文件 /etc/gshadow # 组密码文件(不常用) groupadd (属性) 组名 # 新建组 groupdel (属性) 组名 # 删除组 gpasswd # 可以…

Gigabayte-Z87-DS3H i3 4130电脑 Hackintosh 黑苹果efi引导文件

原文来源于黑果魏叔官网,转载需注明出处。(下载请直接百度黑果魏叔) 硬件型号驱动情况 主板Gigabayte-Z87-DS3H 处理器英特尔酷睿i3 4130 Haswell已驱动 内存4x4GB DDR3/1600Mhz金士顿已驱动 硬盘SSD 480GB PNY CS900已驱动 显卡英特尔高…

【UE4】从零开始制作战斗机(上:准备模型、定义函数和变量)

资源连接:(链接) 步骤: 1. 下载完资源并解压,资源内容如下: 2. 将上图中所有的.fbx文件导入ue 使用默认的导入设置就行,直接点击导入所有 导入后内容如下: 将资源中的textures也导…

加速度传感器的量程估算

在测震动和噪声的场合,现有的加速度传感器,需要客户提供加速度值的大致区间。这个值该怎么计算呢?它几乎完全与被测信号的频率有关。因为所有的信号,按照频域展开的视角,都会简化为一个个正弦波。对于正弦波有这样的属…

Net跨平台UI框架Avalonia入门-资源和样式

Net跨平台UI框架Avalonia入门-资源和样式编写和使用 资源和样式编写和使用样式(Styles)和资源(Resources)样式(Styles)样式定义定义的位置:定义内容: 样式文件的定义和引用 资源(Res…

浅谈PMO对组织战略的支持︱美团骑行事业部项目管理中心负责人边国华

美团骑行事业部项目管理中心负责人边国华先生受邀为由PMO评论主办的2023第十二届中国PMO大会演讲嘉宾,演讲议题:浅谈PMO对组织战略的支持。大会将于6月17-18日在北京举办,更多内容请浏览会议日程 议题内容简要: 战略是组织运行的…

【C++】C++中的多态

目录 一.多态的概念二.多态的定义及实现2.1虚函数2.2虚函数的重写虚函数重写的两个例外 2.3多态的构成条件2.4C11 override 和final2.5重载、重写、隐藏的对比 三.抽象类3.1概念3.2接口继承和实现继承 四.多态的原理4.1虚函数表4.2多态的原理(1)代码分析(2)清理解决方案 4.3动态…

AVUE样式、刷新、字典、清空搜索条件等操作

1、操作栏、表格样式的控制 2、下拉框字典的设置 3、日期格式的设置 const dateFormat function(row, value) { if (!value) return ; let format YYYY-mm-dd; let date new Date(value); const dataItem { Y: date.getFullYear().toString(), m: (date.ge…

LabVIEWCompactRIO 开发指南23 Web服务

LabVIEWCompactRIO 开发指南23 Web服务 LabVIEW8.6中引入的LabVIEWWeb服务提供了一种开放的标准方式,可通过Web与VI进行通信。考虑一个部署在分布式系统中的LabVIEW应用程序。LabVIEW提供了网络流等功能来建立通信,但许多开发人员需要一种方式&#xf…

实验10 超市订单管理系统综合实验

实验10 超市订单管理系统综合实验 应粉丝要求,本博主帮助实现基本效果! 未避免产生版权问题,本项目博主不公开源码,如果您遇到相关问题可私聊博主! 一、实验目的及任务 通过该实验,掌握利用SSM框架进行系…

ipa如何安装到iphone

这里以目前很火的奥普appuploader为例,先打开 appuploader,把 iPhone 用原装数据线连接,点击左侧的 appuploader一栏,会在右窗格中看到机器的相关信息,可以看到是否越狱一栏显示“是”。 接下来请点击左侧的“程序库”…

Android应用-开发框架设计

目录 1. 📂 简介 1.1 背景 1.2 专业术语 2. 🔱 总体设计思想 2.1 分层:组件化设计框架 2.2 分类:应用开发架构图 3. ⚛️ 框架详细设计 3.1 组件化框架外形 3.2 业务模块化 3.3 代码编程框架 4. 💠 框架其他…

本地git仓库(gitea)与openssh-server的冲突(connection reset by ip port 22)

前提 之前在本地的windows电脑上安装了一个gitea供项目组成员使用。 期间为了在windows电脑上使用scp拷贝文件,离线安装过一个openssh。 冲突 发现无法pull/clone gitea上的仓库了,提示 connection reset by ip port 22 fatal: Could not read from r…

【ChatGPT】无需注册,无需科学上网,无需人工验证的速度超快的 ChatGPT

文章目录 一、ChatGPT介绍二、使用ChatGPT时经常遇到的一些问题三、一个让你呼吸顺畅的 ChatGPT 一、ChatGPT介绍 ChatGPT,全称聊天生成预训练转换器(英语:Chat Generative Pre-trained Transformer),是OpenAI开发的人…

BGP路由选择实验

测试环境拓扑图 每一种规则测试完后记得恢复初始状态!! 各设备BGP Router_ID为loopback 0的地址。 AR1 配置 [V200R003C00] #sysname AR1 # interface GigabitEthernet0/0/0ip address 10.1.12.1 255.255.255.0 # interface LoopBack0ip address 1.1.…

vue大屏开发系列—使用echart开发省市地图数据,并点击省获取市地图数据

1. 本文在基础上进行改进,后端使用若依后端 IofTV-Screen: 🔥一个基于 vue、datav、Echart 框架的物联网可视化(大屏展示)模板,提供数据动态刷新渲染、屏幕适应、数据滚动配置,内部图表自由替换、Mixins注入…

揭 秘~月薪2-3万的程序员一天到底是怎么度过的?

程序员的高薪资,一直是大家热衷讨论的话题,几乎每隔一段时间就会在社交平台被网友们热议一番。 比如这条“月薪2万到3万的程序员的一天是怎么样度过的?”的帖子就一直排在知乎前列。 作为薪资可观的岗位,大家都非常好奇&#xff…