OpenMMLab实战营笔记打卡-3

mmlab可在linux与windows跑,可以使用mim用于管理所有包,用来配置mmcv与mmcls。

传统torch图像分类

  将image送入model后,得到的是各个类别的logits分数,torch训练的时候在送入损失时,交叉熵损失函数自动将分数进行Softmax,算到0-1之间的概率分布,进而在进行后续loss损失计算。

loss_fn = nn.CrossEntropyLoss()
loss = loss_fn.(pre, labels)

OpenMMLab实战营笔记打卡-3_第1张图片

   在验证阶段时,也不用再人为进行softmax,因为只是取最大概率值的那一类做对比,logits变不变softmax不会改变其最大值得索引类别号。

outputs = model(images)
 _, predicted = torch.max(outputs.data, dim=1)
# torch.max的返回值有两个,第一个是每一行的最大值是多少,第二个是每一行最大值的下标(索引)是多少
# dim = 1 列是第0个维度,行是第1个维度,表示从行这个维度比较索引
total += labels.size(0)
correct += (predicted == labels).sum().item()

MMCV

数据方面是写一个配置文件,包括数据集划分、数据文件路径、数据增强策略等。

模型model也是写一个配置,而不是torch的类。本质其实是对torch的封装。

你可能感兴趣的:(pytorch,人工智能,python)