![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DL
文章平均质量分 54
TravelingLight77
仰望星空,脚踏实地。
展开
-
混淆矩阵:用于多分类模型评估(pytorch)——总结2
混淆矩阵(confusion matrix) 1. 混淆矩阵介绍2. 代码实现2.1 数据集2.2 代码:混淆矩阵类2.3 在验证集上计算相关指标2.4 结果 1. 混淆矩阵介绍 这里不多说,可参考 混淆矩阵相关概念调用sklearn库计算混淆矩阵的指标 2. 代码实现 2.1 数据集 此数据集用于多分类任务(检测番茄叶片病虫害)。这里测试的数据集一共1250张图,1000张用于训练,250张用于...转载 2021-09-19 11:10:19 · 3403 阅读 · 2 评论 -
深度学习分类任务常用评估指标——总结(重点)
一、分类模型指标1 准确率和错误率(该指标评价的前提样本分布平衡)准确率和错误率既可用于二分类也可用于多分类: 下述公式是准确率、错误率针对二分类情况时候的计算公式1.1 准确率(该指标评价的前提样本分布平衡)针对 所有类别 ,计算acc,其计算公式如下:理解: 在样本(测试集)中所有预测正确的类别个数 与 所有样本的比值,它是针对所有的类别计算的。精确率和准确率是比较容易混淆的两个评估指标,两者是有区别的。精确率是一个二分类指标,而准确率能应用于多分类,其计算公式为(对分类):1.2 错原创 2021-09-18 11:36:59 · 1648 阅读 · 0 评论 -
深度学习分类任务评价指标——总结1
0 分类问题评价指标 混淆矩阵 混淆矩阵:Actual :实际的正类或父类; Predicted : 预测的;1 :正类 0:父类 predictedpredicted 10 Actual 1TPFN Actual :0FPTN ...转载 2021-09-17 17:37:40 · 288 阅读 · 0 评论 -
最强数据集集合:50个最佳机器学习公共数据集丨资源
最强数据集集合:50个最佳机器学习公共数据集丨资源转载 2021-09-05 15:48:51 · 191 阅读 · 0 评论 -
PyTorch学习:加载模型和参数
pytorch的模型和参数是分开的,可以分别保存或加载模型和参数。 pytorch有两种模型保存方式: 一、保存整个神经网络的的结构信息和模型参数信息,save的对象是网络net 二、只保存神经网络的训练模型参数,save的对象是net.state_dict() 对应两种保存模型的方式,pytorch也有两种加载模型的方式。对应第一种保存方式,加载模型时通过torch.load('.pth')直接初始化新的...转载 2021-09-03 23:16:14 · 3659 阅读 · 1 评论 -
ShuffleNet V1——总结
版权声明:本文为博主原创文章,未经博主允许不得转载 论文:ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices 链接:https://arxiv.org/abs/1707.01083 第三方代码:https://github.com/jaxony/ShuffleNet pytorch ...转载 2021-09-03 21:54:16 · 155 阅读 · 0 评论 -
shuffleNet v1 v2笔记——总结(重点)
前言在ResNeXt[3]的文章中,分组卷积作为传统卷积核深度可分离卷积的一种折中方案被采用。这时大量的对于整个Feature Map的Pointwise卷积成为了ResNeXt的性能瓶颈。一种更高效的策略是在组内进行Pointwise卷积,但是这种组内Pointwise卷积的形式不利于通道之间的信息流通,为了解决这个问题,ShuffleNet v1中提出了通道洗牌(channel shuffle)操作。在ShuffleNet v2的文章中作者指出现在普遍采用的FLOPs评估模型性能是非常不合理的,因为转载 2021-09-03 21:28:32 · 333 阅读 · 0 评论 -
工程实践_深度学习训练模型时Loss出现NAN的原因及解决办法
原因1:梯度爆炸 产生原因:学习率过大。 解决方法: 3. 数据归一化(减均值,除方差,或者加入normalization:BN,L2 norm等)。 4. 更换参数初始化方法(对于CNN,一般用xavier或者msra的初始化方法)。 5. 减小学习率,减小Batch size...转载 2021-09-01 19:38:20 · 3034 阅读 · 0 评论 -
通道注意力超强改进,轻量模块ECANet来了!即插即用,显著提高CNN性能|已开源——总结3
极市平台(微信公众号ID:extrememart):专注计算机视觉前沿资讯和技术干货。本文由极市平台首发,转载需获授权。极市导读:今天给大家推荐一篇CVPR2020上对通道注意力进行改进的文章---ECANet,ECANet主要对SENet模块进行了一些改进,提出了一种不降维的局部跨信道交互策略(ECA模块)和自适应选择一维卷积核大小的方法,从而实现了性能上的提优。最近已经有很多文章在通道和空间注意力上做改进并取得了性能提升。例如SKNet,SANet,ResNeSt等等,不得不说,注意力机制真的香!论文链转载 2021-08-27 17:40:34 · 3632 阅读 · 0 评论 -
轻量模块注意力机制ECA-Net(注意力模块+一维卷积)——总结2
文章目录 ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks(2020)注意力模块比较ECA模块Avoiding Dimensionality Reduction(避免维度减少)Local Cross-Channel Interaction(局部跨通道交互)Coverage of Local Cross-Channel...转载 2021-08-27 17:38:28 · 5050 阅读 · 2 评论 -
PyTorch中网络里面的inplace=True字段的意思
在例如nn.LeakyReLU(inplace=True)中的inplace字段是什么意思呢?有什么用?inplace=True的意思是进行原地操作,例如x=x+5,对x就是一个原地操作,y=x+5,x=y,完成了与x=x+5同样的功能但是不是原地操作,上面LeakyReLU中的inplace=True的含义是一样的,是对于Conv2d这样的上层网络传递下来的tensor直接进行修改,好处就是可以节省运算内存,不用多储存变量y。inplace=True means that it will modif转载 2021-08-26 21:42:32 · 4897 阅读 · 1 评论 -
PyTorch的nn.Linear()详解
一、概述PyTorch的nn.Linear()是用于设置网络中的全连接层的,需要注意在二维图像处理的任务中,全连接层的输入与输出一般都设置为二维张量,形状通常为[batch_size, size],不同于卷积层要求输入输出是四维张量。其用法与形参说明如下: 二、参数说明in_features指的是输入的二维张量的大小,即输入的 [batch_size, size] 中的size(输入图片的特征共有多少个,上一个全连接层神经元的个数)。out_features指的是输出的二维张量的大小,即输转载 2021-08-26 21:13:28 · 16410 阅读 · 1 评论 -
Pytorch框架安装笔记(重点)
一、安装过程查看本机电脑的 GPU驱动,看看当前 驱动版本可以 支持的cuda版本,对应关系如下:最新可查阅官方文档注:驱动是向下兼容的,其决定了可安装的CUDA Toolkit的最高版本。由1中确定cuda版本以后, 以cuda为中心,寻找配件进行安装,根据cuda版本确定cudnn版本由cuda确定Pytorch的版本注:虽有的卡驱动更新至较新版本,且CUDA Toolkit及PyTorch也可对应更新至新版本。但有的对应安装包无法使用,有可能是由于卡太旧的原因。安原创 2021-08-26 17:48:06 · 122 阅读 · 0 评论 -
Pytorch中nn.Conv2d的用法(Pytorch二维卷积总结)
Pytorch中nn.Conv2d的用法nn.Conv2d是二维卷积方法,相对应的还有一维卷积方法nn.Conv1d,常用于文本数据的处理,而nn.Conv2d一般用于二维图像。先看一下接口定义:class torch.nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True)参数解释:stride:步长zero-padding:图像四周填0d.转载 2021-08-18 20:41:42 · 2485 阅读 · 0 评论 -
SOTA model / SOTA result / SOTA模型究竟是什么?
最近看机器学习/人工智能相关顶级会议的论文,看到了 SOTA 模型,本来以为是一个很厉害的模型,但是网上完全查不到。今天会心一击,终于想到——SOTA 是 state-of-the-art 的缩写。 SOTA model:state-of-the-art model,并不是特指某个具体的模型,而是指在该项研究任务中,目前最好/最先进的模型。 SOTA result:state-of-the-ar...转载 2021-08-02 21:38:37 · 4792 阅读 · 2 评论 -
[Keras填坑之旅]·图片分类中是否使用img_to_array的影响——总结2
[Keras填坑之旅]·图片分类中是否使用img_to_array的影响 1.背景介绍 在使用keras进行图片分类的任务,笔者最开始的方法是使用opencv库cv2.imread读取照片,再使用cv2.resize重设尺寸。在和别人的代码进行训练对比发现代码类似结果却差异很大。别人的val_acc可以高出笔者几个百分点。对比发现别人的代码里多了一步: feature = img_to_arr...转载 2021-07-10 15:16:18 · 479 阅读 · 0 评论 -
WIN10中TENSORFLOW-GPU、KERAS-GPU、CUDA的版本对应关系总结(重点)
1.tensorflow-gpu与CUDA对应关系2.在安装keras时可根据要求匹配tensorflow-gpu: tensorflow 1.5 和keras 2.1.4tensorflow 1.4和keras 2.1.3tensorflow 1.3和keras 2.1.2tensorflow 1.2和keras 2.1.1tensorflow 1.14和keras 2.3.1tensorflow 1.10和keras 2.1.21234567891011因为本人只测试了te.转载 2021-07-04 22:27:29 · 2680 阅读 · 0 评论 -
tensorflow各个版本的CUDA以及Cudnn版本对应关系(重点)
概述,需要注意以下几个问题: (1)NVIDIA的显卡驱动程序和CUDA完全是两个不同的概念哦!CUDA是NVIDIA推出的用于自家GPU的并行计算框架,也就是说CUDA只能在NVIDIA的GPU上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥CUDA的作用。 CUDA的本质是一个工具包(ToolKit);但是二者虽然不一样的。 显卡驱动的安装: 当我们使用一台电脑...转载 2021-07-04 22:24:04 · 10538 阅读 · 0 评论 -
软件类配置(一)【Windows下使用conda在虚拟环境中安装CUDA、CUDNN及Tensorflow】(重点)
喜大普奔!!! 使用anaconda直接安装深度学习环境所需的cuda、cudnn、tensorflow-gpu,windows,ubuntu都可以。参考文章 需要anaconda,以及nvidia的驱动。如果你是ubuntu的话,可以参考这个文章装nvidia驱动。 1.创建环境 conda create -n your_env_name python=X.X如:conda create -n starcr...转载 2021-07-04 22:06:06 · 419 阅读 · 0 评论 -
农作物病虫害识别进展概述(***)
最近看了Overview: Research Progress on Pest and Disease Identification这篇文章,这篇文章主要也就是对农业病虫害的识别的一个综述。 摘要 近年来,病虫害的识别已成为一个热门话题。越来越多的研究者开始研究病虫害的检测和识别,以实现精准农业。自动检测该地区农作物上的害虫数量已经成为优化农业资源的重要手段。随着现代数字技术的发展,图像处理技术也发展迅速,为有害生物的识...转载 2021-06-21 22:38:31 · 4219 阅读 · 2 评论 -
注意力机制论文:Squeeze-and-Excitation Networks及其PyTorch实现
Squeeze-and-Excitation Networks PDF: https://arxiv.org/pdf/1709.01507.pdf PyTorch代码: https://github.com/shanglianlm0525/PyTorch-Networks Sque...转载 2021-06-20 20:38:23 · 1300 阅读 · 0 评论 -
Linux 和 Windows 查看当前运行的 python 进程及 GPU、CPU、磁盘利用率
Linux 和 Windows 查看当前运行的 python 进程及 GPU、CPU、磁盘利用率 目录查看当前 python 进程LinuxWindows查看 GPU 利用率LinuxWindowsLinux CPU 利用率Linux 磁盘利用率查看当前 python 进程Linux在 shell 中执行如下指令:ps -ef | grep python或者ps aux | grep python查看用户...转载 2021-06-20 17:59:09 · 1756 阅读 · 0 评论 -
mlp神经网络_上一课!神经网络是什么?有什么作用?
全文共3046字,预计学习时长9分钟 图源:百家号 机器学习是人工智能领域的一个分支,它结合了神经网络来创建一些人们日常使用的优秀软件。 如果你使用百度查找的相关资料,则使用了百度的神经网络,该神经网络会根据给出的关键词对相关度最高的网页进行排名。如果你最近要买东西访问过淘宝官网,那么该网站推荐的所有产品都是由神经网络管理的。 即便是现在,当使用手机时,也可能会遇到一种便利生活...转载 2021-06-16 22:59:46 · 2418 阅读 · 1 评论 -
深度学习笔记(五):学习率过大过小对于网络训练有何影响以及如何解决
文章目录 1.学习率的作用 2.学习率太大有何影响 3.学习率太小有何影响 4.如何进行学习率设置 5.学习率缓减机制 1.学习率的作用 学习率 (learning rate),作为监督学习以及深度学习中重要的超参,它控制网络模型的学习进度,决定这网络能否成功或者需要多久成功找到全局最小值,从而得到全局最优解,也就是最...转载 2021-05-21 20:50:12 · 15069 阅读 · 0 评论 -
pytorch的nn.CrossEntropyLoss()函数使用方法
nn.CrossEntropyLoss()函数计算交叉熵损失 用法: # output是网络的输出,size=[batch_size, class]#如网络的batch size为128,数据分为10类,则size=[128, 10] # target是数据的真实标签,是标量,size=[batch_size]#如网络的batch size为128,则size=[128] crossentropyloss=nn...转载 2021-05-21 20:47:49 · 1063 阅读 · 1 评论 -
图像分类中的深度学习网络汇总
深度学习在图片处理中的应用是从图像分类开始的,所以我们要先从图像分类中了解深度学习的应用情况。 本文根据阅读大量的资料和视频资源,简单地总结了图像分类中所有经典的深度学习神经网络。 1、LeNet LeNet神经网络由深度学习三大巨头之一的Yan LeCun在1998提出,他同事也是卷积神经网络CNN父。LeNet主要用来进行手写字符的识别与分类。虽然LeNet早在20世纪90年代就...转载 2021-05-16 16:47:47 · 7131 阅读 · 0 评论 -
Yolov3训练模型没有框(理论上一定有用的解决方案)
问题描述 不知道有多少人遇到过和我一样的情况,这个问题困扰了我很长时间,这里特别做一下笔记。 本人在Windows10环境下,使用Pycharm进行模型训练。训练的时候一切正常,loss值也有明显下降,但是在使用模型的时候发现与预料结果截然不同。 训练结果如下图: 图片中并没...转载 2021-05-15 20:26:46 · 2367 阅读 · 0 评论 -
目标检测—SSD
近年来目标检测算法主要包括两种类型:One Stage和Two Stage。 之前已经介绍了R-CNN、Fast-RCNN以及Faster-RCNN三种目标检测网络的算法流程和理论,这三种网络都属于Two Stage,Two Stage字面意思就是需要两步完成检测,这种目标检测网络有个比较明显的缺陷是检测速度较慢。为了加快检测速度,出现了另外一种One Stage的目标检测网络,常见地例如SSD、Yolo算法。 &nbs.转载 2021-05-14 19:01:21 · 545 阅读 · 0 评论 -
目标检测——SSD损失值计算
SSD损失分为两部分,类别损失和回归框位置损失其中,类别损失采用softmax损失,回顾框损失采用l1——smooth损失。1. softmax损失: def _softmax_loss(self, y_true, y_pred): y_pred = tf.maximum(y_pred, 1e-7) softmax_loss = -tf.reduce_sum(y_true * tf.math.log(y_pred), .转载 2021-05-14 18:37:58 · 990 阅读 · 0 评论 -
Labelimg制作数据集
Labelimg制作数据集 1、 安装labelimg ① 下载源码自行安装,安装步骤参考搜索文章 下载地址:https://github.com/tzutalin/labelImg ② 下载打包版直接运行,Windows和Linux平台可用,无需编译 下载地址:https...转载 2021-05-12 16:02:26 · 522 阅读 · 0 评论 -
深度学习中Dropout原理解析
“微信公众号” 本文同步更新在我的微信公众号里,地址:https://mp.weixin.qq.com/s/3nKXlu3jy-0sNgAHxaxGmQ 本文同步更新在我的知乎专栏里,地址:https://zhuanlan.zhihu.com/p/382009801. Dropout简介1.1 Dropout出现的原因在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型...转载 2021-05-10 16:23:07 · 653 阅读 · 0 评论 -
PyTorch(迁移学习实战)
先跑一遍代码再说。理解一下基本的套路。 1.数据预处理(transforms.Compose函数包含图像数据预处理的方法) #数据预处理的方data_transforms = { 'train': transforms.Compose([ transforms.Scale(230), transforms.CenterCrop(224), transf...转载 2021-05-08 22:36:46 · 224 阅读 · 0 评论 -
CNN定义
卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一 [1-2] 。卷积神经网络具有表征学习(representation learning)能力,能够按其阶层结构对输入信息进行平移不变分类(shift-invariant classification),因此也被称为“平移不变人工神经网络(Shift-Invaria原创 2021-05-02 21:11:57 · 2034 阅读 · 0 评论 -
PyTorch实现数据增强(kaggle环境)
一、数据增强方法: 1. 对图片进行比例缩放 2. 对图片进行随机位置的截取 3. 对图片进行随机水平和竖直翻转 4. 对图片进行随机角度的旋转 5. 对图片进行亮度、对比度和颜色随机变化 二、Torch中已经把这些方法内置在了torchvision中,可以直接调用 f...转载 2021-05-02 20:41:58 · 4031 阅读 · 0 评论 -
CNN中常见卷积操作输出计算
一般卷积计算输出计算, ,其中N为输入N×N图像的一边长、Pad为Padding填充数、kernal为卷积核(一般3×3)的单边数、stride为kernal的移动步长。 这里需要注意,M为向下取正,所以当(P=1, K=3, S=2)时,N=5与N=6计算得到M都为3。 Dilated卷积输出计算, ,其中d...转载 2021-05-02 15:03:54 · 813 阅读 · 0 评论 -
PyTorch:学习conv1D,conv2D和conv3D
背景 CNN是深度学习的重中之重,而conv1D,conv2D,和conv3D又是CNN的核心,所以理解conv的工作原理就变得尤为重要。在本博客中,将简单梳理一下这三种卷积,以及在PyTorch中的应用方法。 参考 https://pytorch.org/docs/mas...转载 2021-05-02 11:27:10 · 2027 阅读 · 0 评论 -
[图像处理]-使用python及PIL库对图像分类数据图片进行数据增强扩充
1.简介 在一些时候,我们进行分类任务的时候,样本数据太少,这就需要我们对数据集进行数据增强来扩充数据集。 常用的方法包含以下几种 空间几何变换类 翻转裁剪旋转缩放变形平移变换 颜色变换类 噪声变换类 2.脚本 以下包含一个python脚本,主要调用了PIL...转载 2021-04-28 12:03:53 · 1155 阅读 · 0 评论 -
python 利用PIL库对图片进行旋转
目录 1、博客介绍 2、内容 3、推送 4、结语 1、博客介绍 有需求需要读取图片,然后旋转一下并保存成新的图片,尝试了一下,碰到了不少问题,在这里记录一下 2、内容 # 读取图片src_img = Image.open(testPng)src_img = src_img.rotate(90)src_img.save(out2) 我们首先读取一下...转载 2021-04-28 11:46:47 · 1743 阅读 · 0 评论 -
关于图像的数据增强
关于图像的数据增强 1. 哪些现象说明“数据量”成为了算法性能瓶颈1.1 欠拟合的时候可以暂时不考虑增大数据量1.2 过拟合的时候可以增大数据量或者使用数据增强 2. 数据量太少引起过拟合怎么办2.1 选用简单的网络模型2.2 使用正则化方法2.3 使用预训练网络2.4 使用多任务学习2.5 有效利用其他规模较大的数据集2.6 使用数据增强技术 3 图像数据增强的方法3.1 初级方法3.2 高级方法3.3 参...转载 2021-04-28 10:34:26 · 4897 阅读 · 0 评论 -
[PyTorch 学习笔记] 2.3 二十二种 transforms 图片数据预处理方法(**************************************)
本章代码:https://github.com/zhangxiann/PyTorch_Practice/blob/master/lesson2/transforms/这篇主要分为几个部分介绍 transforms:裁剪旋转和翻转图像变换transforms 方法操作自定义 transforms 方法最后是数据增强的实战:对人民币二分类实验进行数增强。由于图片经过 transform 操作之后是 tensor,像素值在 0~1 之间,并且标准差和方差不是正常图片的。所以定义了tran..转载 2021-04-23 22:03:18 · 537 阅读 · 0 评论