Caffe常用层参数介绍
DATA
crop:截取原图像中一个固定patch
layers {
name: "data"
type: DATA
top: "data"
top: "label"
data_param {
source: "../data/ImageNet/imagenet-train" #数据存放位置
batch_size: 128 #一次批处理的大小,视内存大小而定。四维数组N*C*H*W中的N
backend: LMDB #数据库类型,默认为leveldb
}
include: { phase: TRAIN } #如果加了这一行的话表示是在训练过程中使用该层,可将TRAIN替换为TEST
}
CONVOLUTION
layer {
name: "conv"
type: "Convolution"
bottom: "data"
top: "conv"
param {
lr_mult: 1 #权重的学习率 该层lr=lr_mult*base_lr
decay_mult: 1 #权重的衰减值
}
param {
lr_mult: 2 #偏置项的学习率
decay_mult: 0 #偏置项的衰减值
}
convolution_param {
num_output: 96 #该层输出的filter的个数。四维数组N*C*H*W中的W
kernel_size: 11 #卷积核大小11*11。可设定长kernel_h与宽kernel_w
stride: 4 #步长,也就是卷积核滑动的距离
weight_filler { #卷积核初始化方式
type: "gaussian" #高斯分布
std: 0.01 #标准差为0.01
}
bias_filler { #偏置项初始化方式
type: "constant" #连续分布
value: 0
}
}
}
这里说一下关于weight_filler和bias_filler的几种设定方式:
| TYPE | PARAM | EXPLAIN |
|---|---|---|
| Constant | Value | 以常量初始化,初始化值为[Value] |
| Gaussian | std,mean | 以高斯分布方式初始化,均值为[mean],标准差为[std] |
| uniform | min,max | 均匀分布,[min,max] |
| xavier | scale | 均匀分布,[-scale,scale],scale=sqrt(3/K*H*W) |
RELU
layer {
name: "relu"
type: "ReLU"
bottom: "conv"
top: "conv"
}
Relu标准函数:f(x)=max(0,x)f(x)=max(0,x)。
当未指定negative_slope值时,为标准Relu层;指定negative_slope值时,f(x)={x,negative_slope×x,x>0x≤0f(x)={x,x>0negative_slope×x,x≤0
LRN
layer {
name: "norm"
type: "LRN"
bottom: "conv"
top: "norm"
lrn_param {
local_size: 5#对于cross channel LRN,表示需要求和的channel的数量;对于within channel LRN,表示需要求和的空间区域的边长。默认为5
alpha: 0.0001 #LRN公式中的参数alpha
beta: 0.75 #LRN公式中的参数beta
}
}
POOLING
layer {
name: "pool"
type: "Pooling"
bottom: "norm1"
top: "pool1"
pooling_param {
pool: MAX #有三种池化方式:MAX,AVG,STOCHASTIC
kernel_size: 3 #卷积核大小;可设定长kernel_h与宽kernel_w
stride: 2 #步长
}
}
INNERPRODUCT
参数和卷积层几乎一样,仅贴出代码,不做过多解释
layer {
name: "fc7"
type: "InnerProduct"
bottom: "fc6"
top: "fc7"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
inner_product_param {
num_output: 4096
weight_filler {
type: "gaussian"
std: 0.005
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
ACCURACY
layer {
name: "accuracy"
type: "Accuracy"
bottom: "fc8"
bottom: "label"
top: "accuracy"
include {phase: TEST}
}
可添加
accuracy_param {
top_k: 5
}
默认为top_1,添加该项后,选择测试top_k准确率。
SOFTMAX_LOSS
layers {
name: "loss"
type: SOFTMAX_LOSS
bottom: "pool3"
bottom: "label"
top: "loss"
include: { phase: TRAIN }
}
注意,在计算softmax_loss前,将pool3层默认经过了一次softmax计算。
另外,以上所有层的name项都是自己随意定的,只要好辨认,不重复就可以。
Caffe常用层参数介绍的更多相关文章
- 深入浅出 JVM GC(4)常用 GC 参数介绍
# 前言 从前面的3篇文章中,我们分析了5个垃圾收集器,还有一些 GC 的算法,那么,在 GC 调优中,我们肯定会先判断哪里出现的问题,然后再根据出现的问题进行调优,而调优的手段就是 JVM 提供给我 ...
- Caffe的solver参数介绍
版权声明:转载请注明出处,谢谢! https://blog.csdn.net/Quincuntial/article/details/59109447 1. Parameters solver.p ...
- Hadoop(三) HADOOP常用命令参数介绍
-help 功能:输出这个命令参数手册 -ls 功能:显示目录信息 示例: hadoop fs -ls hdfs://hadoop-server01:9000/ 备注 ...
- java常用JVM参数介绍
采集服务JVM参数说明 -Xmx4g -Xms4g -Xmn512m -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=4g -Xss256k Xms 是指设定程 ...
- Caffe学习系列(5):其它常用层及参数
本文讲解一些其它的常用层,包括:softmax_loss层,Inner Product层,accuracy层,reshape层和dropout层及其它们的参数配置. 1.softmax-loss so ...
- 转 Caffe学习系列(5):其它常用层及参数
本文讲解一些其它的常用层,包括:softmax_loss层,Inner Product层,accuracy层,reshape层和dropout层及其它们的参数配置. 1.softmax-loss so ...
- 4、Caffe其它常用层及参数
借鉴自:http://www.cnblogs.com/denny402/p/5072746.html 本文讲解一些其它的常用层,包括:softmax_loss层,Inner Product层,accu ...
- caffe(5) 其他常用层及参数
本文讲解一些其它的常用层,包括:softmax_loss层,Inner Product层,accuracy层,reshape层和dropout层及其它们的参数配置. 1.softmax-loss so ...
- 【转】Caffe初试(七)其它常用层及参数
本文讲解一些其它的常用层,包括:softmax-loss层,Inner Product层,accuracy层,reshape层和dropout层及它们的参数配置. 1.softmax-loss sof ...
随机推荐
- POJ 3017 Cut the Sequence
[题目链接] $O(n^2)$ 效率的 dp 递推式:${ dp }_{ i }=min\left( dp_{ j }+\overset { i }{ \underset { x=j+1 }{ max ...
- 【GO基础】main redeclared in this block问题的排查与解决
之前的GO练习环境放在虚拟机内,方便了不少.不过在liteIDE打开的情况下,我迁移了虚拟机,刚好两台机子的VMware版本还不同,这就导致了无法恢复挂起状态,我放弃了挂起. 重新启动后,为了继续练习 ...
- 一个linux下简单的纯C++实现Http请求类(GET,POST,上传,下载)
目录 一个linux下简单的纯C++实现Http请求类(GET,POST,上传,下载) Http协议简述 HttpRequest类设计 请求部分 接收部分 关于上传和下载 Cpp实现 关于源码中的Lo ...
- Android View事件分发-从源码分析
View事件分发-从源码分析 学习自 <Android开发艺术探索> https://blog.csdn.net/qian520ao/article/details/78555397?lo ...
- WEP自动破解工具wesside-ng
WEP自动破解工具wesside-ng wesside-ng是aircrack-ng套件提供的一个概念验证工具.该工具可以自动扫描无线网络,发现WEP加密的AP.然后,尝试关联该AP.关联成功后, ...
- 用户组修改工具samusrgrp
用户组修改工具samusrgrp Windows系统内置了很多用户组,如Administrators.PowerUser.User等.用户隶属不同的组,就具备对应的权限.Kali Linux提供一 ...
- JFreeChart 之折线图
JFreeChart 之折线图 一.JFreeChart 简介 JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets ...
- bzoj 3999 线段树区间提取 有序链剖
看错题目了,想成每个城市都可以买一个东西,然后在后面的某个城市卖掉,问最大收益.这个可以类似维护上升序列的方法在O(nlog^3n)的时间复杂度内搞定 这道题用到的一些方法: 1. 可以将有关的线段提 ...
- 吴恩达-coursera-机器学习-week8
十三.聚类(Clustering) 13.1 无监督学习:简介 13.2 K-均值算法 13.3 优化目标 13.4 随机初始化 13.5 选择聚类数 十四.降维(Dimensionality Red ...
- Java内存泄露分析和解决方案及Windows自带查看工具
Java内存泄漏是每个Java程序员都会遇到的问题,程序在本地运行一切正常,可是布署到远端就会出现内存无限制的增长,最后系统瘫痪,那么如何最快最好的检测程序的稳定性,防止系统崩盘,作者用自已的亲身经历 ...