首页 > 其他分享 >Lnton羚通云算力平台【PyTorch】教程:关于Tensors的基础知识

Lnton羚通云算力平台【PyTorch】教程:关于Tensors的基础知识

时间:2023-08-22 16:34:59浏览次数:43  
标签:Tensor NumPy torch PyTorch ones 云算力 羚通 data tensor

Tensors

Tensors 是一个特殊的数据结构,非常类似于数组和矩阵,在 PyTorch 中,我们使用 tensors 编码模型的输入和输出,以及模型的参数。

Tensors 非常类似于 NumPy 的 ndarrays, tensors 可以运行在 GPU 以及其他硬件加速器上,tensors 还可以与 NumPy 还可以共享底层内存,消除复制数据的需要(见 Bridge with NumPy ) ,Tensors 也为自动微分进行了优化 ( 见Autograd )

如果熟悉 ndarrays ,可以直接看 Tensor 的 API, 否则继续。

Initializing a Tensor ( 初始化 Tensor )

直接从数据

Tensors 可以直接从数据创建,数据的类型自动推理到输入中。

import numpy as np 
import torch 

data = [[1, 2], [3, 4]]
x_data = torch.tensor(data)
x_data

从 NumPy 数据

Tensors 可以从 NumPy 的 array 创建 ( Bridge with NumPy )

np_array = np.array(data)
x_np = torch.from_numpy(np_array)
x_np

从其他 Tensor

新的 Tensor 保留了参数 Tensor 的属性(形状,数据类型),除非显式重写

# 保留了数据类型和形状
x_ones = torch.ones_like(x_data)
print(f"Ones Tensor: \n{x_ones}")

# 显式重写 数据类型
x_rand = torch.rand_like(x_data, dtype=torch.float)
print(f"Random Tensor: \n{x_rand}")

根据形状创建随机值和常量值的 Tensor

shape = (2, 3, )
rand_tensor = torch.rand(shape)
ones_tensor = torch.ones(shape)
zeros_tensor = torch.zeros(shape)

print(f"Random Tensor: \n {rand_tensor}")
print(f"Ones Tensor: \n {ones_tensor}")
print(f"Zeros Tensor: \n {zeros_tensor}")

Tensors(张量)是在数学和机器学习中广泛使用的一种数据结构,张量是许多深度学习和机器学习模型的基本数据结构,能够有效地表示和处理高维数据。了解和掌握张量的基础知识对于进行数据处理、特征提取和模型训练至关重要。

Lnton羚通是专注于音视频算法、算力、云平台的高科技人工智能企业。 公司基于视频分析技术、视频智能传输技术、远程监测技术以及智能语音融合技术等, 拥有多款可支持ONVIF、RTSP、GB/T28181等多协议、多路数的音视频智能分析服务器/云平台。

Lnton羚通云算力平台【PyTorch】教程:关于Tensors的基础知识_计算机视觉


标签:Tensor,NumPy,torch,PyTorch,ones,云算力,羚通,data,tensor
From: https://blog.51cto.com/LNTON/7190910

相关文章

  • Lnton羚通云算力平台OpenCV Python颜色空间转换与抠图教程
    在OpenCVPython中,颜色空间转换和图像抠图是常见的图像处理任务。下面我将为你介绍如何进行颜色空间转换和图像抠图。颜色空间转换:在OpenCVPython中,可以使用 cv2.cvtColor() 函数将图像从一个颜色空间转换为另一个颜色空间。常用的颜色空间转换包括RGB、BGR、灰度(GRAY)、HS......
  • Lnton羚通云算力平台如何在OpenCV-Python 中,来进行图像算术运算?
    在OpenCV-Python中,可以使用函数cv2.add()、cv2.subtract()、cv2.multiply()和cv2.divide()来进行图像算术运算。这些函数接受两个输入图像,并对其进行逐像素的运算。1.图像加法:OpenCV 是饱和运算(大于255算255),NumPy 是模运算(大于255会与256进行求模)。importnumpyasnpimpo......
  • 使用Pytorch和OpenCV实现视频人脸替换
    DeepFaceLab”项目已经发布了很长时间了,作为研究的目的,本文将介绍他的原理,并使用Pytorch和OpenCV创建一个简化版本。本文将分成3个部分,第一部分从两个视频中提取人脸并构建标准人脸数据集。第二部分使用数据集与神经网络一起学习如何在潜在空间中表示人脸,并从该表示中重建人脸图......
  • Lnton羚通算法算力云平台在环境配置中当使用conda创建新的虚拟环境时为什么会遇到错误
    当使用conda创建新的虚拟环境时遇到错误,可能是由于以下一些常见原因导致的:Conda环境未正确安装:请确保你已经正确安装了Conda,并且设置了正确的环境变量。你可以尝试在终端中运行conda--version来验证Conda是否已经成功安装并可用。网络连接问题:Conda在创建新的虚拟环境时会从远程下......
  • Lnton羚通算法算力云平台当在NanoPi R6C上更换源时遇到错误该怎么解决
    你在NanoPiR6C上更换源时遇到错误,可能是由于以下原因导致的:源地址错误:请确保你使用的是有效的源地址。建议使用官方镜像源或者稳定可靠的镜像源。可以尝试更换不同的源地址再次尝试。网络连接问题:请确保NanoPiR6C设备已经正确连接到互联网,并且网络连接是正常的。你可以尝试通过其......
  • Lnton羚通算法算力云平台如何在OpenCV-Python中使用cvui库创建复选框
    CVUI之复选框Pythonimportnumpyasnpimportcv2importcvuidefcheckbox_test():WINDOW_NAME='Checkbox-Test'checked=[False]#创建画布frame=np.zeros((300,400,3),np.uint8)#初始化窗口cvui.init(WINDOW_NAME)while......
  • 【pytorch】目标检测:一文搞懂如何利用kaggle训练yolov5模型
    笔者的运行环境:python3.8+pytorch2.0.1+pycharm+kaggle。yolov5对python和pytorch版本是有要求的,python>=3.8,pytorch>=1.6。yolov5共有5种类型n\s\l\m\x,参数量依次递增,对训练设备的要求也是递增。本文以yolov5_6s为切入点,探究yolov5如何在实战种运用。1.数据集的准备roboflow......
  • 【pytorch】目标检测:新手也能彻底搞懂的YOLOv5详解
    YOLOv5是GlennJocher等人研发,它是Ultralytics公司的开源项目。YOLOv5根据参数量分为了n、s、m、l、x五种类型,其参数量依次上升,当然了其效果也是越来越好。从2020年6月发布至2022年11月已经更新了7个大版本,在v7版本中还添加了语义分割的功能。本文以YOLOv5_v6为媒介,对YOLOv5进行学......
  • TedNet:一个用于张量分解网络的Pytorch工具包
    摘要张量分解网络(TensorDecompositionNetworks,TDNs)因其固有的紧凑架构而流行。为了给更多的研究人员提供一种灵活的方式来利用TDNs,我们提出了一个名为TedNet的Pytorch工具包。TedNet实现了5种张量分解(即,CANDECOMP/PARAFAC(CP)、Block-TermTucker(BTT)、Tucker-2、TensorTrain(TT)和......
  • Lnton羚通PyTorch快速入门基础知识
    workingwithdata(处理数据)PyTorch提供了两个基本方法用于数据处理,torch.utils.data.DataLoader和torch.utils.data.Dataset。DataSet存储样本及其对应的标签,DataLoader在Dataset基础上封装了一个可迭代的对象。PyTorch提供了不同应用领域的库,例如TorchText,TorchVisi......