- Published on
PyTorch 2.0 学习
张量的维度
张量的维度可以通过秩(rank)、形状(shape)和大小(size)来描述。
秩(Rank):简单地告诉我们张量有多少个维度。标量的秩为0,向量的秩为1,矩阵的秩为2,张量的秩为3或更高。
形状(Shape):张量的形状是每个维度中的元素数量。
大小(Size):张量中元素的总数,可以通过将形状中的元素数量相乘计算得出。
dim 参数
dim 告诉 torch.mean 沿哪一条轴做平均。
dim=0→ 纵向压(把每一列的所有行加起来再平均),结果长度 = 列数。dim=1→ 横向压(把每一行的所有列加起来再平均),结果长度 = 行数。
例子:
t = torch.tensor([[1, 2],
[3, 4]])
torch.mean(t, dim=0) # tensor([2, 3])
torch.mean(t, dim=1) # tensor([1.5, 3.5])
一句话:dim=0 对列算均值,dim=1 对行算均值。
激活函数
ReLU:大于0保持原样,小于0直接归零,解决梯度消失问题
Sigmoid:把任意数压缩到0-1之间,用于二分类概率输出
Tanh:把任意数压缩到-1到1之间,以0为中心,比Sigmoid更优
损失函数
交叉熵损失:衡量预测概率分布与真实分布的差异,用于分类任务
均方误差损失:计算预测值与真实值差的平方,用于回归任务
负对数似然损失:对预测概率取负对数,越小表示预测越准
优化器
SGD:沿着梯度反方向一小步一小步更新参数,简单但可能震荡
Adam:结合了动量法和自适应学习率,能自动调整步长,收敛更快更稳
THE END