- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 caffe源码学习(六) 自定义层
经过前面对google protocol buffer、Blob、SyncedMemory 与 shared_ptr、layer、data layer的初步学习,已经能够仿照caffe中已有的层来写自定层了。所以接下来就在caffe深度学习框架下写自定义层。首先应该注意,不同版本的caffe可能会有一些区别,所以要根据官网指南来写自定义层。为了方便,把目前版本的指南(20160605)贴出来:Dev
2016-06-06 00:06:18 6090
原创 caffe源码学习(五) data layer
通过前面的学习,了解了protobuf,blob,cpu和gpu数据管理,基类Layer。在使用caffe时,我们首先在prototxt文件中定义数据层,可以参考官网教程。这样我们就可以通过数据层来读取和预处理我们指定格式的数据,并将其送入网络。接下来就学习的目的是:了解caffe是怎样实现这样的数据层的,对于自己的特殊数据能够写出自己的数据层。参考官网列出的各类继承关系,逐一学习它们的作用。1.源
2016-04-30 09:55:25 7779
原创 caffe源码学习(四) layer
根据caffe官网教程我们知道,caffe是通过层来定义网络的,layer既是model基础,也是计算的基本单元。而layer的操作对象就是之前学习的Blob。以后像在caffe框架下实现自己的算法,应该主要是添加自己的layer了,这也是我学习caffe源码的主要原因之一。 还是先通过caffe官网教程对layer有个整体的认识,为了方便还是把它贴过来。Layer computation and
2016-04-26 12:04:52 5709
原创 caffe 源码学习(三) SyncedMemory 与 shared_ptr
在blob.hpp中我们会看到protected成员变量:protected: shared_ptr<SyncedMemory> data_; shared_ptr<SyncedMemory> diff_; shared_ptr<SyncedMemory> shape_data_; vector<int> shape_; int count_; int capacity_;其
2016-04-26 11:01:18 4964
原创 caffe源码学习(二) Blob
根据caffe官方教程我们知道,在数据的前向传播和梯度的反向传播过程中,caffe以Blob的形式来存储、传递和操作数据,Blob是标准的array,也是框架的统一内存接口。 为了更明了,还是先把关于Blob的caffe官方教程贴过来吧。Blob storage and communication A Blob is a wrapper over the actual data being pr
2016-04-24 16:37:03 4036
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人