【详解】神经网络矩阵的点乘与叉乘(pytorch版)

您所在的位置:网站首页 向量点乘和叉乘的运算关系是 【详解】神经网络矩阵的点乘与叉乘(pytorch版)

【详解】神经网络矩阵的点乘与叉乘(pytorch版)

2024-07-09 13:44:48| 来源: 网络整理| 查看: 265

官方文档

太长不看版本 点乘为两个矩阵对应元素相乘(逐元素级element-wise) 实现方式:可以通过*和torch.mul(x, y)函数实现(含广播机制) 模型符号:一个圆圈中有一个实心点叉乘为传统的线性代数学的矩阵乘法 实现方式:可以通过torch.mm()和torch.matmul()实现(含广播机制) 模型符号:一个圆圈中有一个叉×逐元素相加 实现方式:可以通过+和torch.add(x, y)函数实现 模型符号:一个圆圈中有一个加号+

广播机制:如果PyTorch操作支持广播,则其Tensor参数可以自动扩展为相等大小(无需复制数据) 如果张量x和y可以符合广播的条件,那么:结果张量可以按照下面的方式计算: 1、如果x和y的维度不相同,用1来扩张维度少的那个,使两个张量维度一致。 2、对于每个维度,结果维度是x,y对应维度的最大值。 即:列向量按列扩充,行向量按行扩充,使两个tensor扩展为相同尺寸,进行对应元素相乘。

一、点乘

点乘就是对应位置元素相乘(element-wise),可以通过*和torch.mul()函数实现,在神经网络模型中的符号为: 点乘的模型简化符号

1.1 标量的点乘 示例: a = torch.randint(10,(3,3)) print(a) print(a*2) print(a.mul(a)) 输出: tensor([[9, 3, 1], [3, 7, 3], [4, 8, 3]]) tensor([[18, 6, 2], [ 6, 14, 6], [ 8, 16, 6]]) tensor([[81, 9, 1], [ 9, 49, 9], [16, 64, 9]] 1.2 向量的点乘(含广播机制BroadCasting)

广播机制:如果PyTorch操作支持广播,则其Tensor参数可以自动扩展为相等大小(无需复制数据) 如果张量x和y可以符合广播的条件,那么:结果张量可以按照下面的方式计算: 1、如果x和y的维度不相同,用1来扩张维度少的那个,使两个张量维度一致。 2、对于每个维度,结果维度是x,y对应维度的最大值。 即:列向量按列扩充,行向量按行扩充,使两个tensor扩展为相同尺寸,进行对应元素相乘。

示例: b = torch.tensor([[1],[2],[3]]) #列向量 print(b) c = b.T #转置为行向量 print(c) print(a*b) print(a*c) 输出: tensor([[1], [2], [3]]) tensor([[1, 2, 3]]) tensor([[ 9, 3, 1], #按列向右广播的结果 [ 6, 14, 6], [12, 24, 9]]) tensor([[ 9, 6, 3], #按行向下广播的结果 [ 3, 14, 9], [ 4, 16, 9]]) 1.3 矩阵点乘 示例: a = torch.randint(5,(2,2)) print(a) print(a.mul(a)) 输出: tensor([[0, 1], [0, 3]]) tensor([[0, 1], [0, 9]]) 二、叉乘

叉乘就是传统的矩阵乘法,可以通过torch.mm()和torch.matmul()实现。在神经网络模型中的符号为: 叉乘的模型简化符号

2.1 矩阵相乘 示例: x = torch.ones(3,4) y = torch.eye(4) #对角线为1,其余元素为0 print(torch.mm(x,y)) 输出: tensor([[1., 1., 1., 1.], [1., 1., 1., 1.], [1., 1., 1., 1.]]) 2.2 torch.matmul(含广播机制BroadCasting) 示例: z = torch.ones(5,4,3) print(torch.matmul(z,x)) 输出: tensor([[[3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.]], [[3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.]], [[3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.]], [[3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.]], [[3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.], [3., 3., 3., 3.]]])


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭