🐒PyTorch入门

type
status
date
slug
summary
tags
category
icon
password

📝技巧

anaconda的下载与pytorch的安装
  1. channel 切换 的问题
  1. conda activate pytorch base上的pytorch环境
  1. import不了torchvision ,多半是版本兼容的问题
  1. 可以在装python3.8
  1. ctrl+p 看函数的参数
  1. input需要格式的话(看官方文档的),用torch.reshape(input,(-1,1,5,5))

📝概念

自动求导(Autograd)

  1. 运行时定义的框架,反向传播是根据你的代码来确定如何运行,并且每次迭代可以是不同的。

CUDA 张量

Tensors 张量 == 数组
  1. 以使GPU进行计算
  1. 初始化:
    1. 任何 以"_" 结尾的操作都会用结果替换原变量,例如: "x.copy_(y)", "x.t_()", 都会改变 "x"
    1. 加法 x + y torch.add(x, y) y.add_(x)
    1. 平均值 out = z.mean()
    1. torch.view: 可以改变张量的维度和大小
      1. 如果你有只有一个元素的张量,使用.item()来得到Python数据类型的数值
      1. NumPy转换: b = a.numpy()
      1. 所有的 Tensor 类型默认都是基于CPU, CharTensor 类型不支持到 NumPy 的转换
      1. 将CPU张量移动到GPU上来利用GPU的并行计算能力 x_cuda = x.cuda()
      1. device = torch.device("cuda")
      张量
      1. 追踪所有对于该张量的操作: .requires_grad 为 True
      1. 完成计算后 .backward(),自动计算所有的梯度,自动积累到 .grad 属性。
      1. 阻止张量跟踪,调用.detach() 或者
        1. 每个张量都有一个.grad_fn属性(如果该张量是用户手动创建的,则grad_fn为None)
        1. .requires_grad_( ... ) 可以改变现有张量的 requires_grad属性。 如果没有指定的话,默认输入的flag是 False。

          梯度

          1. 取消梯度追踪:x.detach_() x.requires_grad_(False)来实现相同的效果。
          1. 再次计算梯度:在取消了梯度追踪后,即使我们再次调用z.backward()来计算梯度,梯度的计算也将不会发生。此时,输出的梯度将是None。

          dataset

          dataset告诉数据路径: 第一张是什么,第二张是什么,几张
          dataload是表示怎么拿

          neural network == NN

          这个图的意思是: 卷积输出通道数 == 卷积核的个数 因为卷积完后一定会变成一通道
          notion image

          📝模型搭建

          数据处理

          层:

          卷积 池化 非线性激活 正则化层少用 dropout

          实战与Sequential

          卷积后只改变通道数,池化后只改变规模
          notion image

          损失函数与反向传播

          完整训练过程

          用上GPU:把网络模型,数据(输入,标注),损失函数 都.cuda()就好了

          实战技巧

          auto_augment: 当 auto_augment 参数设置为True时,GarbageDataset类会在获取每个样本时随机选择一个预定义的AutoAugment策略,并将该策略应用于对应的图像上。AutoAugment策略包括一系列预定义的图像增强操作,如旋转、剪切、翻转等,用于改变图像的外观和结构。
          A custom Dataset class must implement three functions: init, len, and getitem.
           
           
           
          上一篇
          深度学习算法
          下一篇
          Transformer
          Loading...
          文章列表
          一枚热爱技术与产品的产品经理
          基本信息
          薯塔AI
          产品修炼
          技术分享
          编码知识
          AI相关
          行业知识