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

深度学习|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()”连接矩阵,就是大家所熟悉的线性代数中得矩阵乘法。

相关文章:

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

【1】引言 pytorch对张量的基本运算和线性代数课堂的教学有一些区别,至少存在hadamard积、点积和矩阵乘法三种截然不同的计算方法。 【2】hadamard积 hadamard积是元素对位相乘,用“*”连接张量,代码: # 导入包 import torch …...

FFmpeg移植教程(linux平台)

目录 第三方源码编译三部曲关于 configure 的说明 FFmpeg 移植流程获取源码方法一:git 远程克隆方法二:官网下载压缩包解压 配置安装 第三方源码编译三部曲 Linux平台下有许多开源的第三方库和服务,这些开源代码一般都符合GNU-autotools编码…...

Mybatis:灵活掌控SQL艺术

在前面的文章中,小编分享了spring中相关的知识,但是没有分享到,如何去更高效操作数据库。 操作数据库传统的方法就是通过JDBC来进行操作。 这个传统方法使用上可谓是够麻烦的 1.首先创建一个数据源对象 2.设置该数据源的属性(…...

2025.05.28【Choropleth】群体进化学专用图:区域数据可视化

Load geospatial data Start by loading your geospatial data in R, and build a basic plot. Data from the package The cartography comes with a set of geospatial data included. Learn how to use it to build a choropleth map. 文章目录 Load geospatial dataData …...

Java设计模式详解:策略模式(Strategy Pattern)

在软件开发中,设计模式是解决常见问题的经典方法。策略模式(Strategy Pattern)作为一种行为型设计模式,能够将算法或行为的定义与使用分离,使得算法可以独立于客户端代码进行变化和扩展。本文将深入解析策略模式的核心…...

【春秋云镜】CVE-2022-26965 靶场writeup

知识点 网站的主题或者模块位置一般是可以上传文件的,不过一般为压缩包形式主题或者模块可以上github上找到和cms匹配的源码主题被解压后会放到加入到对应的文件夹中,而且还会自动执行对应的info.php文件(需要主题和cms配套才行)我这里取巧了&#xff0…...

爬虫的几种方式(使用什么技术来进行一个爬取数据)

在网页数据爬取中,确实存在多种数据呈现和获取形式,远不止静态HTML解析和简单JS渲染。理解这些形式对于应对不同的反爬机制至关重要: 主要数据获取形式与应对策略 纯静态HTML (基础形式) 特点: 数据直接嵌入在服务器返回的初始HT…...

XML 编码:结构化数据的基石

XML 编码:结构化数据的基石 引言 XML(可扩展标记语言)作为互联网上广泛使用的数据交换格式,已经成为结构化数据存储和传输的重要工具。本文旨在深入探讨XML编码的原理、应用场景以及编码规范,帮助读者更好地理解和运用XML。 XML编码概述 1. XML的起源 XML诞生于1998年…...

nt!CcGetVacbMiss函数分析之设置好nt!_VACB然后调用函数nt!SetVacb

第一部分:MmMapViewInSystemCache函数返回 Status MmMapViewInSystemCache (SharedCacheMap->Section, &Vacb->BaseAddress, &NormalOffset, …...

JSP、HTML和Tomcat

9x9上三角乘法表 乘法表的实现 <% page contentType"text/html;charsetUTF-8" language"java" %> <!DOCTYPE html> <html> <head><title>99 上三角乘法表</title><style>body {font-family: monospace;padding…...

(1)pytest简介和环境准备

1. pytest简介 pytest是python的一种单元测试框架&#xff0c;与python自带的unittest测试框架类似&#xff0c;但是比unittest框架使用起来更简洁&#xff0c;效率更高。根据pytest的官方网站介绍&#xff0c;它具有如下特点&#xff1a; 非常容易上手&#xff0c;入门简单&a…...

Git 入门学习教程

Git 入门学习教程 什么是 Git&#xff1f; Git 是一个分布式版本控制系统&#xff0c;由 Linus Torvalds 为 Linux 内核开发而创建。它可以帮助开发者&#xff1a; 跟踪代码变化协作开发项目回退到之前的版本创建分支进行实验性开发 安装 Git Windows 下载 Git for Windo…...

构建高性能风控指标系统

一、引言 在金融风控领域&#xff0c;指标是风险识别的核心依据。风控平台核心系统之一--规则引擎的运行依赖规则、变量和指标&#xff0c;一个高性能的指标系统非常重要&#xff0c;本文将深入探讨风控平台指标系统的全链路技术实现&#xff0c;涵盖从指标配置到查询优化的完…...

openfeignFeign 客户端禁用 SSL

要针对特定的 Feign 客户端禁用 SSL 验证&#xff0c;可以通过自定义配置类实现。以下是完整解决方案&#xff1a; 1. 创建自定义配置类&#xff08;禁用 SSL 验证&#xff09; import feign.Client; import feign.httpclient.ApacheHttpClient; import org.apache.http.conn…...

DeepSeek 赋能自动驾驶仿真测试:解锁高效精准新范式

目录 一、自动驾驶仿真测试概述1.1 自动驾驶发展现状1.2 自动驾驶仿真测试流程 二、DeepSeek 技术剖析2.1 DeepSeek 简介2.2 DeepSeek 核心技术原理 三、DeepSeek 在自动驾驶仿真测试中的应用原理3.1 与自动驾驶仿真测试流程的结合点3.2 如何提升仿真测试效果 四、DeepSeek 在自…...

晨控CK-UR12与西门子PLC配置Modbus TCP通讯连接操作手册

晨控CK-UR12与西门子PLC配置Modbus TCP通讯连接操作手册 晨控CK-UR12系列作为晨控智能工业级别RFID读写器,支持大部分工业协议如RS232、RS485、以太网。支持工业协议Modbus RTU、Modbus TCP、Profinet、EtherNet/lP、EtherCat以及自由协议TCP/IP等。 本期主题&#xff1a;围绕…...

实验一:PyTorch基本操作实验

import torch # PyTorch中初始化矩阵常见有以下几种方法 # 1. 直接使用固定值初始化 # M torch.tensor([[1.0, 2.0, 3.0]]) # 1x3矩阵 # 2. 随机初始化 # M torch.rand(1, 3) # 1x3矩阵&#xff0c;元素在0-1之间均匀分布 # M torch.randn(1, 3) # 1x3矩阵&#xff0c;元…...

可视化大屏通用模板Axure原型设计案例

本文将介绍一款基于Axure设计的可视化大屏通用模板&#xff0c;适用于城市、网络安全、园区、交通、社区、工业、医疗、能源等多个领域。 模板概述 这款Axure可视化大屏通用模板集成了多种数据展示模块和组件&#xff0c;旨在为用户提供一个灵活、可定制的数据展示平台。无论…...

通配符(Wildcard)与正则表达式(Regular Expression)的关系及区别

通配符&#xff08;Wildcard&#xff09;与正则表达式&#xff08;Regular Expression&#xff09;的关系及区别 1. 通配符&#xff08;Wildcard&#xff09; 定义&#xff1a;通配符是用于简单模式匹配的特殊符号&#xff0c;主要用于文件名匹配&#xff08;如命令行操作&…...

历年山东大学计算机保研上机真题

历年山东大学计算机保研上机真题 2025山东大学计算机保研上机真题 2024山东大学计算机保研上机真题 2023山东大学计算机保研上机真题 在线测评链接&#xff1a;https://pgcode.cn/school 从1到100找质数 题目描述 从 1 1 1 到 100 100 100 中找出所有的质数。 输入格式 …...

Java处理动态的属性:字段不固定、需要动态扩展的 JSON 数据结构

文章目录 引言I `JSONObject` 接收和返回JSONObject 接收和返回数据存储II 签名测试接口dto的定义签名计算III JsonAnySetter 和JsonAnyGetter 注解@JsonAnySetter 的用法@JsonAnyGetter 的用法综合示例引言 应用场景: 签名测试接口、表单配置项、参数列表、插件信息等。技术实…...

MAC电脑怎么通过触摸屏打开右键

在Mac电脑上&#xff0c;通过触摸屏打开右键菜单的方法如下&#xff1a; 法1:双指轻点&#xff1a;在触控板上同时用两根手指轻点&#xff0c;即可触发右键菜单。这是Mac上常用的右键操作方法。 法2:自定义触控板角落&#xff1a;可以设置触控板的右下角或左下角作为右键区域…...

用 Whisper 打破沉默:AI 语音技术如何重塑无障碍沟通方式?

网罗开发 &#xff08;小红书、快手、视频号同名&#xff09; 大家好&#xff0c;我是 展菲&#xff0c;目前在上市企业从事人工智能项目研发管理工作&#xff0c;平时热衷于分享各种编程领域的软硬技能知识以及前沿技术&#xff0c;包括iOS、前端、Harmony OS、Java、Python等…...

【东枫科技】KrakenSDR 天线阵列设置

标准测向需要五根相同的全向天线。您可以折衷使用更少的天线&#xff0c;但为了获得最佳性能&#xff0c;我们建议使用全部五根天线。这些天线通常是磁铁安装的鞭状天线&#xff0c;或偶极子天线。我们建议始终使用均匀圆形阵列 (UCA) 天线&#xff0c;因为它可以确定来自各个方…...

Spring Boot中的事件与JMS消息集成

Spring Boot事件机制 Spring框架的事件处理是其核心特性之一,通过ApplicationEvent类和ApplicationListener接口实现。在Spring Boot应用中,事件机制是实现模块间消息传递的重要方式,通常用于业务逻辑内部通信。 内置事件类型 Spring应用上下文在启动时会触发多种内置事件…...

ubuntu/windows系统下如何让.desktop/.exe文件 在开机的时候自动运行

目录 1,​​让 .desktop 文件在 Ubuntu 开机时自动启动​ 1.1 创建 autostart 目录(如果不存在)​ ​ 1.2 将 .desktop 文件复制到 autostart 目录​ ​ 1.3 确保 .desktop 文件有可执行权限​ 2,windows 2.1 打开「启动」文件夹​​: ​ 2.2 将 .exe 或快捷方…...

云计算数据治理

知识星球&#xff1a;数据书局。打算通过知识星球将这些年积累的知识、经验分享出来&#xff0c;让各位在数据治理、数据分析的路上少走弯路&#xff0c;另外星球也方便动态更新最近的资料&#xff0c;提供各位一起讨论数据的小圈子 1.摘要 云计算可以推动创新和各行业应用的…...

【Net】TCP粘包与半包

文章目录 TCP粘包与半包1 背景2 粘包&#xff08;packet stick&#xff09;3 半包&#xff08;packet split&#xff09;4 为什么会出现粘包/半包&#xff1f;5 如何解决&#xff1f;6 示例7 总结 TCP粘包与半包 在网络编程中&#xff0c;粘包和半包问题是常见的 TCP 协议特有…...

【Android】如何抓取 Android 设备的 UDP/TCP 数据包?

目录 前言理解抓包tcpdump 实时抓包Wireshark 解包抓包后的一些思考 前言 在真正接触 UDP/TCP 抓包之前&#xff0c;我一直以为这是一项高深莫测的技术。可当我们真正了解之后才发现&#xff0c;其实并没有那么复杂——不过如此。 所谓的大佬&#xff0c;往往只是掌握了你尚未…...

深度解析 Nginx 配置:从性能优化到 HTTPS 安全实践

引言 Nginx 作为高性能的 Web 服务器和反向代理&#xff0c;其配置灵活性和强大功能备受开发者青睐。本文基于一份生产环境的 Nginx 配置文件&#xff0c;详细拆解其核心配置逻辑&#xff0c;涵盖性能优化、HTTPS 安全配置、反向代理及静态资源处理等关键环节&#xff0c;帮助…...