深度学习
深度学习
石湖一叶
就算昨天失败,今天也是新的一天。
展开
-
迁移学习中的zero-shot one-shot few-shot
Zero-shot Learning训练集中没有某个类别的样本,但是如果我们可以学到一个牛逼的映射,这个映射好到我们即使在训练的时候没看到这个类,但是我们在遇到的时候依然能通过这个映射得到这个新类的特征。即: 对于训练集中没有出现过的 类别,模型能自动创造出相应的映射: XX -> YY。One-shot Learning训练集中,每个类别都有样本,但都只是少量样本(只有一个或几个) 。此时,我们可以在一个更大的数据集上或者利用knowledge graph、domain...原创 2020-11-16 21:22:31 · 1481 阅读 · 0 评论 -
2020cv顶会 阅读ing笔记
AugFPN: Improving Multi-scale Feature Learning for Object Detection 针对FPN融合前,融合时,融合后得三个缺陷做出改进原创 2020-11-13 09:51:49 · 974 阅读 · 0 评论 -
one-stage和two-stage网络的区别
One-stage网络以yolo系列网络为代表的,two-stage网络以faster-rcnn为代表的,它们的主要区别1.one-stage网络速度要快很多2.one-stage网络的准确性要比two-stage网络要低为什么one-stage网络速度要快很多?首先来看第一点这个好理解,one-stage网络生成的ancor框只是一个逻辑结构,或者只是一个数据块,只需要对这个数据块进行分类和回归就可以,不会像two-stage网络那样,生成的 ancor框会映射到feature map的转载 2020-11-05 21:55:30 · 1804 阅读 · 0 评论 -
戴口罩的人脸识别
实现思路:使用的是武汉大学公开的口罩遮挡人脸数据集,下载地址https://github.com/X-zhangyang/Real-World-Masked-Face-Dataset。其中有一类是真实人脸口罩遮挡(多为明星),如图所示为白敬亭带着真口罩。需要注意的是每个明星的照片很少只有两三个,所以我没有将它split为训练集和验证集。载入数据集的时候,使用ImageFolder,将文件夹的名字作为标注。选择合适的分类网络进行训练即可。踩过的坑:①在使用ImageFolder读取数据集.原创 2020-11-05 13:32:50 · 3009 阅读 · 7 评论 -
Fast RCNN、Faster RCNN学习笔记
Fast RCNN步骤: feature extraction:只运行一次CNN以提取feature map sample ROI:在原图上选择性搜索产生Region Proposals ROI projection:将Region Proposals投影到feature map上 ROI pooling:将ROI projection后的特征图变成固定大小的特征输出 分类和回归:通过FC生成bbox和class...原创 2020-11-03 17:28:09 · 217 阅读 · 0 评论 -
YOLOv4学习笔记
构造YOLOv4结构的代码部分:import torchimport torch.nn as nnfrom collections import OrderedDictfrom nets.CSPdarknet import darknet53def conv2d(filter_in, filter_out, kernel_size, stride=1): pad = (kernel_size - 1) // 2 if kernel_size else 0 return nn.原创 2020-10-28 20:44:11 · 703 阅读 · 2 评论 -
SSD学习笔记
论文部分 default box部分: 对特征图的每一个网格生成k个default box,记待检测种类c,每个default box有4个调整参数。所以对规模为m*n的特征图生成(c+4)kmn个参数。 正样本选取: 1,对每一个GT box,都去匹配和他的iou最大的default box作为正样本2,对每一个default box,只要和任一个GT的iou大于0.5,也认为是正样本 损失函数: 总损失函数是分类损失conf和定位损失loc的加权平均值,其中α是超参数,原创 2020-10-28 14:41:14 · 164 阅读 · 0 评论 -
数据增强之Mosaic和Cutmix的pytorch实现
Mosaic def get_random_data_with_Mosaic(self, annotation_line, input_shape, hue=.1, sat=1.5, val=1.5): h, w = input_shape min_offset_x = 0.3 min_offset_y = 0.3 scale_low = 1 - min(min_offset_x, min_offset_y) sc.原创 2020-09-20 13:51:10 · 1484 阅读 · 3 评论 -
SE-Net:Squeeze-and-Excitation blocks
Squeeze:将每个二维特征通道变为一个实数 并且输出的维度和输入的特征通道数相匹配 相当于Global Avg Pooling: nn.AdaptiveAvgPool2d(1)Excitaton:通过参数w来为每个特征通道生成权重 w被学习用来表示特征通道间的相关性Recalibration:将Excitaton的输出权重element-wise multiplication到之前的特征上...原创 2020-09-19 17:13:16 · 463 阅读 · 0 评论 -
标签平滑的作用
标签平滑是一种损失函数的修正,可以提高图像分类的准确性。简单的解释是,它将神经网络的训练目标从“1”调整为“1-label smoothing adjustment”,这意味着神经网络被训练得对自己的答案不那么自信。默认值通常是 0.1,这意味着目标答案是 0.9(1 - 0.1)而不是 1。对于我们的二分类猫/狗示例,0.1 的标签平滑意味着目标答案将是 0.90(90%确信)这是一个狗的图像,而 0.10(10%确信)这是一只猫,而不是先前的向 1 或 0 移动的结果。由于不太确定,它作为一种正...原创 2020-08-08 17:07:57 · 2229 阅读 · 0 评论 -
windows系统下用conda安装gpu版本的pytorch
安装PYTORCH我是在pycharm中安装的,首先下载好pycharm。然后点击File→Settings→Project Interprters在这个界面你可以选择想用那个版本的python,因为除了电脑中原有的,他会默认指定pycharm自带的。所以在这里可以选择使用之前电脑中已有的。然后点击+,在manage repositories中可以配置国内的源,如清华 豆瓣之后在这张图上边的搜索框中输入pytorch,再点击左下角的install选项就好。安装成功后,输入im原创 2020-06-17 23:16:37 · 819 阅读 · 0 评论 -
1×1卷积的作用
1 - 引入 在我学习吴恩达老师Deeplearning.ai深度学习课程的时候,老师在第四讲卷积神经网络第二周深度卷积网络:实例探究的2.5节网络中的网络以及1×1卷积对1×1卷积做了较为详细且通俗易懂的解释。现自己做一下记录。2 - 1×1卷积理解 假设当前输入张量维度为6×6×32,卷积核维度为1×1×32,取输入张量的某一个位置(如图黄色区域)与卷积核进行运算。实际上可以看到,如果把1×1×32卷积核看成是32个权重WW,输入张量运算的1×1×32部分为输入xx,那么每一个卷积操作相转载 2020-06-11 21:33:34 · 1396 阅读 · 1 评论 -
为mxnet配置cuda 9.2
1,安装cuda按照《动手学深度学习》的书本和社区的建议,我下载的是9.2版本的cuda。下载链接,https://developer.nvidia.com/cuda-92-download-archive。安装的话直接跟着提示走就好,然后再控制面板看到cuda就说明安装完成。2,更新环境将原本的“mxnet”改为“mxnet-cu92”。92即为cuda版本,如果安装其他版本的cuda,那也要相应修改。更行过程中我使用的是清华的源,但也timed out很多次。无奈试了试让电脑连接手机原创 2020-06-09 21:00:49 · 734 阅读 · 0 评论 -
mxnet下手动下载FashionMNIST到本地之后进行读取
数据准备 直接从github上下载数据: 将数据放置在~/.mxnet/datasets/fashion-mnist/文件夹下。 获取sha 个人觉得最简单的办法是修改:/path/mxnet/gluon/utils.py的download函数 if not verify_ssl: warnings.warn( 'Unverified HTTPS request is being made (verify_ssl=False). '原创 2020-06-03 22:39:14 · 731 阅读 · 0 评论