Caffe学习系列(15):添加新层

Posted 牧马人夏峥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Caffe学习系列(15):添加新层相关的知识,希望对你有一定的参考价值。

如何在Caffe中增加一层新的Layer呢?主要分为四步:

(1)在./src/caffe/proto/caffe.proto 中增加对应layer的paramter message;

(2)在./include/caffe/***layers.hpp中增加该layer的类的声明,***表示有common_layers.hpp,

data_layers.hpp, neuron_layers.hpp, vision_layers.hpp 和loss_layers.hpp等;

(3)在./src/caffe/layers/目录下新建.cpp和.cu(GPU)文件,进行类实现。

(4)在./src/caffe/gtest/中增加layer的测试代码,对所写的layer前传和反传进行测试,测试还包括速度。(可省略,但建议加上)

  

  这位博主添加了一个计算梯度的网络层,简介明了:

  http://blog.csdn.net/shuzfan/article/details/51322976

 

  这几位博主增加了自定义的loss层,可供参考:

 

  http://blog.csdn.net/langb2014/article/details/50489305

 

  http://blog.csdn.net/tangwei2014/article/details/46815231

 

以上是关于Caffe学习系列(15):添加新层的主要内容,如果未能解决你的问题,请参考以下文章

Caffe学习系列(14):Caffe代码阅读

Caffe学习系列(16):caffe的整体流程

Caffe学习系列——工具篇:神经网络模型结构可视化

转 Caffe学习系列:数据层及参数

转 Caffe学习系列:视觉层(Vision Layers)及参数

人工智能系列 之深度学习和caffe应用整理笔记1