自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

转载 Caffe2和Caffe有何不同?

目前Caffe2还不能完全替代Caffe,还缺不少东西,例如CuDNN。与Caffe2相比,Caffe仍然是主要的稳定版本,在生产环境中使用仍然推荐Caffe

2017-04-21 15:16:43 26408 1

转载 Caffe源码解析7:Pooling_Layer

Pooling 层一般在网络中是跟在Conv卷积层之后,做采样操作,其实是为了进一步缩小feature map,同时也能增大神经元的视野。在Caffe中,pooling层属于vision_layer的一部分,其相关的定义也在vision_layer.hpp的头文件中。Pooling层的相关操作比较少,在Caffe的自带模式下只有Max pooling和Average poooling两种

2017-04-21 14:51:01 702

转载 Caffe源码解析6:Neuron_Layer

NeuronLayer,顾名思义这里就是神经元,激活函数的相应层。我们知道在blob进入激活函数之前和之后他的size是不会变的,而且激活值也就是输出 yy 只依赖于相应的输入 xx。在Caffe里面所有的layer的实现都放在src文件夹下的layer文件夹中,基本上很多文章里应用到的layer类型它都有cpu和cuda的实现。

2017-04-21 14:50:03 960

转载 Caffe源码解析5:Conv_Layer

Vision_layer里面主要是包括了一些关于一些视觉上的操作,比如卷积、反卷积、池化等等。这里的类跟data layer一样好很多种继承关系。

2017-04-21 14:49:05 644

转载 Caffe源码解析4: Data_layer

data_layer应该是网络的最底层,主要是将数据送给blob进入到net中

2017-04-21 14:47:59 414

转载 Caffe源码解析3:Layer

ayer这个类可以说是里面最终的一个基本类了,深度网络呢就是一层一层的layer,相互之间通过blob传输数据连接起来。首先layer必须要实现一个forward function,前递函数当然功能可以自己定义啦,在forward中呢他会从input也就是Layer的bottom,对了caffe里面网络的前一层是叫bottom的,从bottom中获取blob,并且计算输出的Blob,当然他们也会实现一个反向传播,根据他们的input的blob以及output blob的error gradient 梯度误差

2017-04-21 14:46:50 398

转载 Caffe源码解析2:SycedMem

看到SyncedMem就知道,这是在做内存同步的操作。这类个类的代码比较少,但是作用是非常明显的。文件对应着syncedmem.hpp,着syncedmem.cpp

2017-04-21 14:45:30 499

转载 Caffe源码解析1:Blob

Blob是作为Caffe中数据流通的一个基本类,网络各层之间的数据是通过Blob来传递的。这里整个代码是非常规范的,基本上条件编译,命名空间,模板类,各种不太经常看到的关键字如exlicit,inline等等。

2017-04-21 14:43:00 707

原创 深度学习——训练过程

2006年,Hinton提出了在非监督数据上建立多层神经网络的一个有效方法,该方法分为两步,一是每次训练一层网络,二是调优,使原始表示x向上生成的高级表示r和该高级表示r向下生成的x'尽可能一致:1、首先逐层构建单层神经元,这样每次都是训练一个单层网络。2、当所有层训练完后,Hinton使用wake-sleep算法进行调优。

2017-04-19 14:13:51 17591

原创 深度学习——核心思想

深度学习的思想就是堆叠多个层,也就是说这一层的输出作为下一层的输入。通过这种方式实现对输入信息进行分级表达了。深度学习是无监督学习的一种。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。

2017-04-19 14:12:30 6913

转载 FastRCNN 训练自己数据集(三)——训练和检测

怎么来训练网络和之后的检测过程

2017-04-19 11:35:46 3223

转载 FastRCNN 训练自己数据集(二)——修改读写接口

读取接口的所有内容,主要步骤是:复制pascal_voc,改名字,修改GroundTruth和OP预选框的读取方式修改factory.py,修改数据库路径和获得方式__init__.py添加上改完的py文件

2017-04-19 11:33:00 1868 1

转载 FastRCNN 训练自己数据集(一)——编译配置

如何安装Fast RCNN环境,具体的流程在Ross Girshick的Github上有,他里面主要是讲解了如何安装和使用。我会稍微提到这一部分内容,主要讲解,如果要训练自己的数据,应该修改那些地方,并把我自己训练的过程跟大家分享一下。

2017-04-19 11:29:15 2745

转载 深度学习——通俗理解卷积神经网络

在dl中,有一个很重要的概念,就是卷积神经网络CNN,基本是入门dl必须搞懂的东西。本文基本根据斯坦福的机器学习公开课、cs231n、与七月在线寒老师讲的5月dl班第4次课CNN与常用框架视频所写,是一篇课程笔记。

2017-04-19 11:21:22 3544

转载 深度学习——八大开源框架

深度学习(Deep Learning)是机器学习中一种基于对数据进行表征学习的方法,深度学习的好处是用非监督式或半监督式的特征学习、分层特征提取高效算法来替代手工获取特征(feature)。作为当下最热门的话题,Google、Facebook、Microsoft等巨头都围绕深度学习重点投资了一系列新兴项目,他们也一直在支持一些开源深度学习框架。

2017-04-18 14:52:05 1209

转载 深度学习——引用量最高的20篇论文(2014-2017)

机器学习,尤其是其子领域深度学习,在近些年来取得了许多惊人的进展。重要的研究论文可能带来使全球数十亿人受益的技术突破。这一领域的研究目前发展非常快,为了帮助你了解进展状况,我们列出了自 2014 年以来最重要的 20 篇科学论文。

2017-04-18 14:47:50 2394

原创 深度学习——预训练

逐层贪婪训练,无监督预训练(unsupervised pre-training)即训练网络的第一个隐藏层,再训练第二个…最后用这些训练好的网络参数值作为整体网络参数的初始值。

2017-04-18 14:34:06 13371

原创 深度学习——致命问题之Gradient Vanish

Gradient Vanish 这个问题是由激活函数不当引起的

2017-04-18 14:18:45 3689

转载 深度学习——综述(LeCun、Bengio和Hinton)

深度学习可以让那些拥有多个处理层的计算模型来学习具有多层次抽象的数据的表示。这些方法在许多方面都带来了显著的改善,包括最先进的语音识别、视觉对象识别、对象检测和许多其它领域,例如药物发现和基因组学等。深度学习能够发现大数据中的复杂结构。它是利用BP算法来完成这个发现过程的。

2017-04-18 13:57:00 1417

原创 TensorFlow学习笔记(3)——softmax_cross_entropy_with_logits函数详解

tensorflow之所以把softmax和cross entropy放到一个函数里计算,就是为了提高运算速度。

2017-04-18 10:12:34 10000

原创 深度学习——激活函数Sigmoid/Tanh/ReLU

一般情况下,使用ReLU会比较好1、使用 ReLU,就要注意设置 learning rate,不要让网络训练过程中出现很多 “dead” 神经元;2、如果“dead”无法解决,可以尝试 Leaky ReLU、PReLU 、RReLU等Relu变体来替代ReLU;3、不建议使用 sigmoid,如果一定要使用,也可以用 tanh来替代。

2017-04-18 09:38:37 85182 12

原创 深度学习——sgd等优化方法比较

1、adagrad相比于sgd和momentum更加稳定,即不需要怎么调参。2、精调的sgd和momentum系列方法无论是收敛速度还是precision都比adagrad要好一些。3、在精调参数下,一般Nesterov优于momentum优于sgd。4、adagrad一方面不用怎么调参,另一方面其性能稳定优于其他方法。

2017-04-17 15:43:26 4152

原创 深度学习——NMS(非极大抑制)

在物体检测中NMS(Non-maximum suppression)非极大抑制应用十分广泛,其目的是为了消除多余的框,找到最佳的物体检测的位置。

2017-04-17 15:28:29 18769

原创 深度学习——白化

白化的目的是去除输入数据的冗余信息。例如:训练数据是图像,由于图像中相邻像素之间具有很强的相关性,因此输入是冗余的。白化的目的就是降低输入的冗余性。

2017-04-17 15:16:07 9448

原创 深度学习——L0、L1及L2范数

L1范数和L2范数的差别一个是绝对值最小,一个是平方最小:L1会趋向于产生少量的特征,而其他的特征都是0,而L2会选择更多的特征,这些特征都会接近于0。

2017-04-17 10:12:02 32330 4

原创 博文导航

zchang81博客博文导航1、深度学习基础2、深度学习数据集3、深度学习目标检测4、TensorFlow学习笔记

2017-04-17 09:45:37 1733

原创 深度学习——CNN经典网络总结

在CNN网络结构的进化过程中,出现过许多优秀的CNN网络,如:LeNet,AlexNet,VGG-Net,GoogLeNet,ResNet,他们对CNN的发展进化起着至关重要的作用。

2017-04-13 17:31:07 7686 1

原创 深度学习——Batch Normalization

《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》一文中的Batch Normalization这个算法目前已经被大量的应用来进行网络训练。

2017-04-13 14:39:06 748

原创 TensorFlow学习笔记(四):CNN之AlexNet网络

ImageNet Classification with Deep Convolutional Neural Networks 是Hinton和他的学生Alex Krizhevsky在2012年ImageNet Challenge使用的模型结构,刷新了Image Classification的准确率,从此deep learning在Image这块开始一次次刷新我们的认知

2017-04-13 13:39:04 2774 1

原创 深度学习物体检测(九)——对象检测YOLO系列总结

YOLO ->SSD -> YOLO2路线是基于回归检测进化路线,一句话来描述 来描述进化过程:YOLO:RCNN系列对象检测太慢了,能快点吗?SSD :YOLO速度是上来了,可是mAP太低了?YOLO2:结合YOLO和Faster RCNN网络各自快速和mAP高的优点,能满足实时和较高的mAP的要求吗?

2017-04-13 11:44:38 4971

原创 深度学习物体检测(八)——YOLO2

YOLOv2网络通过在每一个卷积层后添加batch normalization,极大的改善了收敛速度同时减少了对其它regularization方法的依赖(舍弃了dropout优化后依然没有过拟合),使得mAP获得了2%的提升。

2017-04-13 10:28:06 9267 6

原创 深度学习物体检测(七)——SSD

SSD (Single Shot MultiBox Detector)方法同时兼顾了 mAP 和实时性的要求。对于输入图像大小为 300*300 在 VOC2007 test 上能够达到 58 帧每秒( Titan X 的 GPU ),72.1% 的 mAP。输入图像大小为 500 *500 , mAP 能够达到 75.1%。

2017-04-12 10:58:05 9078 12

原创 深度学习物体检测(六)——YOLO

YOLO(You Only Look Once)是一种新的目标检测方法,该方法的特点是实现快速检测的同时还达到较高的准确率。作者将目标检测任务看作目标区域预测和类别预测的回归问题。该方法采用单个神经网络直接预测物品边界和类别概率,实现端到端的物品检测。同时,该方法检测速非常快,基础版可以达到45帧/s的实时检测;FastYOLO可以达到155帧/s。与当前最好系统相比,YOLO目标区域定位误差更大,但是背景预测的假阳性优于当前最好的方法。

2017-04-10 15:26:48 4674 1

原创 深度学习——dropout

Dropout是指在模型训练时随机让网络某些隐含层节点的权重暂时不工作,不工作的那些节点可以临时认为不是网络结构的一部分,但是它的权重得保留下来,暂时不更新,因为下一轮迭代 的时候它可能又得工作了。

2017-04-10 11:36:12 1347

原创 深度学习物体检测(五)——对象检测RCNN系列总结

传统对象检测这一问题基本是遵循着“设计手工特征(Hand-crafted feature)+分类器”的思路,可以认为是计算机用一个小的矩形窗口不断在图像上滑动、缩放,然后用分类器预测当前滑动窗口所在区域是否存在一个感兴趣的对象。RCNN系列算法的核心思想就是把对象检测转换成了一个图像分类问题。

2017-04-10 10:18:20 1117

原创 深度学习——CNN发展历程简述

CNN(卷积神经网络)的鼻祖LeCun,于1998年提出LeNet-5模型,标志着神经网络的正式出生。

2017-04-07 16:28:50 12214 1

原创 深度学习——白话CNN入门浅见

搞CNN的工程应用有一段时间了,分享下我自己的CNN学习历程。

2017-04-07 16:06:11 2169

原创 深度学习——计算机视觉领域的应用

目前CNN在图像分类领域是做的最好的,其次是物体检测领域,图像分割、图像标准、图像生成这三个领域也在蓬勃发展,发展速度很快,各种paper层出不穷,发展空间巨大。

2017-04-07 14:34:51 4252

原创 TensorFlow学习笔记(2)——保存和加载训练模型参数

在 Tensorflow 的训练过程中,参数通过使用 Saver 类来保存和加载模型。Saver类可以处理图中元数据和变量数据的保存和加载。我们只需要告诉 Saver 类我们需要保存哪个图? 哪些变量?

2017-04-07 13:49:39 1349

转载 Tensorflow playground(Tensorflow游乐场)

Tensorflow是Google推出的机器学习开源平台。Google发布了Tensorflow playground(Tensorflow游乐场)。地址:http://playground.tensorflow.org。而有了Tensorflow游乐场,我们就可以在浏览器中训练神经网络,同时可以修改各种超参数,以图像化的方式更直观地了解到神经网络的工作原理。

2017-04-07 09:31:31 25509

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除