pytorch 基础内容

  1. 张量概念及创建
    1.1 张量概念
    张量就是一个多维数字,是标量、向量、矩阵的高维拓展
    Pytorch 0.4.0后,Variable 和 Tenasor 合在了一起


    1.2 张量创建
    1.2.1 直接创建
    torch.tensor()torch.from_numpy(ndarry) 从 numpy 创建 tensor
    1.2.2 依据数值创建
    torch.zero() 根据 size 创建全 0 张量
    torch.zero_like() 根据 input 创建全 0 张量
    torch.ones()torch.ones_like() 创建全1向量
    torch.full()torch.full_like() 创建指定数据张量
    torch.arange() 创建等差的1维张量
    torch.linspace() 创建均分的1维张量
    torch.longspace() 创建对数均分1维张量
    torch.eye() 创建单位对角矩阵(2维张量)
    1.3 依概率分布创建张量
    torch.normal 生成正态分布(高斯分布))
    4种模式:mean 和 std 分别为标量和张量情况
    torch.randn()torch.randn_like() 生成标准正态分布
    torch.rand()torch.rand_like() 生成在 [ 0, 1 ) 上的均匀分布
    torch.randint()torch.randint_like() 生成在 [ low, height ) 上的均匀分布
    torch.randperm() 生成从 0 到 n-1 的随机排列,n为张量长度
    torch.bernoulli() 以 input 为概率,生成伯努利分布(0-1分布,两点分布)

  2. 张量操作及运算
    2.1 拼接与切分
    torch.cat() 将张量按维度dim进行拼接
    torch.stack() 在新创建的维度dim上进行拼接
    torch.chunk() 将张量按维度dim进行平均切分
    torch.split() 将张量按维度dim进行切分
    2.2 索引
    torch.index_select() 在维度dim上按index索引数据
    torch.marked_select() 按mask中的True进行索引
    2.3 变换
    torch.reshape() 变换张量形状【共享内存】
    torch.transpose() 交换张量的两个维度
    torch.t() 2位张量的转置,对于举证而言
    等价于torch.transpose(input,0,1)
    2.4 数学运算
    加减乘除、对数,指数,幂函数,三角函数

  3. 线性回归
    分析一个变量和另外多个变量之间的关系方法
    如:y = wx + b
    因变量:y 自变量:x 关系:线性 分析:求解w,b

求解步骤:
1)确定模型
2)选择损失函数
3)求解梯度并更新w, b

  1. 计算图与动态图
    主要表述运算的有向无环图
    元素:结点和边,分布表示数据和运算
    参考链接: https://blog.csdn.net/dragongiri/article/details/107371919

  2. autogradn 和逻辑回归

你可能感兴趣的:(pytorch 基础内容)