caffe
文章平均质量分 69
ZhikangFu
这个作者很懒,什么都没留下…
展开
-
将caffe中的data和label分别写在两个layer中
layer { name: "data" type: "Data" top: "data" include { phase: TRAIN } transform_param { mean_value: 104.00699 mean_value: 116.66877 mean_value: 122.67892 }原创 2015-04-21 14:29:15 · 2454 阅读 · 1 评论 -
caffe solver解释
solver算是caffe的核心的核心,它协调着整个模型的运作。caffe程序运行必带的一个参数就是solver配置文件。运行代码一般为# caffe train --solver=*_slover.prototxt在Deep Learning中,往往loss function是非凸的,没有解析解,我们需要通过优化方法来求解。solver的主要作用就是交替调用前向(forwar转载 2016-06-21 18:57:28 · 1046 阅读 · 0 评论 -
如何快糙好猛地在Windows下编译CAFFE并使用其matlab和python接口
零、最近更新2015/02/25 微软制作了一个caffe的windows版,他们更加专业,做出来的solution更加容易维护,第三方库完全由Nuget进行管理,几乎不用配置什么东西,建议大家都去尝试一下:https://github.com/Microsoft/caffe 。 2015/12/09 我总结了一下比较常见的问题,写在 https://github.com/happyn转载 2016-06-21 19:13:39 · 648 阅读 · 0 评论 -
Microsoft caffe
https://github.com/Microsoft/caffe原创 2016-10-09 09:31:52 · 540 阅读 · 0 评论 -
1×1的卷积的作用
1×1的卷积大概有两个方面的作用吧:1. 实现跨通道的交互和信息整合2. 进行卷积核通道数的降维和升维 下面详细解释一下:1. 这一点孙琳钧童鞋讲的很清楚。1×1的卷积层(可能)引起人们的重视是在NIN的结构中,论文中林敏师兄的想法是利用MLP代替传统的线性卷积核,从而提高网络的表达能力。文中同时利用了跨通道pooling的角度解释,认为文中提出的MLP其实等价于在传统卷积核后转载 2016-09-30 11:31:48 · 13370 阅读 · 1 评论 -
code
原创 2016-11-10 16:04:50 · 346 阅读 · 0 评论 -
caffe代码layer_factory梳理分析
因为前一篇描述的是layer层,其实应该先学习工厂模式,最早我也学习过了23中模式设计,不熟悉这个模式的可以看一下下面这段代码。 ?1234567891011121314151617181920转载 2016-11-10 16:57:26 · 924 阅读 · 0 评论 -
caffe binaryproto 与 npy相互转换
在caffe中,如果使用的是c++接口,均值文件默认为.binaryproto格式,而如果使用的是Python接口,均值文件默认的是numpy的.npy格式,在工作中有时需要将两者进行互相转换,具体方式如下:binaryproto -> npyimport numpy as npimport caffeimport sysblob = caffe.proto.caffe_p转载 2016-11-21 16:01:58 · 953 阅读 · 0 评论 -
caffe 画出train与loss曲线
在caffe的训练过程中,大家难免想图形化自己的训练数据,以便更好的展示结果。如果自己写代码记录训练过程的数据,那就太麻烦了,caffe中其实已经自带了这样的小工具 caffe-master/tools/extra/parse_log.sh caffe-master/tools/extra/extract_seconds.py和 caffe-master/tools/extra/plot_tra原创 2016-12-12 15:15:28 · 1870 阅读 · 0 评论 -
caffe测试已经训练好的模型的迭代次数修改
今天调用训练好的模型进行测试,发现测试的Batch都只有50,并且似乎找不到在prototxt里面修改,所以怀疑是默认值,如果你要测试大量的数据,一方面是在输入的测试模型prototxt中的TEST中修改batch_size,这样比如原来的batch_size是20,那么测试50个Batch就是测试了1000张images.但是我有20000张images可以测试.所以要到caffe源码里面修改这转载 2016-11-23 17:50:17 · 4136 阅读 · 0 评论 -
Caffe学习数据层及参数设置
caffe的各种数据层在caffe.proto文件中有定义。通过对定义的caffe.proto文件进行编译,产生支持各种层操作的c++代码。后面将会详细解读caffe.proto文件(在caffe里就是当做一个自动代码生成工具来用)。本文主要介绍caffe可以读入数据的各种格式,方便后面采用caffe训练自己的数据数据的来源主要有以下几种:(1)高效的数据库(Level转载 2016-11-23 17:53:31 · 2616 阅读 · 0 评论 -
Caffe 命令解析
$ ./build/tools/caffe.bin test -model=examples/mnist/lenet_train_test.prototxt -weights=examples/mnist/lenet_iter_10000.caffemodel -gpu=0转载 2016-11-25 09:41:36 · 3092 阅读 · 0 评论 -
梳理caffe代码math_functions(一)
转载 http://blog.csdn.net/langb2014/article/details/50986678先从caffe中使用的函数入手看看:[cpp] view plain copy #include #include #include #include "caffe/common.转载 2017-02-20 17:29:20 · 678 阅读 · 0 评论 -
caffe中的normalization_layer
caffe-ssd里面有normalization的实现,包括.hpp,.cpp,.cu。其实现的是L2-normalization L2正则化的公式是: 现在来看caffe的代码实现。 首先是caffe.proto,这里面定义了normalization_parameter message NormalizeParameter { optional bool acros转载 2017-06-13 11:43:08 · 2793 阅读 · 0 评论 -
Caffe学习:Solver
目录:原文SolverMethodsSGDAdaGradNAGScaffoldingUpdating ParametersSnapshotting and Resuming原文SolverSolver通过协调Net的前向loss计算和反向梯度计算(forward inference and backward gradi转载 2016-06-21 18:50:35 · 1079 阅读 · 0 评论 -
caffe各层介绍
from:http://demo.netfoucs.com/danieljianfeng/article/details/42929283最近刚在电脑上装好Caffe,由于神经网络中有不同的层结构,不同类型的层又有不同的参数,所有就根据Caffe官网的说明文档做了一个简单的总结。1. Vision Layers1.1 卷积层(Convolution)转载 2016-06-21 17:39:52 · 830 阅读 · 0 评论 -
linux 终端无法显示图片
由于是使用的终端,plt.plot函数不能用,采用的思路是不显示图像,直接保存要显示的图像。原创 2015-05-06 16:05:59 · 4004 阅读 · 0 评论 -
caffe源码解析之blob
看过caffe官方文档的话,应该会知道,它可以分为三层:Blob、Layer、Net。Blob是一个四维的数组,用于存储数据,包括输入数据、输出数据、权值等等;Layer层则是神经网络中具体的各层结构,主要是计算的作用,在根据配置文件初始化结构后,前向计算结果,反向更新参数,都是它要做的,而它的输入和输出都是Blob数据;Net的话,就是多个Layer组合而成的有向无环图结构,也就是具体的网络了。转载 2015-05-17 19:20:54 · 581 阅读 · 0 评论 -
Caffe导读之layer
转自http://www.shwley.com/index.php/archives/68/前言老实说,caffe中的layer层代码比较多,各种抽象看起来比较绕。官方关于Layer的教程写的很清楚,我根据这个文档,简单画了个图,再理解起来就方便了一些。layer.hpp和layer相关的头文件有:common_layers.hppdata_layers.hpplaye转载 2015-05-17 19:29:21 · 721 阅读 · 0 评论 -
caffe loss
损失函数,一般由两项组成,一项是loss term,另外一项是regularization term。J=L+R先说损失项loss,再说regularization项。1. 分对得分1,分错得分0.gold standard2. hinge loss(for softmargin svm),J=1/2||w||^2 + sum(max(0,1-yf(w,x)))翻译 2015-05-29 10:24:53 · 2049 阅读 · 0 评论 -
alexnet
接下来本文将一步步对该网络配置结构中各个层进行详细的解读(训练阶段):1. conv1阶段DFD(data flow diagram):2. conv2阶段DFD(data flow diagram):3. conv3阶段DFD(data flow diagram):4. conv4阶段DFD(data flow diagram):5. co翻译 2015-05-29 11:42:02 · 6161 阅读 · 0 评论 -
《Notes on Convolutional Neural Networks》
转载与:http://blog.csdn.net/zouxy09/article/details/9993371一、介绍 这个文档讨论的是CNNs的推导和实现。CNN架构的连接比权值要多很多,这实际上就隐含着实现了某种形式的规则化。这种特别的网络假定了我们希望通过数据驱动的方式学习到一些滤波器,作为提取输入的特征的一种方法。 本文转载 2015-05-18 17:39:50 · 622 阅读 · 0 评论 -
Deep Learning 优化方法总结
Stochastic Gradient Descent (SGD)SGD的参数在使用随机梯度下降(SGD)的学习方法时,一般来说有以下几个可供调节的参数:Learning Rate 学习率Weight Decay 权值衰减Momentum 动量Learning Rate Decay 学习率衰减再此之中只有第一的参数(Learning Rate)是必须的,其余部分都是为了提高自适转载 2015-06-03 09:58:26 · 1301 阅读 · 0 评论 -
caffe study(5) - AlexNet 之算法篇
http://blog.sina.com.cn/s/blog_eb3aea990102v5px.html在机器学习中,我们通常要考虑的一个问题是如何的“以偏概全”,也就是以有限的样本或者结构去尽可能的逼近全局的分布。这就要在样本以及结构模型上下一些工夫。在一般的训练任务中,考虑的关键问题之一就是数据分布是否合理:首先是数据集的覆盖度,也就是数据集是否能够覆盖样本空间;其次还要尽可能的保转载 2015-06-03 10:41:57 · 609 阅读 · 0 评论 -
CNN框架理解
9.5、Convolutional Neural Networks卷积神经网络 卷积神经网络是人工神经网络的一种,已成为当前语音分析和图像识别领域的研究热点。它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。该优点在网络的输入是多维图像时表现的更为明显,使图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程。卷积网络转载 2015-05-19 15:32:49 · 3240 阅读 · 0 评论 -
Glog使用介绍与源码分析
1、简介:最新版本: 0.3.3 2013-1-31下载地址:http://code.google.com/p/google-glog/downloads/list使用方便,性能也不错。Google glog 库实现了应用级的日志记录,提供了C++ 风格的流操作和各种助手宏。代码示例:#include int main(int argc,转载 2015-06-09 10:22:08 · 2758 阅读 · 1 评论 -
caffe 损失函数
损失函数,一般由两项组成,一项是loss term,另外一项是regularization term。J=L+R先说损失项loss,再说regularization项。1. 分对得分1,分错得分0.gold standard2. hinge loss(for softmargin svm),J=1/2||w||^2 + sum(max(0,1-yf(w,x)))转载 2015-06-11 15:38:16 · 4398 阅读 · 0 评论 -
Caffe代码导读(1):Protobuf例子
原文章:http://blog.csdn.net/kkk584520/article/details/41046827Protobuf是一种可以实现内存与外存交换的协议接口。这是由谷歌开发的开源工具,目前研究Caffe源码时用到。一个软件项目 = 数据结构 + 算法 + 参数,对于数据结构和算法我们都已经有较多研究,但不同开发者对参数管理却各有千秋。有人喜欢TXT格式化转载 2015-05-17 17:19:23 · 425 阅读 · 0 评论 -
Understanding LSTM Networks
Recurrent Neural NetworksHumans don’t start their thinking from scratch every second. As you read this essay, you understand each word based on your understanding of previous words. You don’t thro转载 2016-07-06 16:35:43 · 806 阅读 · 0 评论 -
cblas_sgemm 源码讲解
1:函数原型:cblas_sgemm(order, transA, transB, M,N,K, ALPHA,A, LDA, B, LDB, BETA, C,LDC);函数作用:C=alpha*A*B+beta*C alpha =1,beta =0 的情况下,等于两个矩阵相成。第一参数 oreder 候选值 有ClasRowMajow 和ClasColMaj原创 2017-10-17 11:15:42 · 10062 阅读 · 3 评论