
Deep Learning
文章平均质量分 85
ytusdc
这个作者很懒,什么都没留下…
展开
-
pytorch中维度不一致张量之间加减/逻辑运算问题
a 和 b 的维度相同了,可以运算了,实际运算的时候 a 和 b 都会将维度为1的轴再进行复制扩充,维度都变为(5,1,5,5),因此可以进行加法运算了。这里 a 维度是(5,1,1,5),b 的维度是(5,5), 最终结果的 c 维度为(5,1,5,5),这里相加操作对 a 和 b 都进行了维度扩充。例如下面的代码,b的维度低一些,所以和a相加的时候b的维度就会先扩充为[1,1,5,6]。,将 b 从右边与 a 对齐,b 的维度变为(1,1,5,5),1、由于4不等于2,因此不可以相加。原创 2022-11-29 22:30:39 · 2479 阅读 · 0 评论 -
Pytorch 中 expand和repeat
在中,如果要改变某一个tensor的维度,可以利用view、expand、repeat、transpose和permute等方法,这里对这些方法的一些容易混淆的地方做个总结。expand和repeat函数是pytorch中常用于进行张量数据复制和维度扩展的函数,但其工作机制差别很大,本文对这两个函数进行对比。expand()对应位置可写上原始维度大小或直接写作-1;expand函数用于将张量中单数维的数据扩展到指定的size。原创 2022-11-29 13:01:19 · 7646 阅读 · 2 评论 -
cocoeval 解析
作者在这里把我们前面提到的参数Params作为一个函数的输入,似乎本意是希望能够更方便的在更多维度上统计结果,但是偏偏前面的evaluate又是在默认的参数上进行的,确实有一种还未完全实现功能。函数内部会根据传入的具体的IoU阈值,面积阈值,最大检测数的值返回上述precision和recall中对应维的检测结果,我们就也可以自定义形式返回我们想要的各种参数下的AP与AR啦。对于COCO格式的数据检测,我们主要分为不同的IoU阈值,不同的面积范围,单张图片的最大检测数量。这里没有什么特别的需要注意的。原创 2022-11-16 00:45:05 · 4669 阅读 · 2 评论 -
COCOAPI评价指标解析及改进
具体计算是将模型的预测框先按照每一张图片,每一种类别,按照置信度从大到小得到maxDet个框,然后将测试集中特定类别的所有框按置信度总的排序,继而再对排序后的指定类别的所有框计算tp、fp,然后对所有类别求平均得到mAP(pr曲线的面积);通过该程序,只需要将任意检测模型的预测输出组织成result_test.json形式,ground truth保存成instances_test.json形式,然后就可以直接调用eval_coco.py进行评估。原创 2022-11-14 19:45:29 · 1719 阅读 · 4 评论 -
Pytorch固定随机种子&&复现模型
PyTorch固定随机数种子结果可复现原创 2022-06-30 00:08:52 · 10806 阅读 · 0 评论 -
PyTorch 中 torch.optim优化器的使用
一、优化器基本使用方法建立优化器实例 循环: 清空梯度 向前传播 计算Loss 反向传播 更新参数 示例:from torch import optiminput = .....optimizer = optim.SGD(params=net.parameters(), lr=1) # 优化器实例optimizer.zero_grad() # 清空梯度output = net(input) # 前向传播loss = criterion(outputs, l原创 2022-01-04 20:36:02 · 3210 阅读 · 0 评论 -
详解Github的.gitignore忽略文件
重要!重要!重要!重要的事情说三遍!大家一定要养成在项目开始就创建.gitignore文件的习惯,否则一旦push,处理起来会非常麻烦。1) gitignore文件在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改 .gitignore 文件的方法。.gitignore 文件创建touch.gitignore#创建gitignore隱藏文件vim.gitignore#编辑文件,加入指定文件.gitignore 配置规则:...原创 2021-12-28 11:45:23 · 6075 阅读 · 0 评论 -
Pytorch自动混合精度(AMP)训练
pytorch从1.6版本开始,已经内置了torch.cuda.amp,采用自动混合精度训练就不需要加载第三方NVIDIA的apex库了。AMP --(automatic mixed-precision training)一 什么是自动混合精度训练(AMP)默认情况下,大多数深度学习框架都采用32位浮点算法进行训练。2017年,NVIDIA研究了一种用于混合精度训练的方法,该方法在训练网络时将单精度(FP32)与半精度(FP16)结合在一起,并使用相同的超参数实现了与FP32几乎相同的精度。1.原创 2021-12-26 14:01:15 · 23506 阅读 · 4 评论 -
pytorch GPU和CPU模型相互加载
一 模型保存加载方法1.1、直接保存模型# 保存模型torch.save(model, 'model.pth')# 加载模型model = torch.load('model.pth')1.2、只保存参数;(官方推荐)由于保存整个模型将耗费大量的存储,故官方推荐只保存参数,然后在建好模型的基础上加载# 保存模型参数torch.save(model.state_dict(), path)# 加载模型参数model.load_state_dict(torch.load(p原创 2021-12-25 00:03:55 · 10688 阅读 · 3 评论 -
Pytorch 分布式训练(DP/DDP)
1、分布式训练:模型并行和数据并行分布式训练根据并行策略的不同,可以分为模型并行和数据并行。模型并行:是网络太大,一张卡存不了,那么拆分,然后进行模型并行训练。数据并行:多个显卡同时采用数据训练网络的副本。模型并行不是这里的讨论重点1.1、数据并行数据并行的操作要求我们将数据划分成多份,然后发送给多个 GPU 进行并行的计算。注意:多卡训练要考虑通信开销的,是个trade off的过程,不见得四块卡一定比两块卡快多少,可能是训练到四块卡的时候通信开销已经占了大头下面是一个简单的原创 2021-12-23 14:35:50 · 33678 阅读 · 13 评论 -
Deep Learning模型之:CNN卷积神经网络(一)深度解析CNN
本文整理了网上几位大牛的博客,详细地讲解了CNN的基础结构与核心思想,欢迎交流。[1]Deep learning简介[2]Deep Learning训练过程[3]Deep Learning模型之:CNN卷积神经网络推导和实现[4]Deep Learning模型之:CNN的反向求导及练习[5]Deep转载 2017-09-26 11:08:07 · 3348 阅读 · 0 评论 -
深入理解批归一化Batch Normalization批标准化
原文地址:【深度学习】深入理解Batch Normalization批标准化 :https://www.cnblogs.com/guoyaohua/p/8724433.html【深度学习】批归一化(Batch Normalization) :https://www.cnblogs.com/skyfsm/p/8453498.html使用的原因使用BN的原因是网络训练中每一层不...转载 2018-12-30 13:21:45 · 9259 阅读 · 1 评论 -
Dropout 原理解析
1、Dropout出现的原因 在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象。在训练神经网络的时候经常会遇到过拟合的问题,过拟合具体表现在:模型在训练数据上损失函数较小,预测准确率较高;但是在测试数据上损失函数比较大,预测准确率较低。 过拟合是很多机器学习的通病。如果模型过拟合,那么得到的模型几乎不能用。为了解决过拟合问...原创 2019-01-07 19:25:11 · 1957 阅读 · 1 评论 -
Dropout 和 Inverted Dropout 代码中实现
1、神经网络正则化方法dropout细节探索:https://www.imooc.com/article/30129 2、caffe里面的Dropout 代码 :http://www.cnblogs.com/makefile/p/dropout.html3、caffe中的代码:https://www.cnblogs.com/ocean1100/articles/93705...原创 2019-01-07 19:43:53 · 4188 阅读 · 2 评论 -
利用TensorFlow Object Detection API实现摄像头实时物体检测
Object Detection API 的配置参考另一篇文章 :https://blog.youkuaiyun.com/ytusdc/article/details/89883274首先写一个测试代码实现摄像头实时捕捉,测试摄像头是否能调用成功import cv2import numpy as np cap = cv2.VideoCapture(0)while(1): # get ...原创 2019-05-16 11:48:25 · 2265 阅读 · 1 评论 -
深度学习与计算机视觉系列(10)_细说卷积神经网络
原文作者:寒小阳 时间:2016年1月。 原文出处:http://blog.youkuaiyun.com/han_xiaoyang/article/details/50542880 1. 前言前面九讲对神经网络的结构,组件,训练方法,原理等做了介绍。现在我们回到本系列的核心:计算机视觉,神经网络中的一种特殊版本在计算机视觉中使用最为广泛,这就是大家都知道的卷积神经网络。卷积神经网络转载 2017-09-29 15:38:01 · 328 阅读 · 0 评论 -
SeetaFace开源人脸识别引擎
原文链接:原文雷锋网按:本文作者VIPL_Face区分不同的人是很多智能系统的必备能力。为实现此目的,一种可能的技术手段是通过对人脸的光学成像来感知人、识别人,即所谓的人脸识别技术。经过几十年的研发积累,特别是近年来深度学习技术的涌现,人脸识别取得了长足的进步,在安防、金融、教育、社保等领域得到了越来越多的应用,成为计算机视觉领域最为成功的分支领域之一。然而,人脸识别并转载 2017-09-28 09:28:04 · 558 阅读 · 0 评论 -
Deep Learning模型之:CNN卷积神经网络(三)CNN常见问题总结
[1]Deep learning简介[2]Deep Learning训练过程[3]Deep Learning模型之:CNN卷积神经网络推导和实现[4]Deep Learning模型之:CNN的反向求导及练习[5]Deep Learning模型之:CNN卷积神经网络(一)深度解析CNN[6]Deep Learning模型之:CN转载 2017-09-26 11:12:50 · 1783 阅读 · 0 评论 -
Deep Learning模型之:CNN卷积神经网络(二)文字识别系统LeNet-5
[1]Deep learning简介[2]Deep Learning训练过程[3]Deep Learning模型之:CNN卷积神经网络推导和实现[4]Deep Learning模型之:CNN的反向求导及练习[5]Deep Learning模型之:CNN卷积神经网络(一)深度解析CNN[6]Deep Learning模型之:CN转载 2017-09-26 11:11:51 · 1108 阅读 · 0 评论 -
Deep Learning模型之:CNN的反向求导及练习
前言:CNN作为DL中最成功的模型之一,有必要对其更进一步研究它。虽然在前面的博文Stacked CNN简单介绍中有大概介绍过CNN的使用,不过那是有个前提的:CNN中的参数必须已提前学习好。而本文的主要目的是介绍CNN参数在使用bp算法时该怎么训练,毕竟CNN中有卷积层和下采样层,虽然和MLP的bp算法本质上相同,但形式上还是有些区别的,很显然在完成CNN反向传播前了解bp算法是转载 2017-09-26 11:03:46 · 490 阅读 · 0 评论 -
Deep Learning模型之:CNN卷积神经网络推导和实现
本文的论文来自:Notes on Convolutional Neural Networks, Jake Bouvrie。 这个主要是CNN的推导和实现的一些笔记,再看懂这个笔记之前,最好具有CNN的一些基础。这里也先列出一个资料供参考:[1] Deep Learning(深度学习)学习笔记整理系列之(七)[2] LeNet-5, con转载 2017-09-25 11:47:08 · 784 阅读 · 0 评论 -
Deep Learning训练过程
[1]Deep learning简介[2]Deep Learning训练过程[3]Deep Learning模型之:CNN卷积神经网络推导和实现[4]Deep Learning模型之:CNN的反向求导及练习[5]Deep Learning模型之:CNN卷积神经网络(一)深度解析CNN[6]Deep Learning模型之:CN转载 2017-09-25 11:22:21 · 930 阅读 · 0 评论 -
Deep learning简介
[1]Deep learning简介[2]Deep Learning训练过程[3]Deep Learning模型之:CNN卷积神经网络推导和实现[4]Deep Learning模型之:CNN的反向求导及练习[5]Deep Learning模型之:CNN卷积神经网络(一)深度解析CNN[6]Deep Learning模型之:CN转载 2017-09-25 11:01:01 · 666 阅读 · 0 评论 -
卷积神经网络结构详解
原文参考:Deep Learning(深度学习)学习笔记整理系列之(七)9.5、Convolutional Neural Networks卷积神经网络 卷积神经网络是人工神经网络的一种,已成为当前语音分析和图像识别领域的研究热点。它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。该优点在网络的输入是多维图像时表现的更为明显,使图像可以直转载 2017-10-10 11:21:01 · 6601 阅读 · 0 评论 -
零基础入门深度学习》系列文章(教程+代码)
无论即将到来的是大数据时代还是人工智能时代,亦或是传统行业使用人工智能在云上处理大数据的时代,作为一个有理想有追求的程序员,不懂深度学习(Deep Learning)这个超热的技术,会不会感觉马上就out了?现在救命稻草来了,《零基础入门深度学习》系列文章旨在讲帮助爱编程的你从零基础达到入门级水平。零基础意味着你不需要太多的数学知识,只要会写程序就行了,没错,这是专门为程序员写的文章。虽然文中会有...转载 2018-06-13 12:51:27 · 508 阅读 · 1 评论 -
VGGNet模型解读
VGGNet模型解读Very Deep Convolutional Networks forLarge-Scale Image RecognitionAuthor: K Simonyan , A ZissermanYear: 2014 1、 导引VGGNet是2014年ILSVRC竞赛的第二名,没错你没听错它是第二名,第一名是GoogLeNet(真不是我打错google,是谷歌为了纪念LeNet...转载 2018-03-12 10:46:15 · 2218 阅读 · 0 评论 -
Mask-RCNN技术解析
一. Mask-RCNN 介绍 上篇文章介绍了 FCN,这篇文章引入个新的概念 Mask-RCNN,看着比较好理解哈,就是在 RCNN 的基础上添加 Mask。 Mask-RCNN 来自于年轻有为的 Kaiming 大神,通过在 Faster-RCNN 的基础上添加一个分支网络,在实现目标检测的同时,把目标像素分割出来。 论文下载:Mas转载 2017-12-09 17:00:26 · 722 阅读 · 0 评论 -
卷积神经网络概念与原理
原文请参考:一、卷积神经网络的基本概念 受Hubel和Wiesel对猫视觉皮层电生理研究启发,有人提出卷积神经网络(CNN),Yann Lecun 最早将CNN用于手写数字识别并一直保持了其在该问题的霸主地位。近年来卷积神经网络在多个方向持续发力,在语音识别、人脸识别、通用物体识别、运动分析、自然语言处理甚至脑电波分析方面均有突破。 卷积神经转载 2017-09-26 14:41:18 · 1853 阅读 · 0 评论 -
深度学习视觉领域常用数据集汇总
转自:数据派ID:datapi 原文地址:http://www.jianshu.com/p/9990284bc4d5深度学习视觉领域常用数据集汇总[导读] “大数据时代”,数据为王!无论是数据挖掘还是目前大热的深度学习领域都离不开“大数据”。大公司们一般会有自己的数据,但对于创业公司或是高校老师、学生来说,“Where can I get large datasets转载 2017-11-08 18:09:42 · 560 阅读 · 0 评论 -
深度学习---基于空间金字塔池化的卷积神经网络物体检测
基于空间金字塔池化的卷积神经网络物体检测原文地址:http://blog.youkuaiyun.com/hjimce/article/details/50187655作者:hjimce一、相关理论 本篇博文主要讲解大神何凯明2014年的paper:《Spatial Pyramid Pooling in Deep Convolutional Networks for Vi转载 2017-12-08 13:53:25 · 594 阅读 · 0 评论 -
卷积神经网络CNN经典模型整理Lenet,Alexnet,Googlenet,VGG,Deep Residual Learning,squeezenet
关于卷积神经网络CNN,网络和文献中有非常多的资料,我在工作/研究中也用了好一段时间各种常见的model了,就想着简单整理一下,以备查阅之需。如果读者是初接触CNN,建议可以先看一看“Deep Learning(深度学习)学习笔记整理系列”中关于CNN的介绍[1],是介绍我们常说的Lenet为例,相信会对初学者有帮助。Lenet,1986年Alexnet,2012年GoogleNet,20转载 2017-09-25 10:00:06 · 938 阅读 · 0 评论 -
卷积神经网络CNN经典模型整理Lenet,Alexnet
LeNet5LeNet5 诞生于 1994 年,是最早的卷积神经网络之一,并且推动了深度学习领域的发展。自从 1988 年开始,在许多次成功的迭代后,这项由 Yann LeCun 完成的开拓性成果被命名为 LeNet5(参见:Gradient-Based Learning Applied to Document Recognition)。LeNet5 的架构基于这样的观点:转载 2017-11-09 10:16:51 · 1897 阅读 · 0 评论 -
#Deep Learning回顾#之LeNet、AlexNet、GoogLeNet、VGG、ResNet
原文链接:http://www.cnblogs.com/52machinelearning/p/5821591.htmlCNN的发展史 上一篇回顾讲的是2006年Hinton他们的Science Paper,当时提到,2006年虽然Deep Learning的概念被提出来了,但是学术界的大家还是表示不服。当时有流传的段子是Hinton的学生在台上讲paper时,台下的机转载 2017-09-25 09:54:50 · 669 阅读 · 0 评论