机器学习-Pytorch基础

  1. Numpy和Pytorch可以相互转换,前者CPU上,后者GPU上,都是对矩阵进行运算,Pytorch的基本单位是张量。
  2. torch 可以初始化全为0、全为1、符合正态分布的矩阵
  3. 确定性初始化
  • torch.tensor()
  • torch.arrange()
  • torch.linspace()
  • torch.logspace()
  • ones/zeros/eye/full
  1. 随机性初始化
  • torch.Tensor()
  • torch.rand()
  • torch.rand_like()
  • torch.randint()
  • torch.randn()
  1. 直接点×关闭jupyter不正确,应该再启动一个命令行,进入打开jupyter的环境,打jupyter notebook stop
  2. torch可以和python列表一样切片
  3. 神经网络输入一维,图片是三维,所以需要维度变换,view()和reshape()都可以维度变换,后者鲁棒性更强。reshape可以多层嵌套,前者不行。化成一维可以偷懒,用-1。
  4. 增加新的维度:unsqueeze(),增加一个括号
  5. 维度缩减:squeeze()维度值为1才能删,因为维度值大于1删除会丢数据,减少个括号。
  6. 维度扩展:expand(),repeat()
  7. 维度调整:transpose(),permute()前者只能调两个维度,后者可以调整多个维度。某个算法可能只能用最后一个维度,所以需要进行维度的调整,如transformer()
  8. 广播机制:相当于先进行了unsqueeze再进行expand。小维度向大维度进行广播时,得先匹配,得先小维度和大维度相同或者小维度为1才能进行广播。
  9. 根据文档进行编程的思想!不用背API,知道这个函数的功能是什么,用到的时候去查文档。
  10. 数学能力是科研能力的上限,如果是工作的话数学要求没那么高。
  11. 张量的拼接 cat()和stack(),前者只能是需要拼接的维度不同,其他得相同;后者所有维度都必须相同。
  12. 张量的拆分split()和chunk(),前者是按间隔拆分,后者是按数量拆分
  13. 取整floor(),ceil(),round()
  14. 裁数trunc(),frac()
  15. 计算mean,max,sum,prod,min
  16. a.argmax(),a.argmin()最大值索引和最小值索引
  17. eq(),equal()前者更精细,每个位置比对,后者是整体比对。

博客1
博客2
博客3

文档1

相关推荐
YRr YRr6 分钟前
深度学习:神经网络的搭建
人工智能·深度学习·神经网络
威桑8 分钟前
CMake + mingw + opencv
人工智能·opencv·计算机视觉
爱喝热水的呀哈喽12 分钟前
torch张量与函数表达式写法
人工智能·pytorch·深度学习
rellvera19 分钟前
【强化学习的数学原理】第02课-贝尔曼公式-笔记
笔记·机器学习
肥猪猪爸1 小时前
使用卡尔曼滤波器估计pybullet中的机器人位置
数据结构·人工智能·python·算法·机器人·卡尔曼滤波·pybullet
LZXCyrus1 小时前
【杂记】vLLM如何指定GPU单卡/多卡离线推理
人工智能·经验分享·python·深度学习·语言模型·llm·vllm
我感觉。2 小时前
【机器学习chp4】特征工程
人工智能·机器学习·主成分分析·特征工程
YRr YRr2 小时前
深度学习神经网络中的优化器的使用
人工智能·深度学习·神经网络
DieYoung_Alive2 小时前
一篇文章了解机器学习(下)
人工智能·机器学习
夏沫的梦2 小时前
生成式AI对产业的影响与冲击
人工智能·aigc