Caffe环境搭建&Mnist手写体识别
来源:互联网 发布:国内天价域名 编辑:程序博客网 时间:2024/05/18 02:24
Caffe环境搭建&Mnist手写体识别
- 安装依赖库
sudo apt-get install libatlas-base-dev sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
- 下载Caffe
git clone https://github.com/BVLC/caffecd caffe/
- 配置Make.config文件
mv Makefile.config.example Makefile.config
然后修改Makefile.config 把:#CPU_ONLY:=1,那一行的注释符号去掉:CPU_ONLY:=1
- 编译caffe 安装Python接口
make allmake mycaffemake test make runtest
- 测试Caffe
sh data/mnist/get_mnist.sh sh examples/mnist/create_mnist.sh vim examples/mnist/lenet_solver.prototxt /*把lenet_solver.prototxt里面的solver_mode 改为 CPU
- 运行脚本
./examples/mnist/train_lenet.sh
可以看到train_lenet.sh中内容如下,指定了训练超参数文件:
#!/usr/bin/env shset -e./build/tools/caffe train --solver=examples/mnist/lenet_solver.prototxt $@
接着打开examples/mnist/lenet_solver.prototxt
# The train/test net protocol buffer definitionnet: "examples/mnist/lenet_train_test.prototxt"# test_iter specifies how many forward passes the test should carry out.# In the case of MNIST, we have test batch size 100 and 100 test iterations,# covering the full 10,000 testing images.test_iter: 100# Carry out testing every 500 training iterations.test_interval: 500# The base learning rate, momentum and the weight decay of the network.base_lr: 0.01momentum: 0.9weight_decay: 0.0005# The learning rate policylr_policy: "inv"gamma: 0.0001power: 0.75# Display every 100 iterationsdisplay: 100# The maximum number of iterationsmax_iter: 10000# snapshot intermediate resultssnapshot: 5000snapshot_prefix: "examples/mnist/lenet"# solver mode: CPU or GPUsolver_mode: CPU
里面设置了一些参数 接着打开examples/mnist/lenet_train_test.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 { name: "mnist" type: "Data" top: "data" top: "label" include { phase: TEST } transform_param { scale: 0.00390625 } data_param { source: "examples/mnist/mnist_test_lmdb" batch_size: 100 backend: LMDB }}layer { name: "conv1" type: "Convolution" bottom: "data" top: "conv1" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 20 kernel_size: 5 stride: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } }}layer { name: "pool1" type: "Pooling" bottom: "conv1" top: "pool1" pooling_param { pool: MAX kernel_size: 2 stride: 2 }}layer { name: "conv2" type: "Convolution" bottom: "pool1" top: "conv2" param { lr_mult: 1 } param { lr_mult: 2 } convolution_param { num_output: 50 kernel_size: 5 stride: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } }}layer { name: "pool2" type: "Pooling" bottom: "conv2" top: "pool2" pooling_param { pool: MAX kernel_size: 2 stride: 2 }}layer { name: "ip1" type: "InnerProduct" bottom: "pool2" top: "ip1" param { lr_mult: 1 } param { lr_mult: 2 } inner_product_param { num_output: 500 weight_filler { type: "xavier" } bias_filler { type: "constant" } }}layer { name: "relu1" type: "ReLU" bottom: "ip1" top: "ip1"}layer { name: "ip2" type: "InnerProduct" bottom: "ip1" top: "ip2" param { lr_mult: 1 } param { lr_mult: 2 } inner_product_param { num_output: 10 weight_filler { type: "xavier" } bias_filler { type: "constant" } }}layer { name: "accuracy" type: "Accuracy" bottom: "ip2" bottom: "label" top: "accuracy" include { phase: TEST }}layer { name: "loss" type: "SoftmaxWithLoss" bottom: "ip2" bottom: "label" top: "loss"}
阅读全文
0 0
- Caffe环境搭建&Mnist手写体识别
- caffe深度学习:mnist手写体的识别
- 机器学习-学习笔记 Caffe安装-MNIST(手写体数字识别)
- Tensorflow手写体识别mnist
- MNIST手写体识别--tensorflow
- matlab + mnist 调用训练好的caffe模型进行手写体识别
- ubuntu下运行caffe下的“Hello World”——mnist手写体数字识别例程
- Windows caffe (一) MNIST手写体跑起来
- MNIST基础手写体识别 tensorflow+Python
- MNIST手写体识别入门程序整理
- tensorflow基于softmax模型实现手写体MNIST数字集识别
- tensorflow 全连接神经网络 MNIST手写体数字识别
- tensorflow 卷积神经网络 LeNet-5模型 MNIST手写体数字识别
- CNN学习(三)—Tensorflow 进行MNIST手写体识别
- Tensorflow MNIST手写体识别多层卷积神经网络程序实现
- window环境下Caffe手写体数据预测
- windows环境Caffe训练mnist
- 手写体识别
- 自动化测试关键字
- N个控制点的贝塞尔曲线
- Ajax面试题
- Maven的联网问题
- 输入两棵二叉树A,B,判断B是不是A的子结构
- Caffe环境搭建&Mnist手写体识别
- 从机器学习谈起
- 基于 OPC 规范的客户应用程序实现
- Java数据结构
- 如何学习机器学习
- 点击隐藏显示几点击其他地方隐藏问题代码还没封装
- Java生成excel,向excel追加数据(通用代码)
- FROM_UNIXTIME 格式化MYSQL时间戳函数
- netty(十二)源码分析之ByteBuf 四