DropoutUncertaintyCaffeModels 项目教程
1. 项目的目录结构及介绍
DropoutUncertaintyCaffeModels/
├── MNIST/
│ ├── lenet_deploy.prototxt
│ ├── lenet_sampleTest_deploy.prototxt
│ ├── lenet_solver.prototxt
│ └── lenet_dropout_solver.log
├── CIFAR10/
│ ├── MLP1024x1024x1024_deploy.prototxt
│ ├── MLP1024x1024x1024_sampleTest_deploy.prototxt
│ ├── MLP1024x1024x1024_solver.prototxt
│ └── MLP1024x1024x1024_dropout_solver.log
├── src/
│ ├── caffe/
│ │ ├── proto/
│ │ │ └── caffe.proto
│ │ ├── layers/
│ │ │ ├── dropout_layer.cpp
│ │ │ └── dropout_layer.cu
│ └── ...
├── README.md
└── LICENSE
目录结构说明
- MNIST/ 和 CIFAR10/:包含用于MNIST和CIFAR10数据集的实验文件。每个文件夹包含四个文件:
*_deploy.prototxt
:网络结构文件。*_sampleTest_deploy.prototxt
:用于测试时的网络结构文件(采样随机前向传递)。*_solver.prototxt
:求解器配置文件。*_dropout_solver.log
:结果日志文件。
- src/:包含Caffe框架的源代码,特别是与Dropout层相关的文件。
- README.md:项目说明文档。
- LICENSE:项目许可证。
2. 项目的启动文件介绍
项目的启动文件主要是求解器配置文件(*_solver.prototxt
)。以下是一个示例:
train_net: "lenet_deploy.prototxt"
test_net: "lenet_sampleTest_deploy.prototxt"
test_iter: 100
test_interval: 500
base_lr: 0.01
lr_policy: "step"
gamma: 0.1
stepsize: 10000
display: 100
max_iter: 60000
momentum: 0.9
weight_decay: 0.0005
snapshot: 5000
snapshot_prefix: "lenet"
solver_mode: GPU
启动文件说明
train_net
:指定训练网络结构文件。test_net
:指定测试网络结构文件。test_iter
:测试迭代次数。test_interval
:测试间隔。base_lr
:基础学习率。lr_policy
:学习率策略。gamma
:学习率衰减因子。stepsize
:学习率衰减步长。display
:显示间隔。max_iter
:最大迭代次数。momentum
:动量。weight_decay
:权重衰减。snapshot
:快照间隔。snapshot_prefix
:快照前缀。solver_mode
:求解器模式(GPU或CPU)。
3. 项目的配置文件介绍
项目的配置文件主要是网络结构文件(*_deploy.prototxt
和 *_sampleTest_deploy.prototxt
)。以下是一个示例:
name: "LeNet"
layer {
name: "mnist"
type: "Data"
top: "data"
top: "label"
include {
phase: TRAIN
}
transform_param {
scale: 0.00390625
}
data_param {
source: "examples/mnist/mnist_train_lmdb"
batch_size: 64
backend: LMDB
}
}
layer {