机器学习-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

相关推荐
NAGNIP7 小时前
轻松搞懂全连接神经网络结构!
人工智能·算法·面试
moshuying9 小时前
别让AI焦虑,偷走你本该有的底气
前端·人工智能
董董灿是个攻城狮9 小时前
零基础带你用 AI 搞定命令行
人工智能
喝拿铁写前端11 小时前
Dify 构建 FE 工作流:前端团队可复用 AI 工作流实战
前端·人工智能
阿里云大数据AI技术12 小时前
阿里云 EMR Serverless Spark + DataWorks 技术实践:引领企业 Data+AI 一体化转型
人工智能
billhan201612 小时前
MCP 深入理解:协议原理与自定义开发
人工智能
Jahzo12 小时前
openclaw桌面端体验--ClawX
人工智能·github
billhan201612 小时前
Agent 开发全流程:从概念到生产
人工智能
threerocks12 小时前
过了个年,AI 圈变天了?但没人告诉你为什么
人工智能