MMLAB学习-MMCLS项目-修改配置文件和可视化

在配置文件中我们也可以修改配置为自己想要的结果

修改neck

MMLAB学习-MMCLS项目-修改配置文件和可视化_第1张图片

自己重写一个损失函数

MMLAB学习-MMCLS项目-修改配置文件和可视化_第2张图片

# 仿照其他损失函数导入进来
import torch
import torch.nn as nn
from ..builder import LOSSES
from .utils import weighted_loss

# 在这里重写损失函数
@weighted_loss
def l1_loss(pred, target):
    target = nn.functional.one_hot(target,num_classes=102)
    assert pred.size() == target.size() and target.numel() > 0
    loss = torch.abs(pred - target)
    return loss

@LOSSES.register_module()
class L1Loss(nn.Module):

    def __init__(self, reduction='mean', loss_weight=1.0):
        super(L1Loss, self).__init__()
        self.reduction = reduction
        self.loss_weight = loss_weight

    def forward(self,
                pred,
                target,
                weight=None,
                avg_factor=None,
                reduction_override=None):
        assert reduction_override in (None, 'none', 'mean', 'sum')
        reduction = (
            # 调用我们的损失函数
            reduction_override if reduction_override else self.reduction)
        loss = self.loss_weight * l1_loss(
            pred, target, weight, reduction=reduction, avg_factor=avg_factor)
        return loss

最后还需要在_init_.py文件中导入我们的损失函数

MMLAB学习-MMCLS项目-修改配置文件和可视化_第3张图片

再回我们的配置文件中改成我们自己写的损失函数

MMLAB学习-MMCLS项目-修改配置文件和可视化_第4张图片

继续添加数据增强模块,先找到transforms,里面有很多数据增强的类和函数,找到自己想用的,拿去在自己的配置文件中加上就行

MMLAB学习-MMCLS项目-修改配置文件和可视化_第5张图片

这里选择再加上ColorJitter的数据增强,可以根据他的参数介绍去我们自己的配置文件中改

MMLAB学习-MMCLS项目-修改配置文件和可视化_第6张图片

然后在配置文件的训练集中加入,亮度、对比度、饱和度先都设置成0.5MMLAB学习-MMCLS项目-修改配置文件和可视化_第7张图片MMLAB学习-MMCLS项目-修改配置文件和可视化_第8张图片同理再加入mixup数据增强

MMLAB学习-MMCLS项目-修改配置文件和可视化_第9张图片

加载预训练模型

在模型配置中加载预训练模型,这个模型可以去GitHub下载MMLAB学习-MMCLS项目-修改配置文件和可视化_第10张图片 可视化

MMLAB学习-MMCLS项目-修改配置文件和可视化_第11张图片

参数MMLAB学习-MMCLS项目-修改配置文件和可视化_第12张图片去相应的文件中查看MMLAB学习-MMCLS项目-修改配置文件和可视化_第13张图片做了哪些变化都可以看到MMLAB学习-MMCLS项目-修改配置文件和可视化_第14张图片

你可能感兴趣的:(#,MMLAB,学习,python,深度学习)