如何在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.youkuaiyun.com/shuzfan/article/details/51322976
这几位博主增加了自定义的loss层,可供参考:
http://blog.youkuaiyun.com/langb2014/article/details/50489305
http://blog.youkuaiyun.com/chenriwei2/article/details/46432727
本文详细介绍如何在Caffe中增加新的Layer,包括修改proto文件、添加类声明、实现类功能及编写测试代码等步骤,并提供了计算梯度及自定义Loss层的实际案例。
349

被折叠的 条评论
为什么被折叠?



