自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Rolin的专栏

路在自己脚下

  • 博客(9)
  • 资源 (1)
  • 收藏
  • 关注

原创 Caffe框架源码剖析(9)—损失层SoftmaxWithLossLayer

类SoftmaxWithLossLayer包含类SoftmaxLayer的实例。其中SoftmaxLayer层在正向传导函数中将100*10的bottom_data,通过计算得到100*10的top_data。这可以理解为输入数据为100个样本,每个样本特征数量为10,计算这100个样本分别在10个类别上的概率。公式如下:

2016-09-20 13:22:30 18965

原创 Caffe框架源码剖析(8)—激活函数层ReLULayer

LeNet中使用修正线性单元(Rectified Linear Unit,ReLU)代替Sigmoid作为激活函数,目的是为了加速收敛。激活函数层ReLULayer原理很简单,就是实现了对输入数据的非负处理,将小于零的数据进行了截断。

2016-09-20 09:45:52 5479

原创 Caffe框架源码剖析(7)—全连接层InnerProductLayer

全连接层InnerProductLayer的原理很简单,说白了就是矩阵乘法运算。正向传导时输出数据等于输入数据乘上权重,如果有偏置项就再加上偏置项。写成公式就是:top_data = bottom_data * weight + bias.矩阵乘法在CPU端采用OpenBLAS实现,在GPU端则采用NVIDIA cuBLAS实现加速。

2016-09-19 16:30:48 7017 3

原创 Caffe框架源码剖析(6)—池化层PoolingLayer

池化层往往在卷积层后面,通过降采样来降低卷积层输出的特征向量,同时改善结果,不易出现过拟合。最常用的降采样方法有均值采样(取区域平均值作为降采样值)、最大值采样(取区域最大值作为降采样值)和随机采样(取区域内随机一个像素)等。PoolingLayer类从Layer基类单一继承而来,没有再多的子类。具体定义在pooling_layer.hpp中,template class

2016-09-19 13:40:54 6989

原创 Caffe框架源码剖析(5)—卷积层ConvolutionLayer

ConvolutionLayer是BaseConvolutionLayer的子类,功能较为简单。类中不包含成员变量,仅包含几个虚函数的实现。conv_layer.hpp头文件的定义如下:

2016-09-18 09:20:11 3694

原创 Caffe框架源码剖析(4)—卷积层基类BaseConvolutionLayer

数据层DataLayer正向传导的目标层是卷积层ConvolutionLayer。卷积层的是用一系列的权重滤波核与输入图像进行卷积,具体实现是通过将图像展开成向量,作用矩阵乘法实现卷积。

2016-09-16 15:47:11 1687

原创 Caffe框架源码剖析(3)—数据层DataLayer

Caffe网络正向传导时,首先进行的是DataLayer数据层的传导。该层从文件读取数据,加载至它的上一层卷积层。反向传导时,因为数据层不需要反传,所以它的Backward_cpu()和Backward_gpu()都是空函数。下面看一下DataLayer类图关系。

2016-09-13 08:27:17 4208

原创 Caffe支持多GPU分布式计算

Caffe允许多GPU间并行,与AlexNet不同,多GPU模式的内涵在于“不共享数据,却共享网络”。所以,允许多个solver存在,且应用到不同的GPU上去。第一个solver会成为root_solver,第二、第三个solver就会成为shared_solver。直接使用solver_count的地方是DataLayer层中的DataReader对象。每一个DataLayer都有一

2016-09-12 17:00:21 7920

原创 Caffe框架源码剖析(2)—训练网络

中间因为工程开发等杂七杂八原因暂停了Caffe源码分析,现在继续补上。上篇分析在函数 train() 中建立了网络,接下来就是进入训练网络步骤了。

2016-09-09 22:50:42 2860

关于卷积神经网络中类不平衡问题的综述

2017年的一篇综述论文,系统阐述了在卷积神经网络中的类别不平衡问题,以及对比了几种常用的解决方法,并在MNIST、CIFAR-10和ImageNet数据集上进行结果对比。

2019-01-08

空空如也

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

TA关注的人

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