PyTorch 数学运算-Tensor基本操作

2024-06-11 22:04

本文主要是介绍PyTorch 数学运算-Tensor基本操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用如下 a b 进行运算演示

>>> a                    
tensor([[0.7967, 0.5056, 0.7963],[0.8603, 0.7029, 0.7590]])
>>> b
tensor([[0.6923, 0.0411, 0.8713],[0.0483, 0.2948, 0.3286]])
  • 一般加减乘除运算: add/mimus/multiply/divide
    >>> a+b  ## torch.add(a,b)
    tensor([[1.4890, 0.5467, 1.6676],[0.9086, 0.9977, 1.0876]])
    >>> a-b  ## torch.sub(a,b)
    tensor([[ 0.1044,  0.4646, -0.0750],[ 0.8120,  0.4080,  0.4304]])
    >>> a*b  ## torch.mul(a,b)
    tensor([[0.5516, 0.0208, 0.6938],[0.0416, 0.2072, 0.2494]])
    >>> a/b  ## torch.div(a,b)
    tensor([[ 1.1508, 12.3163,  0.9139],[17.8087,  2.3840,  2.3099]])
    
  • 矩阵相乘: matmul
    • 对于大于二维的,只取后面的二维进行运算
    >>> a@b  ## torch.matmul(a, b.t()) 
    tensor([[1.2662, 0.4492],[1.2858, 0.4982]])
    
  • powsqrt, exp, log
    >>> a**2  ## a.pow(2)
    tensor([[0.6348, 0.2557, 0.6341],[0.7401, 0.4940, 0.5761]])
    >>> a**0.5  ## a.sqrt()
    tensor([[0.8926, 0.7111, 0.8924],[0.9275, 0.8384, 0.8712]])
    >>> torch.exp(a) 
    tensor([[2.2183, 1.6580, 2.2173],[2.3638, 2.0196, 2.1362]])
    >>> torch.log(a)  ## e 为底
    tensor([[-0.2272, -0.6819, -0.2278],[-0.1505, -0.3526, -0.2757]])
    
  • 近似计算:floor, ceil, round 和 裁剪 clamp
    >>> a.floor()  ## 向上取整
    tensor([[0., 0., 0.],[0., 0., 0.]])
    >>> a.ceil()  ## 向下取整
    tensor([[1., 1., 1.],[1., 1., 1.]])
    >>> a.round()  ## 四舍五入
    tensor([[1., 1., 1.],[1., 1., 1.]])>>> a.clamp(0.1, 0.8)  ## 裁剪到指定区间
    tensor([[0.7967, 0.5056, 0.7963],[0.8000, 0.7029, 0.7590]])>>> a.trunc()  ## 拆分获得整数部分
    tensor([[0., 0., 0.],[0., 0., 0.]])
    >>> a.frac() 	 ## 拆分获得小数部分
    tensor([[0.7967, 0.5056, 0.7963],[0.8603, 0.7029, 0.7590]])
    

  • B站视频参考资料

这篇关于PyTorch 数学运算-Tensor基本操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1052391

相关文章

判断PyTorch是GPU版还是CPU版的方法小结

《判断PyTorch是GPU版还是CPU版的方法小结》PyTorch作为当前最流行的深度学习框架之一,支持在CPU和GPU(NVIDIACUDA)上运行,所以对于深度学习开发者来说,正确识别PyTor... 目录前言为什么需要区分GPU和CPU版本?性能差异硬件要求如何检查PyTorch版本?方法1:使用命

Python位移操作和位运算的实现示例

《Python位移操作和位运算的实现示例》本文主要介绍了Python位移操作和位运算的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 位移操作1.1 左移操作 (<<)1.2 右移操作 (>>)注意事项:2. 位运算2.1

pytorch自动求梯度autograd的实现

《pytorch自动求梯度autograd的实现》autograd是一个自动微分引擎,它可以自动计算张量的梯度,本文主要介绍了pytorch自动求梯度autograd的实现,具有一定的参考价值,感兴趣... autograd是pytorch构建神经网络的核心。在 PyTorch 中,结合以下代码例子,当你

在PyCharm中安装PyTorch、torchvision和OpenCV详解

《在PyCharm中安装PyTorch、torchvision和OpenCV详解》:本文主要介绍在PyCharm中安装PyTorch、torchvision和OpenCV方式,具有很好的参考价值,... 目录PyCharm安装PyTorch、torchvision和OpenCV安装python安装PyTor

pytorch之torch.flatten()和torch.nn.Flatten()的用法

《pytorch之torch.flatten()和torch.nn.Flatten()的用法》:本文主要介绍pytorch之torch.flatten()和torch.nn.Flatten()的用... 目录torch.flatten()和torch.nn.Flatten()的用法下面举例说明总结torch

使用PyTorch实现手写数字识别功能

《使用PyTorch实现手写数字识别功能》在人工智能的世界里,计算机视觉是最具魅力的领域之一,通过PyTorch这一强大的深度学习框架,我们将在经典的MNIST数据集上,见证一个神经网络从零开始学会识... 目录当计算机学会“看”数字搭建开发环境MNIST数据集解析1. 认识手写数字数据库2. 数据预处理的

Pytorch微调BERT实现命名实体识别

《Pytorch微调BERT实现命名实体识别》命名实体识别(NER)是自然语言处理(NLP)中的一项关键任务,它涉及识别和分类文本中的关键实体,BERT是一种强大的语言表示模型,在各种NLP任务中显著... 目录环境准备加载预训练BERT模型准备数据集标记与对齐微调 BERT最后总结环境准备在继续之前,确

pytorch+torchvision+python版本对应及环境安装

《pytorch+torchvision+python版本对应及环境安装》本文主要介绍了pytorch+torchvision+python版本对应及环境安装,安装过程中需要注意Numpy版本的降级,... 目录一、版本对应二、安装命令(pip)1. 版本2. 安装全过程3. 命令相关解释参考文章一、版本对

从零教你安装pytorch并在pycharm中使用

《从零教你安装pytorch并在pycharm中使用》本文详细介绍了如何使用Anaconda包管理工具创建虚拟环境,并安装CUDA加速平台和PyTorch库,同时在PyCharm中配置和使用PyTor... 目录背景介绍安装Anaconda安装CUDA安装pytorch报错解决——fbgemm.dll连接p

pycharm远程连接服务器运行pytorch的过程详解

《pycharm远程连接服务器运行pytorch的过程详解》:本文主要介绍在Linux环境下使用Anaconda管理不同版本的Python环境,并通过PyCharm远程连接服务器来运行PyTorc... 目录linux部署pytorch背景介绍Anaconda安装Linux安装pytorch虚拟环境安装cu