Caffe + Ubuntu 14.04 64bit + 无CUDA(linux下安装caffe(无cuda)以及python接口)
安装Caffe指导书
环境: Linux 64位
显卡为Intel + AMD,非英伟达显卡
无GPU
一. 安装准备工作
1. 以管理员身份登录
在左上角点击图标,搜索terminal(即终端),以super 管理员身份登录:
命令:sudo su
输入password即可
2. 安装Boost
命令:sudo apt-get install libboost-all-dev
3. 安装BLAS(Intel MKL)
(1) 下载 Intel MKL库,解压后安装
下载地址: https://software.intel.com/en-us/intel-mkl/ 以学校邮箱/科研单位地址进行申请使用免费软件,邮箱里会收到序列号以及下载软件的地址。
进入/tmp,进行解压缩
命令:tar –zxvf l_mkl_11.3.0.109.tgz
(2) 安装MKL
命令:sudo sh install.sh
4. dependent library
命令:
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev protobuf-compiler liblmdb-dev
5. Glog
命令:
wget https://google-glog.googlecode.com/files/glog-0.3.3.tar.gz
tar zxvf glog-0.3.3.tar.gz
cd glog-0.3.3
sudo sh ./configure
sudo make && sudo make install
6. Lib Path
(1)打开/建立 mkl.conf 文件
命令:sudo gedit /etc/ld.so.conf.d/mkl.conf
输入内容
/opt/intel/lib/intel64
/opt/intel/mkl/lib/intel64
(2)打开/建立 cuda.conf 文件
命令:sudo gedit /etc/ld.so.conf.d/cuda.conf
输入内容:
/usr/local/cuda/lib64
/usr/local/cuda/lib
(3)立即生效
命令:sudo ldconfig
7. 安装protoc-c
命令:sudo apt-get install protobuf-c-compiler protobuf-compiler
8. 安装gflags
命令:wget https://github.com/schuhschuh/gflags/archive/master.zip
unzip master.zip
cd gflags-master
mkdir build && cd build
export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1
make
sudo make install
9. 安装lmdb
方法一:(截止目前,这个下载正在维护,所以本人采用第二种方式)
命令:git clone git://gitorious.org/mdb/mdb.git
cd mdb/libraries/liblmdb
make
sudo make install
方法二:
(1)下载lmdb
下载地址:https://github.com/LMDB/lmdb 点击右侧的download,下载下来的是zip格式
(2)解压缩
命令:cd tmp
unzip lmdb_mdb.master.zip
cd lmdb_mdb.master/libraries/liblmdb
make
sudo make install
10. 安装caffe
(1) 下载caffe
命令:git clone
git://github.com/BVLC/caffe.git
(2) 安装caffe
命令:cd caffe
cp Makefile.config.example Makefile.config
二. 编译:
1. 修改Makefile.config三处
CPU_ONLY:= 1的注释(#)去掉
USE_CUDNN:=0
BLAS选择mkl
命令:vi Makefile.config
在需要修改的光标处,先按插入(Insert)键,进行修改(如果写错,不要按左右箭头,先按Esc键,再进行修改),按Esc退出编辑。
如果修改成功,保存命令: :wq ,不保存命令: :q!
2. 编译
命令:make all
make test
make runtest
三. 在mnist运行lenet
1.首先获取mnist数据
命令:cd caffe
./data/mnist/get_mnist.sh
2.创建lenet
命令:./examples/mnist/create_mnist.sh
注意一定要在caffe的根目录下运行以下命令,否则会报“ build/examples/mnist/convert_mnist_data.bin:
not found”的错误。
3.训练cnn
(1)修改
没有GPU的话要记得把caffe/examples/mnist/lenet_solver.prototxt中的solver_mode设置成solver_mode: CPU。
(2)训练cnn,在根目录下执行:
命令:./examples/mnist/train_lenet.sh
准确率可以达到0.9912
四. 安装python接口
由于自己linux系统下python是2.7.6,就没重新安装。如果版本太旧,建议重新安装。参考:http://blog.csdn.net/pan_tian/article/details/7684409
1.安装pip
sudo apt-get install python-pip
python-dev build-essential
2. 配置路径,编辑Makefile.config
PYTHON_INCLUDE := /usr/include/python2.7 \
/usr/lib/python2.7/dist-packages/numpy/core/include
PYTHON_LIB := /usr/local/lib
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
3.运行以下代码安装必要的依赖项:
sudo pip install -r
./python/requirements.txt
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 Cython
ipython
4. 在caffe的根目录下运行:
make pycaffe
5.
如果python路径添加失败,可以考虑以下方法:(小编使用此方法解决啦)
用super 权限登录,设置环境变量
命令: sudo gedit /etc/profile
在文档的最下面输入:(提示:在PYTHONPATH=之后输入的路径是Linux下自己安装的caffe路径)
PYTHONPATH=caffe/python:$PYTHONPATH
export PYTHONPATH
命令: source /etc/profile
python
import caffe
6.
test:
命令:python draw_net.py <protext> <outfile>
e.g.
./python/draw_net.py ./examples/mnist/lenet_train_test.prototxt lenet.png
注意:首先要安装了graphviz和pydot
命令: sudo apt-get
install graphviz graphviz-doc
sudo pip install pydot
参考帖子:
1.
http://www.cnblogs.com/sunshineatnoon/p/4535329.html
2.
http://blog.csdn.net/wingfox117/article/details/46278001
3. yuanyuan的分享
Caffe + Ubuntu 14.04 64bit + 无CUDA(linux下安装caffe(无cuda)以及python接口)的更多相关文章
- Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明
本文安装显卡驱动的方式已经过时, 最新安装说明请参考发布在Gist上的这篇文章,如有任何疑问,仍然欢迎在本文下留言 :P (本文档使用同一块NVIDIA显卡进行显示与计算, 如分别使用不同的显卡进行显 ...
- Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明2
1. 安装build-essentials 安装开发所需要的一些基本包 sudo apt-get install build-essential 2. 安装NVIDIA驱动 (3.4.0) 2.1 准 ...
- Caffe + Ubuntu 14.04 64bit + CUDA6.5 + 无GPU 配置
官网: http://caffe.berkeleyvision.org/installation.html#compilation 参考网站: http://www.cnblogs.com/dupul ...
- 【转载】Caffe + Ubuntu 14.04 + CUDA 6.5 新手安装配置指南
洋洋洒洒一大篇,就没截图了,这几天一直在折腾这个东西,实在没办法,不想用Linux但是,为了Caffe,只能如此了,安装这些东西,遇到很多问题,每个问题都要折磨很久,大概第一次就是这样的.想想,之后应 ...
- 在Ubuntu 14.04 64bit上安装Markdown和绘图软件Haroopad
简介 Haroopad:一款让你欲罢不能的Markdown编辑器 身为大程序员,我本来是不需要 Markdown 编辑器的,但是 Haroopad 让我简直欲罢不能,不能再爱更多.跨平台,代码高亮,V ...
- Window7下安装Ubuntu 14.04 64bit
本文章主要讲解如何在Windows7操作系统中硬盘安装Ubuntu 14.04 64bit: 1.准备文件 1.ubuntu-14.04.4-desktop-amd64.iso 2.EasyBCD.e ...
- 在Ubuntu 14.04 64bit上安装numpy和matplotlib库
原文:http://blog.csdn.net/tao_627/article/details/44004541 按照这个成功安装! 机器学习是数据挖掘的一种实现形式,在学习<机器学习实战> ...
- Installation Guide of Ubuntu 14.04, 64bit on Dell Server
Installation Guide of Ubuntu 14.04, 64bit on Dell Server 准备:U盘(已通过ultraiso刻录ISO镜像). 1.插入U盘: 2.启动服务器, ...
- Ubuntu 14.04 64bit下Caffe + Cuda6.5/Cuda7.0 安装配置教程
http://www.embeddedlinux.org.cn/emb-linux/entry-level/201612/21-6005.html 随着深度学习快速发展的浪潮,许多有兴趣的工作者都转入 ...
随机推荐
- uva10375 Choose and Divide(唯一分解定理)
uva10375 Choose and Divide(唯一分解定理) 题意: 已知C(m,n)=m! / (n!*(m-n!)),输入整数p,q,r,s(p>=q,r>=s,p,q,r,s ...
- 事后分析报告(Postmortem Report)
小组讨论照片 设想和目标 1.我们的团队项目为英语单词学习助手,名为“我爱记单词”.主要提供服务包括:单词查询,单词测试,单词记忆和中英互译.目前开发的是单机版本,用户可以根据自己的需求灵活的使用相应 ...
- bzoj1745: [Usaco2005 oct]Flying Right 飞行航班(贪心+map)
之前做过一道基本一样的题目,抽象出来就是有个容量为c的载体,一些线段上某个点到另一个点要运输w个东西,求从头到尾最多能运多少东西. 这种模型可以用贪心做,用map,map[r]表示r的那个点,我们准备 ...
- 完全卸载MySQL重新安装MySQL
在"运行(win+R)"里键入regedit进入注册表, 输入之后回车(Enter)确认. 确认之后进去注册表界面 1.HEKY_LOCAL_MACHINE\SOFTWARE\MY ...
- HTML中行内元素与块级元素的区别:
HTML中行内元素与块级元素的区别:在标准文档流里面,块级元素具有以下特点: ①总是在新行上开始,占据一整行:②高度,行高以及外边距和内边距都可控制:③宽带始终是与浏览器宽度一样,与内容无关:④它可以 ...
- 配置Office 365单点登录摘要
O365: 如果O365账号之前做过测试,则停用同步,强制删除已有用户涉及命令:Remove-MsolUser -UserPrincipalName zhang_san@company.cn (-Re ...
- AADC安装指南
可选功能中,”密码哈希同步“可以将本地域账号的密码默认每三小时同步到O365:”密码回写“则是反过来,但是世纪互联的答复是”此功能需要Auzre AD Service功能,目前国内版还不支持使用,国际 ...
- .NET对象与Windows句柄(一):句柄的基本概念
在.NET编程中,得益于有效的内存管理机制,对象的创建和使用比较方便,大多数情况下我们无须关心对象创建和分配内存的细节,也可以放心的把对象的清理交给自动垃圾回收来完成.由于.NET类库对系统底层对象进 ...
- C#开源系统大汇总(个人收藏)
C#开源系统大汇总 一.AOP框架 Encase 是C#编写开发的为.NET平台提供的AOP框架.Encase 独特的提供了把方面(aspects)部署到运行时代码,而其它AOP框架依赖 ...
- Spring之Ioc
Spring的特性 >> 轻量级(Lightweight)相较于EJB而言Spring是轻量级的容器,不依赖任何web容器 >> 容器(Container) Spring本身不 ...