- 博客(60)
- 收藏
- 关注
原创 tensorflow2caffe(3) : 如何将tensorflow框架下训练得到的权重转化为caffe框架下的权重参数
在前两期专栏tensorflow2caffe(1)和tensorflow2caffe(2)中,笔者向大家介绍了caffemodel文件类型下的参数架构和如何取出tensorflow框架下训练参数。在本期中,笔者将向大家阐述,如何去将tensorflow框架下训练得到的参数转化为caffe框架下的规定格式的参数。首先,我们来捋一捋目前我们手里面已经有了哪些东西:1. 我们有自己的tenso...
2017-10-29 09:50:25
12066
44
原创 良心长文:深度学习框架的选择和有关tensorflow编程经验的分享
本文介绍了笔者接触深度学习一年以来的对于两个主流框架(caffe,tensorflow)的体会,并且分享了一些tensorflow框架下的工程经验,都是干货,欢迎大家阅读与讨论!
2017-10-25 09:59:11
5162
5
原创 tensorflow2caffe(2) : 如何在tensorflow中取出模型参数
本文是tensorflow2caffe的第二步,讲述了如何从tensorflow中提取出训练参数,分享给大家~
2017-10-24 10:12:22
8468
5
原创 tensorflow2caffe(1) : caffemodel解析,caffemodel里面到底记录了什么?
本系列开始介绍如何进行tensorflow到caffe的框架转换。由于目前介绍从tensorflow里面取出训练参数的文章比较多,可是解析caffe框架下生成的模型参数的文章比较少,本文讲解了如何可视化生成的caffemodel。
2017-06-07 22:14:24
22186
14
原创 caffe工程化实例:将caffe分类程序编译成.so文件并在程序中调用
在上一篇博客中,笔者提到了对caffe分类程序的工程化,那么本篇博客笔者就来实践一下对caffe分类的工程化。 首先进行一下需求分析:在工程中,往往是用一张图片作为输入,并返回该输入图片的分类结果,也就是说,需要把分类程序放在一个.so链接库中,并在主函数中调用该链接库。 请各位读者朋友们注意,笔者在进行实验时,还是引用了上一篇博客中提到的检测图片中是否包含岔路口的模型,因此请对实
2017-04-16 23:18:12
10439
14
原创 在c++程序中调用caffe训练完毕的模型进行分类
本文讲述了如何在c++程序中调用caffe训练好的模型进行分类,并使用cmake编译分类文件。同时附上classification.cpp解析
2017-04-16 20:39:43
24876
49
原创 caffe源码深入学习6:超级详细的im2col绘图解析,分析caffe卷积操作的底层实现
在本篇博客中,笔者通过绘图,详细解析了caffe中im2col的实现,分析了卷积的底层实现原理。
2017-04-08 19:26:00
19979
29
原创 caffe卷积层延伸:卷积核膨胀详细解析
在笔者的上一篇博客中,解析caffe的卷积层时,在conv_layer.cpp中有一个卷积核膨胀操作,在conv_layer.cpp的第17行有如下代码const int kernel_extent = dilation_data[i] * (kernel_shape_data[i] - 1) + 1; 上面的代码描述了卷积核的膨胀操作,我们不妨来做个假设,卷积核为3*3的,膨胀系数为
2017-04-06 22:33:09
16774
4
原创 caffe源码深入学习5:超级详细的caffe卷积层代码解析
caffe实现的卷积层是一个功能强大完整,同时也是一个相对复杂的层,涉及conv_layer.hpp,conv_layer.cpp,base_conv_layer.hpp和base_conv_layer.cpp,请读者朋友们仔细欣赏~
2017-04-04 11:00:53
13833
7
原创 实用:使用caffe训练模型时solver.prototxt中的参数设置解析
笔者之前发布了关于解析caffe的层的博客,解析caffe常用层的博客正在不断更新中。本篇博客是一个插播的博客,目的在彻底解决使用caffe训练模型时的参数设置问题,为什么要发这篇博客呢?是因为笔者最近在自定义网络时,需要构造自己的solver.prototxt,由于之前使用别人的网络时,很多设置参数都没有变,举个例子,下面是caffe官方例程中关于训练LeNet的配置参数文件:# The t
2017-03-31 19:50:26
10546
原创 caffe源码深入学习4:支持魔改的layer:layer.hpp与layer.cpp
到caffe源码深入学习3为止,我们解析了caffe底层的数据相关代码,了解了caffe这个深度学习框架中数据的存储与流通实现细节,那么,从本篇博客开始,笔者将开始解析更高层的代码,首先解析的是caffe中构成深度神经网络的网络层layer,在使用caffe架构的程序员眼中,各种layer就像一块一块的积木一般,可以通过搭建,拼接成各种各样好看的玩具城堡,同时,这些积木本身还支持各种魔改,在...
2017-02-20 21:26:08
1899
原创 caffe源码深入学习3:更底层的数据信息存取与交换代码:syncedmem.hpp和syncedmem.cpp
还记得在上一期博客中,当我们解析Blob类相关时,遇到一些成员函数如Update(),cpu_data(),mutable_gpu_data()等等,这些函数在完成对应功能的同时,调用了更多底层的函数,这些函数与Blob中的函数同名,如cpu_data(),gpu_data(),mutable_cpu_data(),mutable_gpu_data()等,在上一篇博客中的代码注释部分我们提到,这些
2017-02-19 09:53:33
1731
原创 caffe源码深入学习2:blob.hpp+blob.cpp
在caffe源码深入学习1中我们提到了caffe.cpp文件调用用户定义的solver.prototxt文件进行网络的训练,其中,网络训练的接口是train()函数,而在train()函数中,使用了Solve()这个函数接口去求解网络参数,那么,找逻辑来说,接下来该解析solver.cpp文件,可是,事情并没有想象那么简单!如果打开solver.cpp文件,你会发现里面调用了Net相关的东西,这个
2017-02-15 21:14:15
2722
原创 caffe源码深入学习1:caffe.cpp解析
距离笔者接触深度学习已经将近半年了,在这段时间中,笔者最先接触的是lenet网络,然后就学习了2015-2016年非常火爆的fast-rcnn与faster-rcnn,到最近自己利用深度学习搞事情,笔者的最大感受是,经过一些例子的实践,已经对深度学习有了大概的了解,但是离熟练上手还有很可观的距离,这时,笔者不由得想起来一句老话:read the fxxx source code。因此,笔者开始学习
2017-02-13 20:20:35
8638
6
原创 caffe初探4:对训练得到的模型进行测试
续caffe初探1,2,3,在我们训练出自己的模型之后,就可以测试,或者说使用我们的模型来分类了,在我们使用网络模型对单张图片进行分类测试之前笔者还是列出测试所需物资清单:兹测试所需物资清单如下:(1)类名文件,未准备。标定分类名称的txt文件。(2)测试图片,未准备。准备若干张供网络模型分类的图片。(3)后缀名称为.caffemodel的网络模型文件,已准备。笔者
2016-09-27 16:23:53
16687
3
原创 caffe初探3:结合数据集与设计的网络模型进行训练
续caffe初探1和caffe初探2,回首一下,此时已经有一些收获了呢,已经生成了数据集,并准备了均值文件还有网络结构文件,现在就可以进行模型的训练了。首先,我们来清点一下训练所需要的物资清单吧。兹训练物资清单如下:(1)数据集 准备完毕,分别是./caffe/forkrecognition/train_lmdb和./caffe/forkreco
2016-09-27 10:26:20
4187
2
原创 caffe初探2:有关网络设计的探索
续caffe初探1大笑大笑大笑有兴趣的朋友可以关注笔者的博客,笔者作为一个初涉深度学习领域和caffe的rookie,很高兴同大家一起学习和探讨,对于本人博客中的谬误与疏漏,笔者诚恳地期待各位读者朋友们的指点与建议。在caffe初探1中,笔者提到了如何制作自己的数据集,那么在此文中,笔者将讲解如何撰写网络架构。众所周知,在卷及神经网络中,网络架构是最重要的一部分,网络的构造与模型效果的
2016-09-27 10:18:01
4286
4
原创 caffe初探1:生成自己的数据集
之前的博文转载过如何配置caffe,在配置好caffe之后呢,我们就可以利用caffe结合自己设计的网络与制作的数据集来训练模型并且测试了。可是,一口吃一个胖子是很愚蠢的,笔者希望通过若干个系列的博客告诉大家如何一步一步地训练出自己的模型并测试。这若干个系列的博客笔者打算这样安排:(1)数据的准备与训练数据集生成(2)有关caffe网络设计的探索(3)结合数据集
2016-09-26 20:07:48
8862
6
转载 Ubuntu14.04配置caffe
前段时间接到任务需要配置caffe并在上面训练神经网络相关,对caffe与深度学习一窍不通的我有幸得到了xizero00师兄的指导并在Ubuntu 14.04上面配置了caffe,亲测可用,以下是师兄写的博文正文:网上充斥各种安装方法,但是都很繁琐,特别是安装显卡驱动以及依赖项,对于初学者不是很方便。我觉得采用包管理工具更方便因此写下本文。(1)首先安装ssh,这样
2016-09-26 16:41:47
1191
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅