![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
caffe
文章平均质量分 80
PolukeAdria
稳步前进的小白程序员
展开
-
caffe中Python层的使用
caffe的大多数层是由c++写成的,借助于c++的高效性,网络可以快速训练。但是我们有时候需要自己写点输入层以应对各种不同的数据输入,比如你因为是需要在图像中取块而不想写成LMDB,这时候可以考虑使用python直接写一个层。而且输入层不需要GPU加速,所需写起来也比较容易。python层怎么用先看一个网上的例子吧(来自http://chrischoy.github.io/res原创 2016-12-22 15:58:40 · 5661 阅读 · 3 评论 -
Caffe源码解析1:Blob
转载请注明出处,楼燚(yì)航的blog,http://www.cnblogs.com/louyihang-loves-baiyan/首先看到的是Blob这个类,Blob是作为Caffe中数据流通的一个基本类,网络各层之间的数据是通过Blob来传递的。这里整个代码是非常规范的,基本上条件编译,命名空间,模板类,各种不太经常看到的关键字如exlicit,inline等等。首先提一下exp转载 2016-12-22 16:20:28 · 395 阅读 · 0 评论 -
Caffe源码解析2:Layer
转载请注明出处,楼燚(yì)航的blog,http://home.cnblogs.com/louyihang-loves-baiyan/layer这个类可以说是里面最终的一个基本类了,深度网络呢就是一层一层的layer,相互之间通过blob传输数据连接起来。首先layer必须要实现一个forward function,前递函数当然功能可以自己定义啦,在forward中呢他会从input也就转载 2016-12-22 17:08:16 · 524 阅读 · 4 评论 -
Caffe源码解析3: Data_layer
转载请注明出处,楼燚(yì)航的blog,http://home.cnblogs.com/louyihang-loves-baiyan/data_layer应该是网络的最底层,主要是将数据送给blob进入到net中,在data_layer中存在多个跟data_layer相关的类BaseDataLayerBasePrefetchingDataLayerDataLayerDummyDa转载 2016-12-22 17:24:29 · 282 阅读 · 0 评论 -
caffe中如何可视化cnn各层的输出
正如caffe的examples所提,CNN model并不是一个黑盒,caffe提供了工具来查看cnn各层的所有输出1.查看CNN各层的activations值的结构(即每一层的输出)代码如下:# 显示每一层for layer_name, blob in net.blobs.iteritems(): print layer_name + '\t' + str(blo转载 2017-03-03 13:04:28 · 1075 阅读 · 1 评论 -
caffe--- 图片数据均值计算小工具
图片减去均值后,再进行训练和测试,会提高速度和精度。因此,一般在各种模型中都会有这个操作。caffe中使用的均值数据格式是binaryproto, 作者为我们提供了一个计算均值的文件compute_image_mean.cpp,放在caffe根目录下的tools文件夹里面。但是这要求先把图片转换为lmdb格式,如果是自己写的data层(一般用pyhon写),则需要另外写原创 2017-02-24 11:27:54 · 1989 阅读 · 0 评论 -
triplet loss 原理以及梯度推导
【前言】 最近,learning to rank 的思想逐渐被应用到很多领域,比如google用来做人脸识别(faceNet),微软Jingdong Wang 用来做 person-reid 等等。learning to rank中其中重要的一个步骤就是找到一个好的similarity function,而triplet loss是用的非常广泛的一种。【理解triplet】转载 2017-02-25 12:16:41 · 657 阅读 · 0 评论