pytorch中选取不同维度sum和mean方法理解

这篇具有很好参考价值的文章主要介绍了pytorch中选取不同维度sum和mean方法理解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在PyTorch中,sum()函数用于对输入张量的所有元素进行求和操作。该函数的语法如下:

torch.sum(input, dim=None, keepdim=False, dtype=None)

具体而言,sum()函数会对输入张量的所有元素进行求和操作,并返回一个标量值。

如果指定了dim参数,则会沿着指定的维度对输入张量进行求和操作,并返回一个形状与输入张量除了指定维度之外的维度相同的张量。

如果指定了keepdim参数,则返回的张量会保持与输入张量相同的维度数,并且在指定维度上的大小为1。

具体算维度,采用消解法,也就是 dim=0,那就是消去第0维,dim=1,消去第1维

比如一个矩阵维度(2,3,4),dim=0,那就是消去第0维,变成了 (3,4),消去第1维,变成了 (2,4),消去第2维,变成了 (2,3),dim=-1,也就是最后一维,在这个矩阵中也就是第二维。文章来源地址https://www.toymoban.com/news/detail-543060.html

import torch

x = torch.arange(24).view(2,3,4)
print(x)

tensor([[[ 0,  1,  2,  3],
         [ 4,  5,  6,  7],
         [ 8,  9, 10, 11]],

        [[12, 13, 14, 15],
         [16, 17, 18, 19],
         [20, 21, 22, 23]]])


y = torch.sum(x)
print(y)

tensor(276)


y = torch.sum(x,dim=0)
print(y)  
print(y.shape)


tensor([[12, 14, 16, 18],
        [20, 22, 24, 26],
        [28, 30, 32, 34]])
torch.Size([3, 4])





y = torch.sum(x, dim=1)
print(y)  
print(y.shape)

tensor([[12, 15, 18, 21],
        [48, 51, 54, 57]])
torch.Size([2, 4])


y = torch.sum(x, dim=2)
print(y)  
print(y.shape)

tensor([[ 6, 22, 38],
        [54, 70, 86]])
torch.Size([2, 3])

y = torch.sum(x, dim=-1)
print(y)  
print(y.shape)

tensor([[ 6, 22, 38],
        [54, 70, 86]])
torch.Size([2, 3])

到了这里,关于pytorch中选取不同维度sum和mean方法理解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • tensor的不同维度种类

    0维标量(scalar),1维向量(vector),二维矩阵(matrix),3维以上n维张量

    2024年02月08日
    浏览(36)
  • cross attention输入不同维度的矩阵

    在学习使用cross attention的时候我查阅了很多资料,发现里面说的都是cross attention的输入需要是相同维度的矩阵,但是我所需要的是可以处理不同维度数据的cross attention。 cross attention 看了关于cross attention的一些介绍和代码,发现大多都是这样 这里的x和y所输入的维度需要一致

    2024年02月04日
    浏览(37)
  • 【人工智能概论】 PyTorch中的topk、expand_as、eq方法

    对PyTorch中的tensor类型的数据都存在topk方法,其功能是按照要求取前k个最大值。 其最常用的场合就是求一个样本被网络认为的前k种可能的类别。 举例: torch.topk(input, k, dim=None, largest=True, sorted=True, out=None) 其中: input: 是待处理的tensor数据; k: 指明要前k个数据及其index;

    2024年02月10日
    浏览(41)
  • 深入浅出Pytorch函数——torch.sum

    分类目录:《深入浅出Pytorch函数》总目录 相关文章: · 深入浅出TensorFlow2函数——tf.reduce_sum · 深入浅出TensorFlow2函数——tf.math.reduce_sum · 深入浅出Pytorch函数——torch.sum · 深入浅出PaddlePaddle函数——paddle.sum 语法 参数 input :[ Tensor ] 输入的张量。 dim :[可选, int / tuple ] 求和

    2024年02月04日
    浏览(77)
  • Pytorch模型如何查看每层输入维度输出维度

    在 PyTorch 中,可以使用 torchsummary 库来实现对 PyTorch 模型的结构及参数统计的输出,其可以方便我们查看每层输入、输出的维度以及参数数量等信息。 安装 torchsummary 库: 使用方法如下: 其中, model 是需要查看的模型, (3, 32, 32) 表示模型的输入维度,即 C = 3,H = 32,W = 32。

    2024年02月16日
    浏览(39)
  • 【人工智能Ⅰ】实验7:K-means聚类实验

    实验7 K-means聚类实验 一、实验目的 学习K-means算法基本原理,实现Iris数据聚类。 二、实验内容 应用K-means算法对iris数据集进行聚类。 三、实验结果及分析 0 :输出数据集的基本信息 参考代码在main函数中首先打印了数据、特征名字、目标值、目标值的名字,iris数据集的结果

    2024年02月05日
    浏览(49)
  • 【pytorch】维度变换

    将一个四维的张量(b x c x h x w)转换成一个二维的张量 对于四张图片 将每一张图像用一行向量进行表示,忽略通道信息 增加一个维度,在指定索引位置添加维度吗,不会改变数据本身,相当于新增加一个组别 bias相当于给每一个channel上的所有像素增加一个偏置 需要变换b

    2024年02月08日
    浏览(29)
  • 【人工智能与深度学习】当输入层维度为1024,输出层维度为100时,为什么全连接层参数量为1024*100+100

    在神经网络中,全连接层(也称为稠密层或线性层)的参数量计算通常包括权重(weights)和偏置(biases)。对于一个全连接层,如果输入层维度(即输入特征的数量)为1024,输出层维度(即输出特征的数量)为100,那么参数的计算方式如下: 权重 :每个输入特征都与每个输

    2024年01月17日
    浏览(78)
  • Pytorch中的标准维度顺序

    在PyTorch中,如果一个张量包括通道数(C)、宽度(W)、高度(H)和批量大小(N),那么它的标准维度顺序是 [N, C, H, W] ,即: 第一个维度 N 是批量大小,表示一次处理的样本数。 第二个维度 C 是通道数,如RGB图像中的3个颜色通道。 第三个维度 H 是图像的高度。 第四个维

    2024年01月17日
    浏览(39)
  • 关于pytorch张量维度转换大全

    view() 用于 改变张量的形状 ,但 不会改变张量中的元素值 。 用法1: 例如,你可以使用view 将一个形状是(2,3)的张量变换成(3,2)的张量; 上面的操作相当于,先把形状为**(2,3)的tensor展平,变成(1,6),然后再变成(3,2).** 用法2: 转换前后张量中的元素个数

    2024年02月06日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包