caffe
文章平均质量分 67
singing1001
码农
展开
-
caffe lmdb数据集的制作
我也参考了别人的文章,其实也算不上原创,只是自我感觉能从头到尾的走一遍挺好的。 lmdb数据集的制作 以imagenet数据集为例,我们只制作label范围为[0-10)的数据集,这个只是为了演示如何制作数据集。 数据准备 新建一个名为train的目录及子目录和一个val的目录及子目录: train文件存放训练数据,val文件存放验证数据。然后我们在train文件下面,把训练数据按分类放在...原创 2018-08-09 16:37:03 · 732 阅读 · 0 评论 -
1.1输入矩阵展开(im2col_cpu函数的解读)
函数原型:void im2col_cpu(const Dtype* data_im, const int channels,const int height, const int width, const int kernel_h, const int kernel_w,const int pad_h, const int pad_w,const int stride_h, const int s...原创 2018-11-23 17:32:38 · 1149 阅读 · 0 评论 -
Caffe-MPI实现多机多卡训练
MPI简介 对MPI的定义是多种多样的 ,但不外乎下面三个方面,它们限定了MPI的内涵和外延。 MPI是一个库,而不是一门语言。许多人认为MPI就是一种并行语言,这是不准确的。但是,按照并行语言的分类,可以把FORTRAN+MPI或C+MPI 看作是一种在原来串行语言基础之上扩展后得到的并行语言。MPI库可以被FORTRAN77/C/Fortran90/C++调用。从语法上说 它遵守所有...原创 2018-09-17 17:52:17 · 2763 阅读 · 5 评论 -
Caffe 多GPU卡相关代码理解
Caffe的NVIDIA GPU多卡训练使用NVIDIA nccl进行管理的,具体细节需要进一步深入的学习理解。当前只描述它的基本实现过程。 Class的基本关联关系图 基本流程 初始化阶段---构造NCCL 初始化solver_。 初始化size_(所有要学习的blobs的大小之和)。 获取并指定GPU卡(默认为0),分配size_大小的GPU...原创 2018-09-06 18:17:04 · 851 阅读 · 0 评论 -
caffe的反向传播的实现
反向传播的实现 反向传播算法理论 摘自“http://ufldl.stanford.edu/wiki/index.php/Backpropagation_Algorithm” 假定我们有一个固定的训练集,有m个训练样本。我们可以使用“batch gradient descent”来训练我们的神经网络。详细的,对一个单一的训练样本 (x,y),我们定义了它对应的损失函数如下: ...原创 2018-09-03 17:47:55 · 1472 阅读 · 0 评论 -
Caffe的GPU部分学习
Caffe的GPU部分学习 这里需要用到NVIDIA的CUDA的接口,不做详细描述,具体查看NVIDIA的官方说明,只讲解caffe的GPU单卡的基本逻辑。 GPU相关的初始化 GPU设备的指定,并创建cublas和curand的句柄,分别用于矩阵运算和随机数生成。通过Caffe::SetDevice()函数调用完成。 内存管理初始化。 每个带有weight和bias blob的gpu...原创 2018-09-05 16:05:07 · 799 阅读 · 5 评论 -
caffe数据关联关系图
Class的关联关系图原创 2018-08-29 17:33:30 · 299 阅读 · 0 评论 -
Caffe的模型及网络结构
因本人工作是对算法SDK的开发与维护,之前主要关注深度学习算法的推理部分的实现。从今天开始,进行训练部分的学习和实践,会持续发表和更新深度学习训练相关的博客,请大家批评指正。 就从训练model 的网络文件开始吧。 因为参数很多,肯定是没有列全的,就列了当前常用的参数,以后慢慢更新了。 Caffe的模型及网络结构 查看工具 http://ethereon.github.io/netscop...原创 2018-08-29 11:16:49 · 4698 阅读 · 0 评论 -
caffe Softmax的实现
Softmax的实现 Softmax的基础知识 在数学中,softmax函数,或称为“归一化指数函数”,是logistic函数的一种泛化;也就是说,它是logistic函数的一个子类。它把logistic函数的任意实数值的K维向量 z 变形为 一个实数值的K维向量,的每个元素的范围(0,1)且满足所有元素之和为1.因此,它变成了一个K-1维的空间,有一个维度丢失了。 在概率论中,sof...原创 2018-08-31 11:59:35 · 1503 阅读 · 0 评论 -
caffe卷积的实现源码解析
卷积的概述 卷积是分析数学中一种很重要的运算,其实是一个很简单的概念,但是很多做图像处理的人对这个概念都解释不清,为了简单起见,这里面我们只介绍离散形式的卷积,那么在图像上,对图像用一个卷积核进行卷积运算,实际上是一个滤波的过程。我们先看一下卷积的基本数学表示: 其中I=f(x,y) 是一个图像,f(x,y)是图像I上面x行y列上点的灰度值。而w(x,y)有太多名字叫了,滤波器、卷积核、...原创 2018-08-13 18:38:21 · 1195 阅读 · 0 评论 -
caffe2ncnn
转化后的ncnn param文件 格式如下: 7767517 第一行是一个magic value,是个fixed value [layers count] [blobs count] ...原创 2018-12-11 16:27:30 · 1218 阅读 · 0 评论