Caffe Prototxt 特殊层系列:Slice Layer
Slice Layer 的作用是将bottom按照需要切分成多个tops,一般特点是:一个输入多个输出
首先我们先看一下 SliceParameter
message SliceParameter {// The axis along which to slice -- may be negative to index from the end// (e.g., -1 for the last axis). //-1表示最后一个维度// By default, SliceLayer concatenates blobs along the "channels" axis (1). //默认按通道切分optional int32 axis = 3 [default = 1];repeated uint32 slice_point = 2;// DEPRECATED: alias for "axis" -- does not support negative indexing. //该参数 已弃用optional uint32 slice_dim = 1 [default = 1];
}
slice layer 在prototxt里面的书写:
layer {name: "slice"type: "Slice"bottom: "input" #假设维度:N×5×H*Wtop: "output1" #N×1×H*Wtop: "output2" #N×2×H*Wtop: "output3" #N×1×H*Wtop: "output4" #N×1×H*Wslice_param {axis: 1 #axis:切分的维度轴; 1:表示按通道切分,CNN网络常用#slice_point: 表示切分的位置,如当前:slice_point: 1 #1:表示将input从通道1的位置切分,将通道1及之前的通道赋值给output1slice_point: 3 #3:表示将input从通道3的位置切分,将通道3及上一个slice_point之间的通道赋值给output2slice_point: 4 #4:表示将input从通道4的位置切分,将通道4及上一个slice_point之间的通道赋值给output3#最后将通道4之后的通道赋值给output4}
}
值得注意的是,如果有slice_point,slice_point的个数一定要等于top的个数-1;有点类似刀切豆腐,同一维度切3刀,得4块豆腐;
axis表示要进行分解的维度;
slice_point的作用是将axis按照slic_point 进行分解;
slice_point没有设置的时候则对axis进行均匀分解;
举个例子:
layer {name: "vec_weight"type: "Slice"bottom: "label" #N×114×H*Wtop: "vec_weight"top: "heat_weight"top: "vec_temp"top: "heat_temp"slice_param {slice_point: 38slice_point: 57slice_point: 95axis: 1}
}
top输出:
top: "vec_weight" #N×38×H*Wtop: "heat_weight" #N×19×H*Wtop: "vec_temp" #N×38×H*Wtop: "heat_temp" #N×19×H*W
Caffe Prototxt 特殊层系列:Slice Layer相关推荐
- Caffe Prototxt 特殊层系列:Crop Layer
Crop Layer:剪切 一般:输入(bottom blobs)有两个,输出一个(top blobs) 我们假设输入:A,B,输出:C 即将A在参数控制下,按照B的参数进行剪切,输出给C 首先我们先 ...
- 在caffe中添加新层 L1 Loss layer
本文地址:http://blog.csdn.net/ismarvellous/article/details/79069661,转载请注明出处. 本文涉及的所有完整文件可在我的github下载. 1. ...
- caffe 添加自定义层(custom layer)
在<剖析Caffe源码之Layer>可以知道layer是所有层的基类,由此类派生出各种不同的不同的层,其如下图所示: 由此扩展出了各种不同的层,基本能满足要求,但是有时候在搭建拓扑网络时, ...
- 转载 解密蓝牙mesh系列 | 第七篇【低功耗蓝牙】【承载层(bearer layer)】【节点与特性】【代理节点(Proxy Node)】【蓝牙mesh代理服务】【发现代理节点】【代理协议】
SYD8801是一款低功耗高性能蓝牙低功耗SOC,集成了高性能2.4GHz射频收发机.32位ARM Cortex-M0处理器.128kB Flash存储器.以及丰富的数字接口.SYD8801片上集成了 ...
- caffe slice layer 学习
Slice layer 的作用是将bottom按照需要分解成多个tops.(与split layer的不一样在于spliit的作用是将bottom复制多份,输出到tops) 首先我们先看一下slice ...
- caffe网络模型各层详解(中文版)
caffe网络模型各层详解(中文版) 参考网址:https://blog.csdn.net/qq_34220460/article/details/79872830 一.数据层及参数 要运行caffe ...
- caffe中各层的作用
caffe中各层的作用: 关于caffe中的solver: cafffe中的sover的方法都有: Stochastic Gradient Descent (type: "SGD" ...
- caffe prototxt 可视化工具
一个caffe prototxt在线可视化工具:http://ethereon.github.io/netscope/#/editor 直接将prototxt文件内容复制到左边即可 下面是LeNet- ...
- Caffe中BN层与CONV层的融合(merge_bn)
半年前写的博客,今天发现没有发出去,还好本地有md的文档,决定重新发一下 毕竟网上来回抄袭的blog太多了,代码质量也莫得保证 今天需要用pytorch融合下bn层,写个脚本稍后再传到csdn上 原理 ...
最新文章
- 凯文·凯利:下一个5000天的12个必然趋势!
- ArrayList不是并发安全的?那么在高并发环境下怎么使用集合
- php商品数量怎么用js,如何使用js统计页面标签数量
- 缓存三大问题及解决方案
- svn之Previous operation has not finished; run ‘cleanup‘ if it was interrupted解决办法
- 【canvas系列】canvas实现“ 简单的Amaziograph效果”--画对称图【强迫症福利】
- Office web app server2013详细的安装和部署
- 解决:Unknown custom element: <myData> - did you register the component correctly? For recursive compon
- MySQL实验: 实践索引对全列匹配、最左前缀匹配、范围查询等条件的影响以及了解脏读、幻读等...
- java前端框架有哪些_web前端框架有哪些
- 将读书笔记自动生成思维导图(Markdown)
- 虚拟机IP地址和主机IP不在同一个网段
- java混淆工具zelix比较_Java混淆器和java混淆编译
- AutoCAD二次开发基础(一):基础使用
- 【Python+QGIS将地名批量标注于高德地图】
- Python最新就业信息
- 重启计算机关闭账户,电脑开机重启提示您的账户已被停用怎么办
- 路由方案之ARouter源码分析
- Canvas科幻网状波浪动画效果
- 人工智能AI程序设计语言简介
热门文章
- 搜狗输入法也在挑战国人的智商!
- 《小白HTML5成长之路38》插入视频的功能好简单
- 理财学习06-定投选择
- 中学教学参考杂志中学教学参考杂志社中学教学参考编辑部2022年第9期目录
- 用std::string::compare()用法
- 快来领取哔哩哔哩525张超清壁纸!官方壁纸娘壁纸资源(2020年01月04日更新)
- C语言函数大全(上)-ABCDEFGHIKL
- 一文读懂 SAP 全球认证
- request.getParameterMap()用法详解
- 计算机安全会议(学术界)概念普及 ASIACCS2015会议总结(移动安全部分)