Linux下深度学习常用工具的安装
.Matlab 2015 64bit 的安装
(一)安装包下载
百度网盘: [https://pan.baidu.com/s/1gf9IeCN], 密码: 4gj3
(二)Vmware 使用Windows共享目录
更改虚拟机设置时需要将系统关机,挂起状态不可以设置,Linux共享目录位于/mnt/hgfs
(三) 挂载镜像文件
在Terminal中输入如下命令:
cd /mnt/hgfs/
sudo mount -o loop 迅雷下载/R2015b_glnxa64.iso /media/matlab/
(四)执行安装
在Terminal中输入如下命令:
cd /media
mkdir matlab
sudo ./install
(五)破解
将crack文件夹下的libmwservices.so copy到 /usr/local/MATLAB/R2014A/bin/glnxa64
在Terminal中输入如下命令:
cd /usr/local/MATLAB/R2015b/bin/
sudo ./matlab
cd /mnt/hgfs/ 迅雷下载/Matlab\ 2015b\ Linux64\ Crack/R2015b/bin/
sudo cp -r glnxa64 /usr/local/MATLAB/R2015b/bin/
(五)运行测试
运行测试是否成功破解
在Terminal中输入如下命令:
cd /usr/local/MATLAB/R2015b/bin/
sudo ./matlab
2.caffe 安装
(一)配置apt-get源为国内服务器,备份原配置文件,更新地址为清华镜像或阿里镜像
在Terminal中输入如下命令:
cd /etc/apt
sudo cp sources.list sources.list.bak
vi sources.list
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse # 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
(二)依赖包安装
在Terminal中输入如下命令:
sudo apt-get update
sudo apt-get install git
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 libatlas-base-dev
sudo apt-get install python-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
(三)caffe源码下载
git clone https://github.com/bvlc/caffe.git
cd caffe/
mv Makefile.config.example Makefile.config
(四)执行编译
修改Makefile.config,打开CPU_ONLY选项,保存;
即第6行修改为
# CPU-only switch (uncomment to build without GPU support).
CPU_ONLY := 1
第85行修改为
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
修改Makefile文件173行
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
执行编译
make –j4
make test -j4
make runtest -j4
当返回PASSED结果时即为编译成功
#GPU编译错误: undefined reference to `cv::imread(cv::String const&, int),即找不到OpenCVC动态链接库
sudo gedit Makefile , 修改为
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial opencv_core opencv_highgui opencv_imgproc
3.TensorFlow安装
(一)获取并安装python-pip,python-dev
sudo apt-get install python-pip python-dev
(二)下载TensorFlow
https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl
(三)安装TensorFlow
pip install tensorflow-0.8.0-cp27-none-linux_x86_64.whl
出现Successfully installed numpy-1.14.3 protobuf-3.0.0b2 tensorflow-0.8.0即说明已经安装成功
注意:如果同时安装了python2和python3,使用pip安装时可能会报错,例如上述安装包tensorflow-0.8.0-cp27-none-linux_x86_64.whl代表python2.7版本的,因此需要使用pip2 install
如何测试:
在Linux Shell中输入python进入交互模式
import tensorflow as tf
hello = tf.constant("Hello World, TensorFlow!")
sess = tf.Session()
print(sess.run(hello))
根据运行结果 Hello World,TensorFlow! 即可判断成功安装
4.Matconvnet的编译
(一)打开Matlab
cd /usr/local/MATLAB/R2015b/bin/
sudo ./matlab
(二)定位到Matconvnet目录,执行编译
cd /usr/local/MATLAB/R2015b/bin/
vl_setupnn
vl_compilenn('verbose',1)
问题1 gcc,g++版本不匹配
#Warning: You are using gcc version '5.4.0-6ubuntu1~16.04.9)'.
#The version of gcc is not supported. The version currently
#supported with MEX is '4.7.x'. sudo apt-get install gcc-4.7
sudo apt-get install g++-4.7
cd /usr/bin/
sudo rm gcc
sudo ln -s gcc-4.7 gcc
gcc -v
sudo rm g++
sudo ln -s g++-4.7 g++
g++ -v
5.CUDA和CUDNN的安装(虚拟机不能使用CUDA)
CUDA是NVIDIA的编程语言平台,想使用GPU就必须要使用cuda,CUDNN是GPU加速计算深层神经网络的库。
以安装Cuda-9.2为例,具体版本请根据实际需求选择
在NVIDIA官网选择驱动下载(https://developer.nvidia.com/compute/cuda/9.2/Prod/local_installers/cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64),如出现网络打不开可将链接复制到迅雷下载
执行如下操作:
sudo dpkg -i cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64.deb
sudo apt-key add /var/cuda-repo-9-2-local/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda
nvidia-smi
问题1 由于虚拟机不支持对主机显卡的调用,安装cuda后可能会导致重启后无法进入图形界面
通过执行 sudo apt-get purge nvidia-* 删除原Nvidia显卡驱动,执行reboot即可
问题2 最新版TensorFlow-GPU版本不支持Cuda-9.2(python中执行import tensorflow提示Tensorflow:ImportError:libcusolver.so.9.0)
请安装cuda-9.0
CUDN的安装
②解压文件,并拷贝到usr/local/cuda/目录
#使用如下语句在当前目录解压,解压后生成include和lib64文件夹
tar -zxvf cudnn-9.2-linux-x64-v7.1.tgz
#将lib文件和对应头文件拷贝到/usr/local目录
cd cuda/lib64/
sudo cp lib* /usr/local/cuda/lib64/
cd ../
sudo cp include/cudnn.h /usr/local/cuda/include/
③更新软连接
cd /usr/local/cuda/lib64
sudo rm -rf libcudnn.so libcudnn.so.7
sudo ln -s libcudnn.so.7.1.4 libcudnn.so.7
sudo ln -s libcudnn.so.7 libcudnn.so
④添加环境变量
sudo gedit /etc/profile
在打开的文件中加入如下两句话
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
保存后,使环境变量立即生效
source /etc/profile
⑤安装cudnn example
cd /usr/local/cuda/samples
sudo make all -j4
全部编译完成后,进入 samples/bin/x86_64/linux/release, 运行deviceQuery
cd bin/x86_64/linux/release
./deviceQuery
6.OpenCV的安装和使用
①.依赖库安装
sudo apt-get install cmake
sudo apt-get install build-essential
sudo apt-get install libgtk2.0-dev
sudo apt-get install libavcodec-dev
sudo apt-get install libavformat-dev
sudo apt-get install libjpeg.dev
sudo apt-get install libtiff4.dev
sudo apt-get install libswscale-dev
sudo apt-get install libjasper-dev
②.从官网(https://github.com/opencv/opencv/tree/3.4.1)下载源码,编译安装
cp -r opencv-2.4.13.6.zip /home/shine/Downloads/
cd /home/shine/Downloads/
unzip opencv-2.4.13.6.zip
cd opencv-2.4.13.6/
mkdir build
cd build/
③.创建build目录并在该目录下生成Makefile文件,指定安装路径为/usr/local/(参考 https://stackoverflow.com/questions/45518317/in-source-builds-are-not-allowed-in-cmake)
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local
sudo make -j4
sudo make install -j4
make clean
如需安装opencv_contribute(扩展包中的很多代码并没有通过大量的稳定性测试,但是其基本功能还是可以运行的),对命令进行修改(需自行下载opencv_contrib),例如本例中保存路径为~/Downloads
#如下命令指定安装路径以及扩展包的路径,请根据实际修改
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=~/Downloads/opencv_contrib-master/modules ..
sudo make -j4
sudo make install -j4
make clean
#若出现No package 'gstreamer-video-1.0' found,请参考http://answers.opencv.org/question/95734/cmake-not-picking-gstreamer-on-ubuntu/ #若出现Unknown CMake command "ocv_append_source_files_cxx_compiler_options,请参考https://blog.csdn.net/qq_40155090/article/details/79977423
#配置过程中可能出现face_landmark_model.dat下载过慢导致的失败,请使用VPN下载https://raw.githubusercontent.com/opencv/opencv_3rdparty/8afa57abc8229d611c4937165d20e2a2d9fc5a12/face_landmark_model.dat后放置于/opencv-3.4.1/.cache/data目录
#配置成功后的截图如下所示,May you succeed, congruations and enjoy
#执行sudo make -j4进行编译时可能会遇到各种奇怪的问题(例如hdf5.cpp编译失败),因此需要确保opencv-master与opencv-contribute为一个版本,建议都使用github上的版本 #编译时出现~Download/opencv_contrib-master/modules/xfeatures2d/src/boostdesc.cpp:653:37: fatal error: boostdesc_bgm.i: No such file or directory compilation terminated.
#参考 https://github.com/opencv/opencv_contrib/issues/1301
http://answers.opencv.org/question/113942/cmake-failing-with-hash-mismatch/ #如果问题仍然没有解决,尝试下载上述缺少的文件放在~/Downloads/opencv_contrib-master/modules/xfeatures2d/src目录下即可
#编译时出现opencv2/xfeatures2d/cuda.hpp: No such file or directory
#参考https://github.com/opencv/opencv_contrib/issues/1131,执行cmake -DBUILD_opencv_xfeatures2d=OFF ..
#编译时出现opencv2/sfm/conditioning.hpp: No such file or directory
#执行了sudo make clean;sudo make -j4;后问题解决了(无法解释)
如何查看OpenCV版本
pkg-config --modversion opencv
④.添加库路径
sudo vi /etc/ld.so.conf.d/opencv.conf , 输入/usr/local/lib , :wq保存并退出
⑤.添加环境变量
sudo vi /etc/profile
#在末尾输入
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
#更新环境变量:
source /etc/profile
sudo vi /etc/bash.bashrc #在末尾输入
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
#更新环境变量
source /etc/profile
⑥.更新系统库配置
sudo ldconfig
⑦.查看是否安装成功
pkg-config --cflags opencv
pkg-config --libs opencv
⑧.执行测试程序,定位到sample目录,执行build_all
cd /home/shine/Downloads/opencv-2.4.13.6/samples/c
./build_all.sh
./find_obj
若执行build_all编译时出现如下错误
compiling contours.c
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o: unrecognized relocation (0x2a) in section `.init'
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
可能是没有安装binutils,执行
sudo apt-get install binutils
./build_all.sh
./find_obj
7.Jupyter
①安装
sudo pip3 install --upgrade pip
sudo pip3 install jupyter
sudo pip install matplotlib 以上命令使用python3为基础,因此运行jupyter会调用python3,若要使用python2请使用
sudo pip install jupyter
②测试使用
jupyter notebook
随后在浏览器界面即可使用 http://localhost:8888/notebooks 进行登陆
8.shadowsocks
sudo apt-get update
sudo apt-get install python-pip
sudo pip install shadowsocks
sudo gedit /etc/shadowsocks.json
配置shadowsocks,粘贴如下内容
{"server":"xx.xx.xx.xx",
"server_port":xxxx,
"local_address": "127.0.0.1",
"local_port":1080,
"password":"xxxxxxxx",
"timeout":300,
"method":"aes-256-cfb",
"fast_open": true,
"workers": 1
}
sudo sslocal -c /etc/shadowsocks.json -d start
sudo gedit /etc/rc.local
配置开机启动
在exit0上一行加上/usr/local/bin/sslocal -c /etc/shadowsocks.json -d start
①火狐浏览器使用
打开Add-ons,搜索FoxyProxy Standard,点击Add To Firefox,添加完成后点击右上角图表进入Options,即如下图所示
点击左上角Add,其中Title可随便定义,IP以及Port同上shadowsocks配置,默认为127.0.0.1,1080
②谷歌浏览器使用
从github上下载最新的插件SwitchyOmega-Chromium-2.5.15.crx,将其拖到chrome中即可完成安装,同理完成上述配置,点击Apply Changes
可通过右上角选择Direct或proxy选择时候走代理通道
9.Linux下载工具aria2
推荐这个工具主要在于Linux下没有比较好的绿色百度网盘下载器,由于百度对非会员进行速度限制(默认50Kb/s),并强制大文件通过百度云管家下载,具体操作如下
# aria2安装
sudo apt-get install aria2
# 安装浏览器插件,推荐chrome,从github下载zip文件,打开chrome://extensions/,将文件夹中的BaiduExporter.crx拖到浏览器即可
# https://codeload.github.com/acgotaku/BaiduExporter/zip/master
# 将需要下载的文件保存到个人网盘,在界面中选择导出下载,选择其中的文本导出,将窗口中命令复制到命令行中运行即可
#博主测试使用aria2下载速度应该在500kb/s左右
#如果希望达到更快的速度,请参考 https://github.com/proxyee-down-org/proxyee-down
#使用proxyee-down下载同时将分段数调到最大(windows版本请自行百度)
10.sourceinsight
sourceinsight是windows下常用的代码浏览工具,虽然使用vim+ctags也能达到类似的效果,但习惯上还是更倾向于使用sourceinsight
sourceinsight没有linux的发行版本,因此要在ubuntu上运行需要安装wine,具体操作方式如下(需要自行下载sourceinsight安装包,3.5版本激活码SI3US-205035-36448):
sudo apt-get install wine
wine Si3583Setup.exe
参考文献:
1.https://www.nvidia.cn/object/caffe-installation-cn.html (如何在 NVIDIA GPU 上下载并安装CAFFE)
Linux下深度学习常用工具的安装的更多相关文章
- 保姆级教程——Ubuntu16.04 Server下深度学习环境搭建:安装CUDA8.0,cuDNN6.0,Bazel0.5.4,源码编译安装TensorFlow1.4.0(GPU版)
写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...
- 【Tool】 深度学习常用工具
1. caffe 网络结构可视化 http://ethereon.github.io/netscope/quickstart.html 将网络结构复制粘贴到左侧的编辑框,按Shift+Enter就可以 ...
- [原创]Linux下网络性能测试Netperf工具介绍及安装
[原创]Linux下网络性能测试Netperf工具介绍及安装 1 官方网站 http://www.netperf.org/netperf/ 2 Netperf介绍 Netperf是一种网络性能的测试工 ...
- 【one day one linux】linux下的软件包管理工具
Linux 下的软件包管理工具 linux下的软件安装可以通过两种方式,一种是直接使用自带的软件包管理工具安装,另外一种通过编译源码安装. 1.软件包的种类 Red Hat和Fedora:redhat ...
- Linux下查看进程IO工具iopp
Linux下的IO检测工具最常用的是iostat,不过iostat只能查看到总的IO情况.如果要细看具体那一个程序点用的IO较高,可以使用iotop .不过iotop对内核版本和Python版本有要求 ...
- linux下的数据备份工具rsync讲解
linux下的数据备份工具 rsync(remote sync 远程同步) 名词解释: sync(Synchronize,即“同步”)为UNIX操作系统的标准系统调用,功能为将内核文件系统缓冲区的 ...
- Linux:linux服务器稳定性压力测试工具stress安装与使用
stress是一个linux下的压力测试工具,专门为那些想要测试自己的系统,完全高负荷和监督这些设备运行的用户. 1. stress1.0.4下载地址 下载:https://fossies.org/l ...
- Linux下iptables学习笔记
Linux下iptables学习笔记 在Centos7版本之后,防火墙应用已经由从前的iptables转变为firewall这款应用了.但是,当今绝大多数的Linux版本(特别是企业中)还是使用的6. ...
- linux下MySQL 5.6源码安装
linux下MySQL 5.6源码安装 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件 ...
随机推荐
- 【大数据】初识Hadoop
因为项目日志体量较大,每天有4-7T的日志量,传统的sqlserver已经不能满足,所以现在需要使用到大数据的相关工具进行记录和使用. 虽然公共项目提供了组件和解决方案,但是对于一些名词.概念还是有必 ...
- How to: Compile Linux kernel 2.6
Compiling custom kernel has its own advantages and disadvantages. However, new Linux user / admin ...
- centos 7 安装 Git-2.23.0
Git是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容. Git 易于学习,占地面积小,具有闪电般的快速性能. 它具有诸如Subversion,CVS,Perforc ...
- Hive的视图和索引(九)
Hive的视图和索引 1.Hive Lateral View 1.基本介绍 Lateral View用于和UDTF函数(explode.split)结合来使用. 首先通过UDTF函数拆分成多行 ...
- Python——列表赋值的若干用例
原创声明:本文系博主原创文章,转载或引用请注明出处. 1. 直接赋值 >>> a = [1,2,3,4,5] >>> b = a >>> id(a ...
- Python Module模块
模块 https://docs.python.org/zh-cn/3/tutorial/modules.html 模块的概念被高级语言广泛使用. Python的定义 一个包括Python定义和语句的文 ...
- Netty TCP 通信失败
前段时间,在搞Netty TCP 通信,踩了一些坑,今天就在这篇总结一下 Netty通信失败原因 Netty TCP 通信失败的可能原因: 1.服务端或客户端,其中一端没有正常启动 2.是否在正确的位 ...
- CSS基础学习-8.CSS盒子模型_标准盒子&&9.CSS怪异盒子
怪异盒模型 box-sizing:content-box;/*正常盒模型,默认值*/ box-sizing:border-box:/*怪异盒模型,固定了盒子的大小,无论是否添加内边距还是边框,盒子的大 ...
- 第七章 路由 76 路由传参-使用params方式传递路由参数
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- Linux常用命令type、date
Linux命令类型: 内置命令(shell内置):cd is shell builtin 外部命令:命令 is /usr/bin/命令,在文件系统的某个路径下有一个与命令名称相应的可执行文件 type ...