-
机器学习-Pytorch基础
- Numpy和Pytorch可以相互转换,前者CPU上,后者GPU上,都是对矩阵进行运算,Pytorch的基本单位是张量。
- torch 可以初始化全为0、全为1、符合正态分布的矩阵
- 确定性初始化
- torch.tensor()
- torch.arrange()
- torch.linspace()
- torch.logspace()
- ones/zeros/eye/full
- 随机性初始化
- torch.Tensor()
- torch.rand()
- torch.rand_like()
- torch.randint()
- torch.randn()
- 直接点×关闭jupyter不正确,应该再启动一个命令行,进入打开jupyter的环境,打jupyter notebook stop
- torch可以和python列表一样切片
- 神经网络输入一维,图片是三维,所以需要维度变换,view()和reshape()都可以维度变换,后者鲁棒性更强。reshape可以多层嵌套,前者不行。化成一维可以偷懒,用-1。
- 增加新的维度:unsqueeze(),增加一个括号
- 维度缩减:squeeze()维度值为1才能删,因为维度值大于1删除会丢数据,减少个括号。
- 维度扩展:expand(),repeat()
- 维度调整:transpose(),permute()前者只能调两个维度,后者可以调整多个维度。某个算法可能只能用最后一个维度,所以需要进行维度的调整,如transformer()
- 广播机制:相当于先进行了unsqueeze再进行expand。小维度向大维度进行广播时,得先匹配,得先小维度和大维度相同或者小维度为1才能进行广播。
- 根据文档进行编程的思想!不用背API,知道这个函数的功能是什么,用到的时候去查文档。
- 数学能力是科研能力的上限,如果是工作的话数学要求没那么高。
- 张量的拼接 cat()和stack(),前者只能是需要拼接的维度不同,其他得相同;后者所有维度都必须相同。
- 张量的拆分split()和chunk(),前者是按间隔拆分,后者是按数量拆分
- 取整floor(),ceil(),round()
- 裁数trunc(),frac()
- 计算mean,max,sum,prod,min
- a.argmax(),a.argmin()最大值索引和最小值索引
- eq(),equal()前者更精细,每个位置比对,后者是整体比对。
博客1
博客2
博客3
文档1
-
相关阅读:
Phthon下载库函数
Vue自定义指令=>局部指令定义及全局指令定义
vector的模拟实现
机器学习从0到1
STL常用容器——queue容器的使用
华为数通方向HCIP-DataCom H12-821题库(单选题:501-520)
Mesh Shader介绍
Python 框架学习 Django篇 (六) 数据表关联、ORM关联
将LZO形式的文件放入HDFS中并压缩,LZO文件必须创建索引才支持切片
C# 结构体:定义、示例
-
原文地址:https://blog.csdn.net/qq_61735602/article/details/133605994