当前位置: 首页 > news >正文

南京制作网站培训学校刷网站排名软件

南京制作网站培训学校,刷网站排名软件,wordpress主题和模板,怎么生成域名做网站PyTorch中的Tensor‌ 是核心数据结构,类似于 NumPy 的多维数组,但具备 GPU 加速和自动求导等深度学习特性。 一、基本概念 ‌核心数据结构‌ Tensor 是存储和操作数据的基础单元,支持标量(0D)、向量(1D&am…

        PyTorch中的Tensor‌ 是核心数据结构,类似于 NumPy 的多维数组,但具备 GPU 加速和自动求导等深度学习特性。

一、基本概念

  1. 核心数据结构

    • Tensor 是存储和操作数据的基础单元,支持标量(0D)、向量(1D)、矩阵(2D)及更高维数组‌。
    • 与 NumPy 的 ndarray 类似,但支持动态计算图和自动梯度计算‌。
  2. 关键特性

    • GPU 加速‌:可存储在 CPU 或 GPU 中,GPU 计算显著提升性能‌。
    • 自动求导‌:通过 requires_grad=True 启用梯度计算,支持反向传播‌。

二、创建方式

  1. 直接创建

    • 从 Python 列表或元组初始化:
      a = torch.tensor([1, 2, 3])          # 1D Tensor(向量)
      b = torch.tensor([[1.0, 2.0], [3.0, 4.0]])  # 2D Tensor(矩阵)‌
      
    • 指定数据类型(如 dtype=torch.float32)和设备(如 device='cuda')‌。
  2. 初始化方法

    • 全零/全一张量:
      zeros_tensor = torch.zeros((2, 3))   # 2x3 全零张量
      ones_tensor = torch.ones((2, 3))     # 2x3 全一张量‌
      
    • 随机张量:
      rand_tensor = torch.rand((2, 3))     # 值在 [0,1) 的均匀分布‌
  3. 从其他数据结构转换

    • 从 NumPy 数组转换:

       使用 torch.from_numpy(),Tensor 与 NumPy 数组共享内存(修改一方会影响另一方)

      numpy_arr = np.array([1, 2, 3])
      tensor = torch.from_numpy(numpy_arr)  # 共享内存‌

      使用 torch.tensor() 复制数据,生成独立 Tensor:

      tensor = torch.tensor(numpy_arr)  # 不共享内存‌
    • 从图片转换:
      使用 torchvision.transforms
      将 NumPy 格式的图片(HWC 格式,值域 [0, 255])转换为 Tensor(CHW 格式,值域 [0.0, 1.0]):
      from PIL import Image
      from torchvision import transformsimg = Image.open("image.jpg")  # PIL.Image 对象 (H,W,C)
      tensor_trans = transforms.ToTensor()
      tensor_img = tensor_trans(img)  # 转为 Tensor (C, H, W)
      

三、维度与形状

  1. 常见维度类型

    • 0D 张量‌:标量(如 torch.tensor(5))‌。
    • 1D 张量‌:向量(如时间序列数据)‌。
    • 2D 张量‌:矩阵(如表格数据)‌。
    • 3D 张量‌:多通道图像(形状 (C, H, W))‌。
    • 4D 张量‌:批量图像(形状 (N, C, H, W)N 为批量大小)‌。
    • 5D 张量‌:视频或体积数据(如医疗图像)‌。
  2. 形状操作

    • 调整形状:reshape() 或 view()(需保证元素总数不变)‌。
    • 转置:tensor.T 或 transpose()‌。

四、运算与操作

  1. 数学运算

    • 逐元素运算(如 +*torch.sin())‌。
    • 矩阵乘法:torch.matmul() 或 @ 运算符‌。
  2. 索引与切片

    • 类似 NumPy 的索引方式:
      tensor = torch.rand(3, 4)
      row = tensor[0, :]          # 第一行
      column = tensor[:, 1]       # 第二列‌
      
  3. 自动求导

    • 启用梯度跟踪:
      x = torch.tensor(2.0, requires_grad=True)
      y = x**2
      y.backward()                # 计算梯度
      print(x.grad)               # 输出 4.0‌
      

五、其他特性

  1. 数据类型

    • 支持多种类型(如 torch.float32torch.int64),可通过 dtype 参数指定‌。
    • 通过 .float()、.int() 等方法改变 Tensor 的数据类型。
      tensor = torch.tensor([1, 2]).float()  # 转为 float32‌
  2. 设备切换

    • 使用 .to('cuda') 或 .cpu() 在 CPU 和 GPU 间移动张量‌。
      tensor_cpu = torch.tensor([1, 2])
      tensor_gpu = tensor_cpu.to("cuda")  # 转为 GPU Tensor‌
http://www.dtcms.com/a/588024.html

相关文章:

  • 网站建设要用到的技术有哪些网页浏览器主要通过ftp协议
  • 运涛网站建设wordpress 修改用户头像
  • 怎么制作微信购物网站优化器
  • 网站开发工程师分析百度免费
  • 企业网站现状分析南京个人网站建设模板
  • 网站友链一页式网站模板
  • 临沂的各类网站建设软件工程主要课程
  • 新网站 seo宁波网站建设应届生
  • 建设网站审批手续iis中浏览网站是什么
  • 中宁网站建设学做淘宝客网站
  • 网站开发后端技术网站排名网站优化
  • aspx网站开发教程网页设计与制作实训步骤
  • 做设计找参考的设计网站有哪些阿里logo设计网站
  • 网站建设与维护百度百科乐山建网站
  • 常德地区网站建设专做轮胎的网站
  • 郑州企业自助建站威海住房和城乡建设厅网站首页
  • yfcmf做网站vue企业门户网站模板
  • 微信公众号是在哪个网站做的腾讯文件怎么转换wordpress
  • 如何用织梦cms做网站网站简介 更改
  • 网站域名需要续费的吗济南建设网站制作
  • 怎么查公司网站有没有中文域名wordpress拖曳组件
  • 徐州cms建站模板北京做网站建设的公司
  • 做网站的难点wordpress顶部导航栏怎么创建
  • 怎么做网站地图导航云南小程序开发制作公司
  • 网站建设播放vr视频哈尔滨建站系统报价
  • 付费设计网站易名网
  • 网站域名更改推广普通话手抄报简单漂亮
  • 做军事网站的项目背景外贸网站建设推广培训
  • 长春网站建设4435电子产品网页设计模板
  • 一个主体可以备案几个网站网页游戏大全免费