码农知识堂 - 1000bd
Python
PHP
JS/TS
JAVA
C/C++
C#
GO
Kotlin
Swift
Pytorch(一) —— 基本语法
Pytorch(一) —— 基本语法
1.基本数据类型
1.1 torch.FloatTensor与torch.cuda.FloatTensor
1.2 torch.DoubleTensor与torch.cuda.DoubleTensor
1.3 torch.IntTensor与torch.cuda.IntTensor
1.4 torch.LongTensor与torch.cuda.LongTensor
1.5 torch.BoolTensor与torch.cuda.BoolTensor
2 Tensor创建的常用操作
2.1 判断是否为本机是否有可用的GPU资源
2.2 CPU类型数据转换为GPU类型数据
2.3 获取Tensor的形状
2.4 将numpy格式的数据转换为Tensor格式
2.4 将List格式的数据转换为Tensor格式
2.5 创建未初始化的Tensor
2.6 设置Tensor的默认格式
2.7 创建均匀分布与纯整数Tensor
2.8 创建正态分布的Tensor
2.9 创建元素全相同的Tensor
2.10 torch.arange()
2.10 torch.linespace()
2.10 torch.logspace()
2.11 torch.ones / .zeros / eye
2.12 随机打散
3. 索引与切片
3.1 对指定维度进行索引
3.2 使用...进行索引
3.3 使用masked_select进行索引
4. 维度变换
4.1 torch.view() / reshape()
4.2 添加一个维度torch.unsqueeze()
4.3 减少一个维度torch.squeeze()
4.4 broadcasting:使用expand方法
4.4 内存复制:使用repeat方法
4.5 维度交换与转置:使用transpose和permute方法
1.基本数据类型
1.1 torch.FloatTensor与torch.cuda.FloatTensor
torch.FloatTensor为CPU上的数据类型
torch.cuda.FloatTensor为GPU上的数据类型
1.2 torch.DoubleTensor与torch.cuda.DoubleTensor
1.3 torch.IntTensor与torch.cuda.IntTensor
1.4 torch.LongTensor与torch.cuda.LongTensor
1.5 torch.BoolTensor与torch.cuda.BoolTensor
2 Tensor创建的常用操作
2.1 判断是否为本机是否有可用的GPU资源
2.2 CPU类型数据转换为GPU类型数据
使用数据的.cuda()方法
2.3 获取Tensor的形状
使用.shape属性
使用.size()方法
2.4 将numpy格式的数据转换为Tensor格式
2.4 将List格式的数据转换为Tensor格式
2.5 创建未初始化的Tensor
torch.empty()
torch.FloatTensor(d1,d2,d3)
2.6 设置Tensor的默认格式
torch.set_default_tensor_type
2.7 创建均匀分布与纯整数Tensor
均匀分布:torch.rand() / torch.rand_like()
纯整数: torch.randint() / torch.randint_like()
2.8 创建正态分布的Tensor
torch.randn()
torch.normal()
2.9 创建元素全相同的Tensor
torch.full()
2.10 torch.arange()
2.10 torch.linespace()
2.10 torch.logspace()
创建对数均分的1维Tensor
2.11 torch.ones / .zeros / eye
2.12 随机打散
torch.randperm 随机打乱一个数字序列
3. 索引与切片
3.1 对指定维度进行索引
Tensor.index_select()
3.2 使用…进行索引
3.3 使用masked_select进行索引
torch.masked_select()
Tensor.ge() 是否大于某个数值
4. 维度变换
4.1 torch.view() / reshape()
torch.view() 将数据以某种排列方式展示给我们,不改变存储区的真实数据,只改变头信息区,数据存储不连续是不能使用 view() 方法的。
torch.reshape(),当 tensor 满足连续性要求时,reshape() = view(),和原来 tensor 共用存储区 当 tensor;不满足连续性要求时,reshape() = **contiguous() + view(),会产生新的存储区的 tensor,与原来tensor 不共用存储区。
4.2 添加一个维度torch.unsqueeze()
4.3 减少一个维度torch.squeeze()
4.4 broadcasting:使用expand方法
函数对返回的张量不会分配新内存,即在原始张量上返回只读视图,返回的张量内存是不连续的
4.4 内存复制:使用repeat方法
与torch.expand不同的是torch.repeat返回的张量在内存中是连续的
4.5 维度交换与转置:使用transpose和permute方法
.t() 为二维矩阵转置
.transpose() 交换任意两个维度的顺序
.permute() 任意交换维度顺序
by CyrusMay 2022 06 25
相关阅读:
基于SSM的汽车在线租赁管理系统
Ubuntu 20.04 固定内核,降低版本, 锁定内核
用人工智能压缩视频的尝试
栈和队列总结
华为机试真题 C++ 实现【水仙花数】
IDEA整合docker构建打包启动配置教程
2023年中职“网络安全“—Linux系统渗透提权③
什么是线段树?
(96)IIC接口--->(001)基于FPGA实现IIC接口
UVA10410 树重建 Tree Reconstruction
原文地址:https://blog.csdn.net/Cyrus_May/article/details/125441729
最新文章
攻防演习之三天拿下官网站群
数据安全治理学习——前期安全规划和安全管理体系建设
企业安全 | 企业内一次钓鱼演练准备过程
内网渗透测试 | Kerberos协议及其部分攻击手法
0day的产生 | 不懂代码的"代码审计"
安装scrcpy-client模块av模块异常,环境问题解决方案
leetcode hot100【LeetCode 279. 完全平方数】java实现
OpenWrt下安装Mosquitto
AnatoMask论文汇总
【AI日记】24.11.01 LangChain、openai api和github copilot
热门文章
十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
奉劝各位学弟学妹们,该打造你的技术影响力了!
五年了,我在 CSDN 的两个一百万。
Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
面试官都震惊,你这网络基础可以啊!
你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
心情不好的时候,用 Python 画棵樱花树送给自己吧
通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
13 万字 C 语言从入门到精通保姆级教程2021 年版
10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系
2656653265@qq.com
京ICP备2022015340号-1
正则表达式工具
cron表达式工具
密码生成工具
京公网安备 11010502049817号