《第6章-深度学习开源框架幻灯片》由会员分享,可在线阅读,更多相关《第6章-深度学习开源框架幻灯片(37页珍藏版)》请在金锄头文库上搜索。
1、,高级大数据人才培养丛书之一,大数据挖掘技术与应用,刘鹏 主编 赵海峰 副主编,BIG DATA,刘 鹏 张 燕 总主编,深度学习,全国高校标准教材云计算姊妹篇,剖析大数据核心技术和实战应用,of,40,2,习题,6.1Caffe,第六章 深度学习开源框架,of,40,3,Caffe是一个清晰、高效、开源的深度学习框架,很适合初学者。它由加州大学伯克利的PHD贾扬清开发是应用最广泛的深度学习框架之一。,6.1.1Caffe框架,贾扬清,6.1Caffe,第六章 深度学习开源框架,of,40,4,Caffe是一个清晰、高效、开源的深度学习框架,很适合初学者。它由加州大学伯克利的PHD贾扬清开发是
2、应用最广泛的深度学习框架之一。,6.1.1Caffe框架,多语言,速度快,易上手,社区好,代码组织好。可读性强,例子多。,采用MKL、OpenBLAS等计算库,支持GPU加速。,国内外都有较活跃的社区、且有很多衍生项目。,支持C+、Python和Matlab。,6.1Caffe,第六章 深度学习开源框架,of,40,5,6.1.2安装Caffe,1、操作系统为centenos7 2、安装Nvidia GPU驱动 (1)添加ELRepo 源 # rpm -import https:/www.elrepo.org/RPM-GPG-KEY-elrepo.org # rpm -Uvh http:/ww
3、w.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm,6.1Caffe,第六章 深度学习开源框架,of,40,6,6.1.2安装Caffe,(2)安装显卡驱动 # yum install nvidia-x11-drv nvidia-x11-drv-32bit,6.1Caffe,第六章 深度学习开源框架,of,40,7,6.1.2安装Caffe,(3)重启 # reboot (4)查看GPU信息 # nvidia-smi,6.1Caffe,第六章 深度学习开源框架,of,40,8,6.1.2安装Caffe,(5)安装CUDA 7.5 To
4、olkit:CUDA 7.5 Toolkit为Nvidia工具包。该工具包包括GPU加速库,调试和优化工具,C / C +编译器和运行库等。 # cd /root/cDeep/Nvidia/ # sh cuda_7.5.18_linux.run,6.1Caffe,第六章 深度学习开源框架,of,40,9,6.1.2安装Caffe,(6)安装cuDNN v4:针对深度学习框架的一套GPU加速方案 # cd /root/cDeep/Nvidia/ # tar xvzf cudnn-7.0-linux-x64-v4.0-prod.tgz # cp cuda/include/cudnn.h /usr/
5、local/cuda-7.5/include # cp cuda/lib64/libcudnn* /usr/local/cuda-7.5/lib64 # chmod a+r /usr/local/cuda-7.5/lib64/libcudnn* (7)配置环境变量 # vim /etc/profile 在文件最后添加 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-7.5/lib64 export CUDA_HOME=/usr/local/cuda-7.5 更新环境变量 # source /etc/profile,6.1Caffe
6、,第六章 深度学习开源框架,of,40,10,6.1.2安装Caffe,3、Caffe 安装 (1)安装依赖库 # source /etc/profile # yum install protobuf-devel snappy-devel opencv-devel boost-devel # cd /root/cDeep/Caffe/ # unzip leveldb-master.zip # cd leveldb-master # ./build_detect_platform build_config.mk ./ # make # cp r include/leveldb /usr/loca
7、l/include # cp /root/cDeep/Caffe/leveldb-master/out-static /libleveldb.a /usr/local/lib,6.1Caffe,第六章 深度学习开源框架,of,40,11,6.1.2安装Caffe,(5)安装GFLAGS # cd /root/cDeep/Caffe/ # unzip gflags-master.zip # cd gflags-master # mkdir build& cd build # export CXXFLAGS=-fPIC & cmake . & make VERBOSE=1 # make&make
8、install (6)安装LMDB # cd /root/cDeep/Caffe/ # unzip lmdb.zip # cd lmdb-mdb.master/libraries/liblmdb # make&make install,(2)安装GCC和GCC+ # yum -y install gcc gcc-c+ (3)安装GIT和CMAKE # yum -y install git # yum -y install cmake (4)安装GLOG # cd /root/cDeep/Caffe/ # tar zxvf glog-0.3.3.tar.gz # cd glog-0.3.3 #
9、./configure # make # make install,6.1Caffe,第六章 深度学习开源框架,of,40,12,6.1.2安装Caffe,(7)安装HDF5 # cd /root/cDeep/Caffe/ # tar xf hdf5-1.8.17.tar # cd hdf5-1.8.17 #./configure -prefix=/usr/local/hdf5 # make&make install (8)安装OpenBlas # cd /root/cDeep/Caffe/ # unzip OpenBLAS.zip # cd xianyi-OpenBLAS-3f6398a #
10、 make # make PREFIX=/usr/local/openblas install,(9)安装OpenCV # cd /root/cDeep/Caffe/ # unzip opencv-2.4.13.zip # cd opencv-2.4.13 # mkdir release&cd release # cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON . # make # make install,6
11、.1Caffe,第六章 深度学习开源框架,of,40,13,6.1.2安装Caffe,(10)修改配置文件 # cd /root/cDeep/Caffe/ # unzip caffe-master.zip& cd caffe-master # cp Makefile.config.example Makefile.config # vim makefile.config 修改makefile.config文件里的信息 1)USE_CUDNN := 1 使用cuda进行加速 2)OPENCV_VERSION := 2 对应OpenCV版本是2.4.1 2.4.13 3)CUDA_DIR := /
12、usr/local/cuda-7.5 cuda头文件及库目录 4)BLAS := open 使用openblas BLAS_INCLUDE := /usr/local/openblas/include 设置头文件路径 BLAS_LIB := /usr/local/openblas/lib 设置动态库路径 5)INCLUDE_DIRS := /usr/local/include /usr/local/hdf5/include /usr/include/python2.7 6)设置其它依赖库头文件路径 LIBRARY_DIRS := /usr/local/lib /usr/lib /usr/loc
13、al/hdf5/lib 设置其它依赖库动态库路径,6.1Caffe,第六章 深度学习开源框架,of,40,14,6.1.2安装Caffe,(11)Caffe编译 # cd /root/cDeep/Caffe/ # cd caffe-master # make all j4 # make test # make runtest,6.1Caffe,第六章 深度学习开源框架,of,40,15,6.1.3 案例:基于Caffe的目标识别,1.获取数据集 # cd ./data/cifar10 # ./get_cifar10.sh,cifar10数据集文件示意图,Cifar10图像示意图,6.1Caff
14、e,第六章 深度学习开源框架,of,40,16,6.1.3 案例:基于Caffe的目标识别,2.成训练及测试数据,将样本转为LMDB格式 # cd ./data/cifar10 # ./get_cifar10.sh 3训练及测试 # cd ./examples/cifar10& ./train_full.sh,全国高校标准教材云计算姊妹篇,剖析大数据核心技术和实战应用,of,40,17,习题,6.2TensorFlow,第六章 深度学习开源框架,6.2.1TensorFlow框架,of,40,18,TensorFlow是Google开源的一个深度学习框架。实现了本地和分布式两种接口机制。本地实
15、现机制的client端、master端和worker均运行在同一个机器中;分布式实现机制它与本地实现的代码基本相同,但是client端、master端和worker进程一般运行在不同的机器中,所包含的不同任务由一个集群调度系统进行管理。,具备如下优点:1.多样化部署;2.可被基于梯度的机器学习算法借鉴;3.灵活的Python接口;4.可映射到不同硬件平台;5.支持分布式训练。,6.2TensorFlow,第六章 深度学习开源框架,6.2.2安装TensorFlow,of,40,19,1、安装pip # cd /root/cDeep/Tensorflow/ # python get-pip.py
16、,pip安装示意图,6.2TensorFlow,第六章 深度学习开源框架,6.2.2安装TensorFlow,of,40,20,2安装TensorFlow # cd /root/cDeep/Tensorflow/ # pip install -upgrade tensorflow-0.8.0-cp27-none-linux_x86_64.gpu.whl,左图为tensorflow安装示意图,6.2TensorFlow,第六章 深度学习开源框架,6.2.2安装TensorFlow,of,40,21,3安装测试 # python . import tensorflow as tf hello = tf.constant(Hello, TensorFlow!) sess = t