2、PyTorch张量的运算API(上)

embedded/2024/11/21 18:53:40/

1. 教学视频

2、PyTorch张量的运算API(上)

  • 因比较忙,暂时就做个过场吧。

2. Python代码

  • Python
python">#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @FileName  :torch_learn2.py
# @Time      :2024/11/16 19:53
# @Author    :Jason Zhangimport torchtorch.manual_seed(12124)if __name__ == "__main__":run_code = 0a = torch.rand([3, 2])a_chunk1, a_chunk2 = torch.chunk(a, chunks=2)a_chunk11, a_chunk21 = torch.chunk(a, chunks=2, dim=1)print(f"a=\n{a}")print(f"a_chunk1=\n{a_chunk1}")print(f"a_chunk2=\n{a_chunk2}")print(f"a_chunk11=\n{a_chunk11}")print(f"a_chunk21=\n{a_chunk21}")t = torch.tensor([[1, 2], [3, 4]])t_gather = torch.gather(t, 1, torch.tensor([[0, 1], [1, 0]]))print(f"t=\n{t}")print(f"t_gather=\n{t_gather}")reshape_12 = torch.arange(12).reshape((3, 4))print(f"reshape_12=\n{reshape_12}")reshape_11 = reshape_12.reshape((-1, 1))print(f"reshape_11=\n{reshape_11}")src = torch.arange(1, 11).reshape((2, 5))index = torch.tensor([[0, 1, 2, 0]])y = torch.zeros(3, 5, dtype=src.dtype).scatter_(0, index, src)print(f"src=\n{src}")print(f"y=\n{y}")stack_a = torch.rand((3, 4))stack_b = torch.rand((3, 4))stack_ab = torch.stack((stack_a, stack_b))print(f"stack_a=\n{stack_a}")print(f"stack_b=\n{stack_b}")print(f"stack_ab=\n{stack_ab},shape={stack_ab.shape}")squeeze_1 = torch.rand((2, 1, 3))squeeze_2 = torch.squeeze(squeeze_1)print(f"squeeze_1.shape={squeeze_1.shape}")print(f"squeeze_2.shape={squeeze_2.shape}")
  • 结果:
python">a=
tensor([[0.5555, 0.0484],[0.3199, 0.2577],[0.8874, 0.6888]])
a_chunk1=
tensor([[0.5555, 0.0484],[0.3199, 0.2577]])
a_chunk2=
tensor([[0.8874, 0.6888]])
a_chunk11=
tensor([[0.5555],[0.3199],[0.8874]])
a_chunk21=
tensor([[0.0484],[0.2577],[0.6888]])
t=
tensor([[1, 2],[3, 4]])
t_gather=
tensor([[1, 2],[4, 3]])
reshape_12=
tensor([[ 0,  1,  2,  3],[ 4,  5,  6,  7],[ 8,  9, 10, 11]])
reshape_11=
tensor([[ 0],[ 1],[ 2],[ 3],[ 4],[ 5],[ 6],[ 7],[ 8],[ 9],[10],[11]])
src=
tensor([[ 1,  2,  3,  4,  5],[ 6,  7,  8,  9, 10]])
y=
tensor([[1, 0, 0, 4, 0],[0, 2, 0, 0, 0],[0, 0, 3, 0, 0]])
stack_a=
tensor([[0.2410, 0.9222, 0.5832, 0.3587],[0.9344, 0.3320, 0.3852, 0.3239],[0.7664, 0.9575, 0.2645, 0.5601]])
stack_b=
tensor([[0.4304, 0.7509, 0.3536, 0.7229],[0.9026, 0.0793, 0.3076, 0.3272],[0.4434, 0.2406, 0.7080, 0.9304]])
stack_ab=
tensor([[[0.2410, 0.9222, 0.5832, 0.3587],[0.9344, 0.3320, 0.3852, 0.3239],[0.7664, 0.9575, 0.2645, 0.5601]],[[0.4304, 0.7509, 0.3536, 0.7229],[0.9026, 0.0793, 0.3076, 0.3272],[0.4434, 0.2406, 0.7080, 0.9304]]]),shape=torch.Size([2, 3, 4])
squeeze_1.shape=torch.Size([2, 1, 3])
squeeze_2.shape=torch.Size([2, 3])Process finished with exit code 0

http://www.ppmy.cn/embedded/139398.html

相关文章

某杀软环境下的添加账户

某杀软环境下的添加账户 我们在某个杀软环境下,正常添加账户一般是会被直接拦截的 白+黑 在这个环境下,白+黑是最实用的绕过方式,我们可以通过调用winapi来创建账户,这些代码再存储到dll里面&#xff0c…

2025 -生信信息学 - GO-KEGG-DO分析

生信信息学 - GO-KEGG-DO分析 01 GO分析 library("org.Hs.eg.db") library("clusterProfiler") library("enrichplot") library("ggplot2") library("ggnewscale") library("enrichplot") library("DOSE&q…

线性代数(第四章:方程组)

一、方程组的基础知识 1. 方程组的形式 2. 方程组的解 1)齐次方程组 2)非齐次方程组 3)总结 3. 方程组解的结构与性质 1)基础解系 若向量组 η1 , η2 ,…, ηr 满足: η1 , η2 ,…, ηr 为齐次线性方程组 Ax = 0 的解;η1 , η2 ,…, ηr 为全部解的极大线性无关组…

数据结构C语言描述3(图文结合)--双链表、循环链表、约瑟夫环问题

前言 这个专栏将会用纯C实现常用的数据结构和简单的算法;有C基础即可跟着学习,代码均可运行;准备考研的也可跟着写,个人感觉,如果时间充裕,手写一遍比看书、刷题管用很多,这也是本人采用纯C语言…

基于Java Springboot智能交通信息平台

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA/eclipse 数据…

OpenCV:VideoWriter.write()导致内存不断增长(未解决)

以前某个应用,专门把opencv独立为进程,完成后自动释放。当时我还想优化一下,比如减少frame,结果一点用没用。 这次专门一下,结论就是:每次执行write(),内存必然增加。 输出版本号,是…

MongoDB vs PRedis:深度对比与Python实现案例

目录 MongoDB vs PRedis:深度对比与Python实现案例目录第一部分:基础介绍与架构对比1.1 MongoDB1.2 PRedis1.3 架构对比MongoDB架构PRedis架构第二部分:功能与特性对比2.1 数据模型2.2 查询能力2.3 数据一致性2.4 扩展性第三部分:性能与扩展性分析3.1 性能3.2 高可用与扩展…

用vscode编写verilog时,如何有信号定义提示、信号定义跳转(go to definition)、模块跳转(跨文件跳转)这些功能

(一)方法一:安装插件SystemVerilog - Language Support 安装一个vscode插件即可,插件叫SystemVerilog - Language Support。虽然说另一个插件“Verilog-HDL/SystemVerilog/Bluespec SystemVerilog”也有信号提示及定义跳转功能&am…