mmfewshot 框架概述、环境搭建与测试(一)

一、mmfewshot 框架概述

少样本学习的基本流程:
我们将为所有小样本学习任务引入一个简单的基线,以进一步说明小样本学习的工作原理。最明显的流程是微调。它通常包括两个步骤:在大规模数据集上训练模型,然后在小样本数据上进行微调。对于图像分类,我们首先使用交叉熵损失对训练集的模型进行预训练,然后我们可以迁移主干并微调新的分类头。对于检测,我们可以首先在训练集上预训练一个 faster-rcnn,然后在一些实例上微调一个新的 bbox 头来检测新的类别。在许多情况下,微调是一种简单但有效的小样本学习策略。
在这里插入图片描述
MMFewShot 由 4 个主要部分组成datasets、models、core和apis。
datasets用于数据加载和数据增强。在此部分中,我们支持用于分类和检测算法的各种数据集、pipelines用于预处理图像的有用数据增强转换以及灵活的数据采样datasetswrappers
models包含模型和损失函数。
core为模型训练和评估提供评估工具和定制钩子。
apis为模型训练、测试和推理提供高级 API。

二、mmfewshot 环境搭建

Step 1.创建conda虚拟环境并激活

conda create -n mmfewshot python=3.8 -y   #创建环境
conda activate mmfewshot                  #激活环境

Step 2.安装 PyTorch

conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch  #安装 PyTorch and torchvision (官方)
 
#如果网不好,可以这样安装
pip3 install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio===0.11.0 -f https://download.pytorch.org/whl/lts/1.8/torch_lts.html  -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
 
#验证是否安装成功
 
>>> import torchvision
>>> import torch
>>> import.__version__
  File "<stdin>", line 1
    import.__version__
          ^
SyntaxError: invalid syntax
>>> torch.__version__
'1.11.0+cu113'

在这里插入图片描述

Step 3.安装mmcv-full 1.6.0

1、pip安装
pip install mmcv-full==1.6.0
2、源码安装
MMCV_WITH_OPS=1 python -m pip install -e . -v

在这里插入图片描述
验证安装

python .dev_scripts/check_installation.py

三、数据准备

1、Few Shot Classification

Preparing Mini-ImageNet Dataset

在这里插入图片描述

2、Few Shot Detection

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、Few Shot Detection Model Zoo

在这里插入图片描述

TFA(迁移学习)

FSCE(迁移学习)

Attention_RPN(QueryAwareDataset)

FSDETVIEW(NwayKshotDataset)

Meta_RCNN(NwayKshotDataset)

MPSR(TwoBranchDataset)

五、案例测试

1、少量样本检测演示

Attention RPN Inference with Support Instances Demo。

我们提供了一个演示脚本来测试单个查询图像,给定支持实例图像的目录。支持图像的文件名将用作类名。图像的形状将用作实例的 bbox,即 [0, 0, width, height]。

python demo/demo_attention_rpn_detector_inference.py \
    ${IMG_ROOT} ${CONFIG_FILE} ${CHECKPOINT_FILE} \
    [--device ${GPU_ID}] \
    [--score-thr ${BBOX_SCORE_THR} --support-images-dir ${DIR_ROOT}]
python demo/demo_attention_rpn_detector_inference.py \
    demo/demo_detection_images/query_images/demo_query.jpg \
    configs/detection/attention_rpn/coco/attention-rpn_r50_c4_4xb2_coco_base-training.py \
    https://download.openmmlab.com/mmfewshot/detection/attention_rpn/coco/attention-rpn_r50_c4_4xb2_coco_base-training_20211102_003348-da28cdfd.pth \
    --support-images-dir demo/demo_detection_images/support_images

在这里插入图片描述

在这里插入图片描述

六、环境问题

1、问题 Error:AttributeError: module ‘numpy‘ has no attribute ‘bool‘.

在这里插入图片描述

1、降低numpy版本

# 卸载当前NumPy版本
pip uninstall numpy

# 安装指定版本的NumPy
pip install numpy==1.19.5 -i https://pypi.tuna.tsinghua.edu.cn/simple

在这里插入图片描述
虽然这种方法能够暂时解决NumPy库中没有bool属性的问题,但我们必须意识到,这可能会引发新的问题。由于一些第三方库(如opencv)需要与特定版本的NumPy兼容,因此,仅仅为了修复一个bug而卸载当前的NumPy库可能会导致更多的错误。因为新安装的NumPy版本可能无法与这些第三方库完全兼容,这无疑增加了潜在的麻烦和风险。

2、定位错位源码,修改源码

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值