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 ...
 
随机推荐
- 005.FTP本地用户访问
			
一 新建本地用户 [root@imxhy ftp]# useradd ftpuser #用于登陆ftp的用户 [root@imxhy ftp]# passwd ftpuser Changing pas ...
 - 002.DHCP配置
			
一 DHCP服务器安装包 yum -y install dhcp 二 对应端口 ipv4 udp67.udp68 ipv6 udp546.udp547 三 文件路径 服务名:dhcpd 主配置文件:/ ...
 - Java 操纵XML之创建XML文件
			
Java 操纵XML之创建XML文件 一.JAVA DOM PARSER DOM interfaces The DOM defines several Java interfaces. Here ar ...
 - mybatis学习笔记(六) -- maven+spring+mybatis从零开始搭建整合详细过程(下)
			
继续 mybatis学习笔记(五) -- maven+spring+mybatis从零开始搭建整合详细过程(上) 五.使用监听器启动Spring容器 1.修改pom.xml文件,添加Spring-we ...
 - Message Queue协议AMQP
			
历史: Message Queue的需求由来已久,80年代最早在金融交易中,高盛等公司采用Teknekron公司的产品,当时的Message queuing软件叫做:the information b ...
 - 通过WinAPI播放PCM声音
			
在Windows平台上,播放PCM声音使用的API通常有如下两种. waveOut and waveIn:传统的音频MMEAPI,也是使用的最多的 xAudio2:C++/COM API,主要针对游戏 ...
 - What is CMSIS-DAP
			
The mbed HDK and mbed-enabled hardware support the CMSIS-DAP debug interface, which consists of an a ...
 - WebConfig 加密解密的原理是什么?
			
WebConfig 加密解密的原理是什么? 使用命令 加密数据连接串 加密:aspnet_regiis -pef connectionStrings d:/...(webconfig所在路径,不能含中 ...
 - 基于设备树的TQ2440的中断(2)
			
下面以按键中断为例看看基于设备数的中断的用法: 设备树: tq2440_key { compatible = "tq2440,key"; interrupt-parent = &l ...
 - bind,apply,call的区别
			
在Javascript中,bind, apply, call方法都可以显式绑定上下文this,这三者有何不同呢? bind只绑定this不马上执行 var person = { firstname: ...