Ubuntu14.04安装Caffe(CPU)
一 安装Ubuntu14.04LTS
Ubuntu分区
1.SWAP 交换分区:与物理内存相当。
2.“/” 根目录分区:该区大小由硬盘大小而定,10-100G。
3.“HOME” 家目录分区:该区也视硬盘大小决定,相当于WINDOWS下的我的文档。
设置中文输入法(Ubuntu 14.04 LTS中自带的iBus输入法非常难用)
1.安装Fcitx
sudo apt-get install fcitx-table-wbpy
终端输入以上命令,然后会自动安装相关的依赖库和框架。
2.配置Fcitx
Ubuntu右上角顶栏的小键盘图标->配置;
系统设置->语言支持->默认输入法换成fcitx。
3.重启电脑
Ubuntu常用指令参考
sudo //调用管理管权限 apt-get //获取资源 install //安装 remove //删除 rm -r //删除文件夹 cp -i dir //复制 cat //查询 echo //打印 vi //写权限 sudo gedit //获取权限后,直接在文本中修改 :i //写入 :wq //保存 sudo service lightdm stop/start //开关桌面 sudo sh //运行 chmod +x ./ //调用文件的权限 su root 或者 sudo //权限问题 sudo matlab //仅仅运行matlab会报错 make clean //重新编译 mount umount //挂载与挂载接触,用来安装iso文件时的过渡过程 sudo find / -name libhdf5.so //查找名为libhdf5.so的文件所在的位置/目录 sudo gedit /etc/profile -> PATH=/xxx/xxx/bin:$PATH -> source /etc/profile //添加环境变量
二 搭建Caffe环境
输入命令,检查显卡信息。
lspci | grep -i vga
发现没有Nvidia显卡,所以只能暂时放弃Gpu,改用Cpu。
1.安装依赖(所需的依赖包)
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev sudo apt-get install libatlas-base-dev sudo apt-get install python-dev
2.下载Caffe源码
使用Git直接下载或者去https://github.com/BVLC/caffe下载。
git clone https://github.com/bvlc/caffe.git
进入其根目录,Caffe给定了一个样例配置文件:Makefile.config.example,我们需要将复制为Makefile.config文件。
cd caffe/ cp Makefile.config.example Makefile.config //mv Makefile.config.example Makefile.config
3.修改配置文件Makefile.config
因为我们只用CPU,因此需要将Makefile.config文件中“# CPU_ONLY := 1”,前面的#号去掉即可。
CPU_ONLY :=
4.编译Caffe
进入caffe文件夹根目录下,进行如下操作。
cd ~/caffe make all -j8 make test -j8 make runtest -j8
make默认是用CPU单核运算,在make后面加上-jn标签,比如-j4使用四核加快速度。
注意:若需要重新编译caffe,请先make clean,否则易出错。
5.编译Python接口
(1)安装Python
sudo apt-get install python-dev python-pip //sudo apt-get install python
(2)安装Python依赖包
sudo apt-get install python-numpy python-scipy python-matplotlib python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx python-nose python-pandas python-gflags ipython ipython-notebook python-sympy
(3)依赖包编译
cd ~/caffe make pycaffe
(4)添加~/caffe/Python到$PYTHONPATH
sudo gedit /etc/profile # 末尾添加: export PYTHONPATH=/home/ysp/caffe/python:$PYTHONPATH source /etc/profile
(5)测试是否可以引用
$ python Python ( , ::) [GCC ] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import caffe >>>
python命令行中import caffe报错
解决:把caffe中的python导入到解释器中。
第一种方法:设置环境变量 在终端中输入: export PYTHONPATH=~/caffe/python #caffe的路径下面的python 则该终端起作用,关掉终端后或重新打开一终端,则失效。 在配置文件中输入: A.把环境变量路径放到 ~/.bashrc文件中 sudo echo export JAVA_HOME="~/caffe/python" >> ~/.bashrc B.使环境变量生效 source ~/.bashrc 可以永久有效。
第二种方法:通过代码来实现 在每个python代码中使用以下代码 caffe_root = '/home/ysp/caffe/' import sys sys.path.insert(0, caffe_root + 'python') import caffe
6.安装OpenCV(OpenCV版本>=2.4)
下载opencv安装脚本,直接用脚本安装opencv。
下载脚本后,因为我的系统是ubuntu的,所以接下来的操作针对ubuntu。
cd Install-OpenCV-master/Ubuntu chmod +x * //添加可执行权限 ./opencv_latest.sh
等待大约30分钟,注意有一步输入密码,输入用户密码即可。
配置完opencv,可用如下命令查询其安装版本。
pkg-config --modversion opencv

7.在Mnist运行Lenet
MNIST数据集简介 MNIST数据集是一个大型的手写体数据库,广泛用于机器学习领域的训练和测试,它是由纽约大学的Yann LeCun教授整理的,包括60000个训练样本和10000个测试样本,其图像都是灰度图像,固定尺寸为28x28(像素)。
(1)获取数据源
caffe源码框架的data/mnist文件夹下有MNIST数据集的下载脚本get_mnist.sh.
首先将路径切换到caffe的根目录下 运行get_mnist.sh脚本 下载原数据集
cd caffe ./data/mnist/get_mnist.sh //sh data/mnist/get_mnist.sh ./examples/mnist/create_mnist.sh //sh examples/mnist/create_mnist.sh
(2)修改 solver_mode 为 CPU(因为是CPU运行,所以修改在examples文件下的Mnist下的lenet_solver.prototxt中的solver_mode:CPU)
vi examples/mnist/lenet_solver.prototxt #solver_mode: CPU
(3)训练模型
./examples/mnist/train_lenet.sh
整个训练时间会持续很久,没有启用GPU,并且默认是单核,用时5时38分6秒。


分类准确率:99.09%;loss:0.0287848。
(4)测试模型
1.在caffe/examples/images目录下生成手写的一个28*28像素数字的bmp文件。

2.在caffe/examples目录下用Python编写mnist.py。


3.执行上述脚本。


Ubuntu14.04安装Caffe(CPU)的更多相关文章
- ubuntu14.04安装cuda
1 装系统时候注意,另外14.04要好于12.04,自带了无线驱动 ubuntu14.04安装完不要update 2 安装cuda和cudnn http://blog.csdn.net/l297969 ...
- ubuntu14.04 安装 tensorflow9.0
ubuntu14.04 安装 tensorflow9.0 文章目录 ubuntu14.04 安装 tensorflow9.0 安装pip(笔者的版本为9.0) 仅使用 CPU 的版本的tensorfl ...
- Ubuntu14.04安装配置web/ftp/tftp/dns服务器
目录: 1.安装ftp服务器vsftpd --基于tcp,需要帐号密码 2.安装tftp服务器tftpd-hpa,tftp-hpa --udp 3.web服务器--使用Apache2+Mysql+PH ...
- Ubuntu14.04安装intel集显驱动
Ubuntu14.04安装intel集显驱动 标签(空格分隔): ubuntu linux 驱动安装 1.查看本机显卡型号 使用lspci命令来获取PCI接口硬件信息 o@o-pc:~$ lspci ...
- Ubuntu14.04安装中文输入法以及解决Gedit中文乱码问题
1 设置中文显示环境 1. 打开System Settings 2. 打开Personal-> Language Support. 会弹出如下对话框,提示你“语言支持没安装完整”. 点击“Rem ...
- Ubuntu14.04安装配置ndnSIM
Ubuntu14.04安装配置ndnSIM 预环境 Ubuntu14.04官方系统 请先使用sudo apt-get update更新一下源列表 安装步骤 安装boost-lib sudo apt-g ...
- Ubuntu14.04 安装QQ国际版wine-qqintl
Ubuntu14.04安装qq国际版方式: 首先下载,链接为: https://pan.baidu.com/s/1boPitVD 密码:jp1j 也可去Ubuntu中文的Kylin(优麒麟)官网下载 ...
- 一.ubuntu14.04安装、亮度设置、显卡设置等一体化讲解
一.ubuntu14.04安装 安装步骤很简单的,相信你只要知道并且决定安装ubuntu,你就不会在安装上有问题,下载网址 http://www.ithome.com/html/soft/81539. ...
- Ubuntu14.04安装samba
Ubuntu14.04安装samba 按照惯例,首先介绍Samba.Samba是在Linux系统上实现的SMB(Server Messages Block,信息服务块)协议的一款免费软件.它实现在局域 ...
随机推荐
- 「BZOJ4242」水壶
题目链接 戳我 \(Solution\) 我们看到这题之后发现这题不是\(n^2\)把边弄出来后就跟货车运输差不多了,但是看了数据后发现\(n^2\)条边建不出来啊,这里就不详细的讲\(kruskal ...
- __new()__与__init__()
1. __new__:创建对象时调用,会返回当前对象的一个实例.(默认情况下也就是你在类中没有没有重新这个方法,会默认返回当前类的示例,如果你重写了这个方法,但是在方法中没有返回当前类的示例,那么也就 ...
- flask读书记录
1. 在flask中,如果我们在视图函数中使用data = request.get_json()方法获取数据,那么在客户端发送POST请求时,就需要设置设置正确的Content-Type首部.在aja ...
- Spring Cloud Feign声明式服务调用(转载)+遇到的问题
转载:原文 总结: 1.pom添加依赖 2.application中填写正确的eureka配置 3.启动项中增加注解 @EnableFeignClients 4.填写正确的调用接口 通过原文使用Fei ...
- Linux编程之文件锁
1. 使用 fcntl() 给记录加锁 使用 fcntl() 能够在一个文件的任意部分上放置一把锁,这个文件部分既可以是一个字节,也可以是整个文件.这种形式的文件加锁通常被称为记录加锁,但这种称谓是不 ...
- 用Intellij idea搭建solr调试环境
最近在使用solr时,配置会有一些问题,log里面打印出日志了,但是还是不知道发生这样错误的原因.于是想学习一下相关的solr源码,以下是如何搭建solr调试环境步骤. solr调试环境搭建,首先下载 ...
- LC 499. The Maze III 【lock,hard】
There is a ball in a maze with empty spaces and walls. The ball can go through empty spaces by rolli ...
- React的Sass配置
React提供的脚手架creact-react-app创建的工程文件不像vue那种暴露出webpack来,所以添加依赖需要拐个弯. 为了配置sass需要按以下步骤进行: 一.安装sass-loader ...
- EPOLL内核原理极简图文解读(转)
预备知识:内核poll钩子原理内核函数poll_wait把当前进程加入到驱动里自定义的等待队列上 当驱动事件就绪后,就可以在驱动里自定义的等待队列上唤醒调用poll的进程 故poll_wait作用:可 ...
- nodejs 中间件理解
中间件概念 在NodeJS中,中间件主要是指封装所有Http请求细节处理的方法.一次Http请求通常包含很多工作,如记录日志.ip过滤.查询字符串.请求体解析.Cookie处理.权限验证.参数验证.异 ...

