pytoch python 笔记

本文详细解读了PyTorch中的tensor.expand()和tensor.expand_as()函数,展示了如何改变张量的形状而不共享内存。同时,介绍了torch.max函数的使用方法,以及torch.squeeze()和torch.unsqueeze()函数在张量维度操作上的应用。
部署运行你感兴趣的模型镜像

一、pytorch中tensor.expand()和tensor.expand_as()函数解读

tensor.expend()函数可以看出expand()函数括号里面为变形后的size大小,而且原来的tensor和tensor.expand()是不共享内存的。

>>> a = torch.tensor([[2],[3],[4]])
>>> print(a.size())
torch.Size([3, 1])
>>> a.expand(3,2)
tensor([[2, 2],
        [3, 3],
        [4, 4]])
>>> a.expand(3,3)
tensor([[2, 2, 2],
        [3, 3, 3],
        [4, 4, 4]])
>>> a
tensor([[2],
        [3],
        [4]])
>>>

tensor.expand_as()函数,可以看出,b和a.expand_as(b)的size是一样大的。且是不共享内存的。

>>> b = torch.tensor([[2,3],[3,4],[4,5]])
>>> print(b.size())
torch.Size([3, 2])
>>> a.expand_as(b)
tensor([[2, 2],
        [3, 3],
        [4, 4]])
>>> b = torch.tensor([[2,3,3],[3,4,5],[4,5,7]])
>>> a.expand_as(b)
tensor([[2, 2, 2],
        [3, 3, 3],
        [4, 4, 4]])
>>> a
tensor([[2],
        [3],
        [4]])
>>> 

二、torch.max用法

pytorch中torch.max和Tensor.view函数用法_坎幽黑尔弥?的博客-优快云博客_pytorch求tensor的最大值

三、pytorch学习 中 torch.squeeze() 和torch.unsqueeze()的用法

pytorch学习 中 torch.squeeze() 和torch.unsqueeze()的用法_nancheng911的博客-优快云博客_torch.unsqueeze

您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

### PyTorch 学习笔记教程 #### 张量 Tensor 的基本操作 PyTorch 是一个基于 Python 的科学计算包,能够替代 Numpy 并充分利用 GPU 的强大性能[^1]。张量 (Tensor) 是 PyTorch 中最基本的数据结构之一。 下面展示了一个简单的例子来创建并调整张量形状: ```python import torch input_tensor = torch.tensor([[1, -0.5], [-1, 3]]) reshaped_input = torch.reshape(input_tensor, (-1, 1, 2, 2)) print(reshaped_input.shape) ``` 这段代码首先定义了一个二维张量 `input_tensor` ,接着通过调用 `reshape()` 方法将其转换成四维张量,并打印其新的尺寸大小。 #### 使用神经网络模块构建模型 为了实现更复杂的机器学习算法,通常会使用预定义好的层来进行快速开发。这里介绍如何利用内置函数轻松搭建自己的神经网络架构: ```python from torch import nn class SimpleModel(nn.Module): def __init__(self): super(SimpleModel, self).__init__() self.relu_layer = nn.ReLU() def forward(self, x): return self.relu_layer(x) model_instance = SimpleModel() output_result = model_instance(reshaped_input) print(output_result) ``` 上述代码片段展示了怎样继承自 `nn.Module` 类来自定义一个新的类 `SimpleModel` 。该类内部包含了激活函数 ReLU 层作为成员变量,在前向传播过程中可以直接应用此层处理输入数据。 #### 验证安装版本号 当完成环境配置之后,可以通过如下方式验证当前使用的 PyTorch 版本是否正确无误: ```python import torch print(torch.__version__) ``` 这行命令将会输出已成功加载到项目中的 PyTorch 库的具体版本信息[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值