深度学习
文章平均质量分 84
兜兜转转m
有事私聊留下联系方式
展开
-
基于视频学习ShuffleNet与V2的网络结构
目 录一、ShuffleNet_v11. ShuffleNet 基本单元2. ShuffleNet 网络结构3.ShuffleNet 代码二、ShuffleNet_v21.对比v1与v2版本的基础单元2.ShuffleNet_v2网络结构3.ShuffleNet_v2 代码全文较长认真读完需要20分钟,分析网络结构再需要1小时。一、ShuffleNet_v11. ShuffleNet 基本单元图(a) 是传统的ResNet残差结构,首先是1x1卷.原创 2021-01-30 10:58:51 · 691 阅读 · 0 评论 -
基于视频分析 Mobilenetv2 网络结构
Mobilenetv2 中使用的的激活函数是ReLU61,了解ReLU6 ReLU6(x) =0 x < 0 ReLU6(x) =x 6>x>0 ReLU6(x) =6 x>6图像如下:其核心如下图: 开头将深度变到32,结尾将深度变到1280 ,中间进行残差卷积(InvertedResidual)图中的 t :代表 膨胀率,为 1 时不膨胀,不为1时进行膨胀网络结...原创 2021-01-29 20:27:56 · 603 阅读 · 0 评论 -
cats_dogs classification
今天讲二分类,旨在学习Pytorch 基础文件夹分布相信你能很好的看清楚了,imgs 是下载的图片,不进行分类。data 数据存储log是tensorboard 存储文件,output是权值文件,test是测试make_file.py注意original_dataset_dir 这个文件路径base_dir 存储的文件路径数据将被分为成data文件。import osimport numpy as npimport shutil# kaggle原始...原创 2021-01-19 16:12:18 · 396 阅读 · 0 评论 -
详解TensorboardX
目录什么是TensorboardX 配置TensorboardX 环境要求 安装 使用 pip 安装 从源码安装 使用TensorboardX 使用各种 add 方法记录数据 数字 (scalar) 图片 (image) 直方图 (histogram) 运行图 (graph) 嵌入向量 (embedding) 其他 一些tips什么是TensorboardXTensorboard 是 Te...转载 2021-01-18 20:38:19 · 4479 阅读 · 1 评论 -
Pytorch 目标检测学习 Day 7
DetNet:为检测而生出现问题:而图像分类与物体检测两个任务天然存在着落差,分类任务侧重于全图的特征提取,深层的特征图分辨率很低;而物体检测需要定位出物体位置,特征图分辨率不宜过小,因此造成了以下两种缺陷:大物体难以定位:对于FPN等网络,大物体对应在较深的特征图上检测,由于网络较深时下采样率较大,物体的边缘难以精确预测,增加了回归边界的难度。 小物体难以检测:对于传统网络,由于下采样率大造成小物体在较深的特征图上几乎不可见;FPN虽从较浅的特征图来检测小物体,但浅层的语义信息较弱,且融合深原创 2021-01-04 16:57:39 · 278 阅读 · 0 评论 -
Pytorch 目标检测学习 Day 6
特征金字塔:FPN出现问题:为了增强语义性,传统的物体检测模型通常只在深度卷积网络的最后一个特征图上进行后续操作,而这一层对应的下采样率(图像缩小的倍数)通常又比较大,如16、32,造成小物体在特征图上的有效信息较少,小物体的检测性能会急剧下降,这个问题也被称为多尺度问题。解决方案:解决多尺度问题的关键在于如何提取多尺度的特征。传统的方法有图像金字塔(Image Pyramid)主要思路是将输入图片做成多个尺度,不同尺度的图像生成不同尺度的特征缺点:非常耗时,计算量也很大FPN的总体原创 2021-01-04 16:09:45 · 578 阅读 · 0 评论 -
Pytorch 目标检测学习 Day 5
继往开来之DenseNetDenseNet最大化了这种前后层信息交流,通过建立前面所有层与后面层的密集连接,实现了特征在通道维度上的复用,使其可以在参数与计算量更少的情况下实现比ResNet更优的性能,图1网络由多个DenseBlock与中间的卷积池化组成,核心就在Dense Block中。Dense Block中的黑点代表一个卷积层,其中的多条黑线代表数据的流动,每一层的输入由前面的所有卷积层的输出组成。注意这里使用了通道拼接(Concatnate)操作,而非ResNet的逐元素相加操作。原创 2021-01-03 21:17:41 · 263 阅读 · 0 评论 -
Pytorch 目标检测学习 Day 4
里程碑之ResNet出现问题:一方面会产生梯度消失现象;另一方面越深的网络返回的梯度相关性会越来越差,接近于白噪声,导致梯度更新也接近于随机扰动。ResNet(Residual Network,残差网络)较好地解决了这个问题,此后的分类、检测、分割等任务也大规模使用ResNet作为网络骨架。ResNet的思想在于引入了一个深度残差框架来解决梯度消失问题,即让卷积网络去学习残差映射,而不是期望每一个堆叠层的网络都完整地拟合潜在的映射(拟合函数)。通过引入一个shortcut(捷径)分支,将原创 2021-01-03 20:50:34 · 225 阅读 · 0 评论 -
Pytorch 目标检测学习 Day 3
详解GoogLeNetv1GoogLeNet-1 以下简称为Inception v1好处:Inception v1网络是一个精心设计的22层卷积网络,并提出了具有良好局部特征结构的Inception模块,即对特征并行地执行多个大小不同的卷积运算与池化,最后再拼接到一起。由于1×1、3×3和5×5的卷积运算对应不同的特征图区域,因此这样做的好处是可以得到更好的图像表征信息。使用三个不同大小的卷积核进行卷积运算,同时还有一个最大值池化,通过将这4部分级联起来(通道拼接),送入下一层在上.原创 2021-01-03 17:14:57 · 197 阅读 · 0 评论 -
Pytorch 目标检测学习 Day 2
1.网络骨架:Backbone当前的物体检测算法虽然各不相同,但第一步通常是利用卷积神经网络处理输入图像,生成深层的特征图,然后再利用各种算法完成区域生成与损失计算,这部分卷积神经网络是整个检测算法的“骨架”,也被称为Backbone。常用骨架:VGGNet :走向深度,Inception:纵横交错,ResNet:残差结构DenseNet:多重残差,FPN:特征金字塔,DetNet:专为检测。2.神经网络基本组成物体检测算法使用的通常是包含卷积计算且具有深度结构的前馈神经网络,如卷积层、原创 2021-01-03 15:45:45 · 410 阅读 · 0 评论 -
Pytorch 目标检测学习 Day 1
1.nn.Module 类建立一个三层简单的网络。首先定义线性Linear(即定义学习参数,到后面学习深度网络时候,实则是不需要的),然后进行前向传播定义(即网络层的定义)。import torchfrom torch import nnclass Linear(nn.Module): def __init__(self,in_dim,out_dim): super(Linear,self).__init__() #调用nn.Module 来构造函数原创 2021-01-02 20:18:51 · 268 阅读 · 0 评论 -
YOLOV5学习
1.检测问题的输入输出是什么?怎么用数字表示?输入:矩阵输出:1.x,y,w,h, 2.p1,p2,p3,p4(四个)3.Cx,Cy, w,h 4 x,y,w,h,angle(不同的角度)(检测模型输出的是一个向量)2.分类问题的输入输出是什么?怎么用数字表示?输入:矩阵 输出:一个Onehot向量。分类层的设计方法:画框分类的伪代码:...原创 2020-12-26 20:14:12 · 889 阅读 · 0 评论 -
Python 之CV2详解
气死人不偿命,本来觉得看一下代码了解一下CV2挺好,但是发现此路不通。然后还是乖乖把代码复现一遍!!!一、读入图像使用函数cv2.imread(filepath,flags)读入一副图片 filepath:要读入图片的完整路径 flags:读入图片的标志 cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道 cv2.IMREAD_GRAYSCALE:读入灰度图片 cv2.IMREAD_UNCHANGED:顾名思义,读入完整图片,包括alpha通.原创 2020-12-17 15:09:05 · 45268 阅读 · 3 评论 -
Pytorch 的网络结构
Net 实例化一个Net,也就是继承自nn.Module的类,当实例化后。本质上就是维护了以下8个字典(OrderedDict):_parameters_buffers_backward_hooks_forward_hooks_forward_pre_hooks_state_dict_hooks_load_state_dict_pre_hooks_modules1._parametersparameters就是Net的权重参数(比如conv的weight、conv的bias、原创 2020-12-15 21:47:51 · 1185 阅读 · 0 评论 -
3DCNN学习记录-函数篇
在学习3DCNN过程中,遇到许多新函数一知半解,现在记录学习一下。train_test_split:需要从sklearn.model_selection 导入,导入方式如下:fromsklearn.model_selectionimporttrain_test_splitX_train,X_test, y_train, y_test =cross_validation.train_test_split(train_data,train_target,test_size=0.2, rand...原创 2020-12-14 15:24:22 · 286 阅读 · 1 评论 -
mmcv库的下载!血与泪——最终完成
在期初,直接利用清华源进行mmcv库的安装,这直接报错——没有C++14.0。pip install -i https://pypi.tuna.tsinghua.edu.cn/simple mmcv在网上找了好多博客,有C++14.0 编译环境的都可以下载,没有的均不能成功所以我下载了VS2017。官网链接如下https://docs.microsoft.com/en-us/visualstudio/releasenotes/vs2017-relnotes选择社区版本就够用啦,VS2..原创 2020-11-06 10:19:19 · 5560 阅读 · 3 评论 -
基于Tensorflow(CNN)的MNIST处理与验证(附代码与解析)
经过两周的整理,实现了Tensorflow入门程序的编写与理解原创 2020-10-19 11:15:20 · 684 阅读 · 1 评论 -
基于Tensorflow 三层神经网络拟合二次函数(附代码与解析)
文章目录前言 一、隐藏层函数 二、生成二次函数与损失函数 1.二次函数与画图 2.损失函数 三、训练数据 总结前言刚入手深度学习,结合这几天看的视频与内容,将其整合成文章提示:以下是本篇文章正文内容,下面案例可供参考一、隐藏层函数生成隐藏层函数 1.权重W,2.偏执b 3.激活函数。隐藏层输出为activate_function(wx+b) def add_layer(inputs,in_size,out_size,activat...原创 2020-10-15 11:22:53 · 1648 阅读 · 2 评论 -
TensorFlow 2.0 快速导入MNIST数据集(附代码)
TensorFlow 2.0 快速导入MNIST数据集由于当初下载的Tensorflow是2.0版本的与《智能通信:基于深度学习的物理层设计》一书的版本不兼容,在第三章中导入MNIST数据中出现问题。在Tensorflow1.0中导入数据库用如下代码由于版本不兼容,出现波浪线错误在Tensorflow2.0中可以用如下代码导入MNIST数据集结果如下`...原创 2020-10-10 11:33:39 · 3067 阅读 · 0 评论