随笔分类 - Machine Learning/Computer Vision
摘要:简单的说,Label Smoothing就是把one-hot向量从[0,0,1,0,0,0,...,0]变成[0.01,0.01,0.8,0.01,0.01,0.01,...,0.01],用公式表示,就是 其中,k是类别数量,a是一个较小的数.这样做的目的是为了缓解模型过于武断的问题,增强模型的泛化
阅读全文
摘要:跑Cifar,发现训练时间很长,仔细一看,原来cudaGetDeviceCount()返回的是0,就是说没有找到GPU,没有用GPU跑,是在用CPU跑,难怪时间这么长. 在终端输入nvidia-smi,出现了以下错误: Failed to initialize NVML: Driver/librar
阅读全文
摘要:学习率的设置是深度学习中一个比较重要的问题,Cyclical Learning Rates(CLR)提出了一种新的方法,即让学习率周期性的变化,而不是像之前的方法那样让学习率单调递减变化. Cyclical learning rates其实比较简单,只需要3个参数: (1)base_lr:学习率的最
阅读全文
摘要:很多深度学习都是多任务学习(Multi-Task Learning, MTL),需要对多个Loss同时优化,模型的性能受各Loss的权重的影响,手工选择权重成本太高,是不可能的,于是提出了基于Uncertainty的自动学习权重的方式. 下图是一个典型的多任务学习场景,需要同时满足语义分割,实例分割
阅读全文
摘要:FCOS3D是在2D检测器FCOS的基础上提出的,是一种单目3D检测算法,根据RGB图像进行3D目标检测.FCOS预测的是一个前景点到边界框的4个距离,而FCOS3D需要预测更多的东西,包括3D中心点,3D尺寸,以及目标的方向. 整体结构上,FCOS3D和FCOS非常类似,Backbone和Neck
阅读全文
摘要:OS: Ubuntu20.04 GPU: RTX 3060(12G) python==3.7.12 cuda==11.2 cudnn==cudnn-11.2-linux-x64-v8.1.1.33 pytorch==1.11.0 torchaudio==0.11.0 torchvision==0.1
阅读全文
摘要:在Ubuntu下安装PyTorch遇到了下面的错误: The following packages are causing the inconsistency 下面是一长串的包名,有人说需要手动把这些包删除了,但是包太多,一个一个删除太费时间,而且有些包根本删不掉,最好的办法就是新建一个Conda环
阅读全文
摘要:Focal loss在文件.\mmdet\models\losses\focal_loss.py实现,代码如下: import torch import torch.nn as nn import torch.nn.functional as F from mmcv.ops import sigmo
阅读全文
摘要:现有的目标检测器对小目标的检测效果不好,针对这种情况,作者提出了Feedback-driven Data Provider,根据训练过程中小对象对损失值的的贡献率,提供小对象训练数据的方法.Stitcher就是把多张图片(一般是4张)缩小后拼接在一起,从而产生更多小对象. 作者以Faster RCN
阅读全文
摘要:现有的模型存在两个问题: (1)classification score和quality score(包括IoU和centerness score)训练和推理时不一致.训练的时候这两个score是分别训练的,推理的时候将这两个score相乘作为NMS的依据,如下图(a)所示. 这有可能造成一些错误,
阅读全文
摘要:ATSS(Adaptive Training Sample Selection)是一种新的样本选择方法,和传统的设置一个固定的IOU阈值不同,ATSS对每一个GT Box,根据它的统计信息计算出一个IOU阈值.具体的算法如下图所示: 对每一个GT box,在特征金字塔FPN的每一层,选择距离中心最近
阅读全文
摘要:D2Det是一种two-stage算法,类似于Faster-RCNN,在Faster-RCNN的基础上进行了一些改进,总体框架如下图(a)所示: 和Faster-RCNN相比,改进的地方在于: 1. Dense local regression 如上图(b)所示,Faster-RCNN是对RPN提出
阅读全文
摘要:MMDetection是一个基于Pytorch实现的深度学习和目标检测代码库,包含了Faster-RCNN,YOLO,SSD等主流的目标检测算法代码和已经训练好的模型,方便我们进行目标检测算法的研究.MMDetection的安装步骤如下: 1. 创建一个Conda环境并Activate,很简单,就不
阅读全文
摘要:RefineDet可以看成是SSD,RPN,FPN算法的结合,其主要思想是:Faster-RCNN等two-stage算法,对box进行两次回归,因而精度高,但是速度慢;YOLO等one-stage算法,对box只进行一个回归,速度快,但是精度低.RefineDet将两者结合起来,对box进行两次回
阅读全文
摘要:Hyperband算法的伪代码如下: R是单个超参数组合能够分配的最大资源预算,如1个epoch就是1个预算,R=81,就表示81个epoch,smax=4,B=5R=405,当s=4时,初始为81个点,每个点训练1个epoch,然后选择最好的27个点,每个点再训练3个epoch,...,直到最后只
阅读全文
摘要:超参数(Hyper-parameter)是定义模型或者定义训练过程的参数,是相对于模型参数(Parameter)来说的,比如目标检测网络的网络结构,激活函数的选择,学习率的大小,Anchor的尺寸等等,都属于超参数.超参数对网络的性能(如目标检测网络的mAP等)有很大的影响,因此需要找到性能最优的参
阅读全文
摘要:提交COCO Detection Challenge (Bounding Box)时出现错误: WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory lim
阅读全文
摘要:和原始的NMS不同,DIoU-NMS不仅考虑了IoU的值,还考虑了两个Box中心点之间的距离,使用了新的公式决定一个Box是否被删除: 其中,RDIoU是两个Box中心点之间的距离,用下面的公式表示: 其中p(.)是距离,b和bgt表示两个box,c是包含两个box的最小box的对角线长度,如下图所
阅读全文
摘要:非极大值抑制(Non-Maximum Suppression,NMS)是在目标检测中广泛应用的一种方法:首先对每一个预测框给出一个分类和置信度,对每一类的框,按照置信度从小到大排序;然后选中置信度最大的框,依次和前面的同类框计算IOU,对于IOU大于阈值的框,就直接删除掉(也可以理解成将这些框的置信
阅读全文