《第6章深度学习开源框架古柏高教》由会员分享,可在线阅读,更多相关《第6章深度学习开源框架古柏高教(37页珍藏版)》请在金锄头文库上搜索。
1、高级大数据人才培养丛书之一,大数据挖掘技术与应用刘鹏主编赵海峰副主编BIGDATA刘鹏张燕总主编深度学习第六章深度学习开源框架6.1Caffe6.2TensorFlow6.3其它开源框架全国高校标准教材云计算姊妹篇,剖析大数据核心技术和实战应用of402习题6.1Caffe第六章深度学习开源框架of403uCaffe是一个清晰、高效、开源的深度学习框架,很适合初学者。它由加州大学伯克利的PHD贾扬清开发是应用最广泛的深度学习框架之一。6.1.1Caffe框架贾扬清6.1Caffe第六章深度学习开源框架of404uCaffe是一个清晰、高效、开源的深度学习框架,很适合初学者。它由加州大学伯克利的
2、PHD贾扬清开发是应用最广泛的深度学习框架之一。6.1.1Caffe框架多语言速度快易上手社区好u代码组织好。可读性强,例子多。u采用MKL、OpenBLAS等计算库,支持GPU加速。u国内外都有较活跃的社区、且有很多衍生项目。u支持C+、Python和Matlab。6.1Caffe第六章深度学习开源框架of4056.1.2安装Caffe1、操作系统为centenos72、安装NvidiaGPU驱动(1)添加ELRepo源#rpm-importhttps:/www.elrepo.org/RPM-GPG-KEY-elrepo.org#rpm-Uvhhttp:/www.elrepo.org/elr
3、epo-release-7.0-2.el7.elrepo.noarch.rpm6.1Caffe第六章深度学习开源框架of4066.1.2安装Caffe(2)安装显卡驱动#yuminstallnvidia-x11-drvnvidia-x11-drv-32bit6.1Caffe第六章深度学习开源框架of4076.1.2安装Caffe(3)重启#reboot(4)查看GPU信息#nvidia-smi6.1Caffe第六章深度学习开源框架of4086.1.2安装Caffe(5)安装CUDA7.5Toolkit:CUDA7.5Toolkit为Nvidia工具包。该工具包包括GPU加速库,调试和优化工具,
4、C/C+编译器和运行库等。#cd/root/cDeep/Nvidia/#shcuda_7.5.18_linux.run6.1Caffe第六章深度学习开源框架of4096.1.2安装Caffe(6)安装cuDNNv4:针对深度学习框架的一套GPU加速方案#cd/root/cDeep/Nvidia/#tarxvzfcudnn-7.0-linux-x64-v4.0-prod.tgz#cpcuda/include/cudnn.h/usr/local/cuda-7.5/include#cpcuda/lib64/libcudnn*/usr/local/cuda-7.5/lib64#chmoda+r/usr
5、/local/cuda-7.5/lib64/libcudnn*(7)配置环境变量#vim/etc/profile在文件最后添加exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-7.5/lib64exportCUDA_HOME=/usr/local/cuda-7.5更新环境变量#source/etc/profile6.1Caffe第六章深度学习开源框架of40106.1.2安装Caffe3、Caffe安装(1)安装依赖库#source/etc/profile#yuminstallprotobuf-develsnappy-develope
6、ncv-develboost-devel#cd/root/cDeep/Caffe/#unzipleveldb-master.zip#cdleveldb-master#./build_detect_platformbuild_config.mk./#make#cprinclude/leveldb/usr/local/include#cp/root/cDeep/Caffe/leveldb-master/out-static/libleveldb.a/usr/local/lib6.1Caffe第六章深度学习开源框架of40116.1.2安装Caffe(5)安装GFLAGS#cd/root/cDeep
7、/Caffe/#unzipgflags-master.zip#cdgflags-master#mkdirbuild&cdbuild#exportCXXFLAGS=-fPIC&cmake.&makeVERBOSE=1#make&makeinstall(6)安装LMDB#cd/root/cDeep/Caffe/#unziplmdb.zip#cdlmdb-mdb.master/libraries/liblmdb#make&makeinstall(2)安装GCC和GCC+#yum-yinstallgccgcc-c+(3)安装GIT和CMAKE#yum-yinstallgit#yum-yinstallc
8、make(4)安装GLOG#cd/root/cDeep/Caffe/#tarzxvfglog-0.3.3.tar.gz#cdglog-0.3.3#./configure#make#makeinstall6.1Caffe第六章深度学习开源框架of40126.1.2安装Caffe(7)安装HDF5#cd/root/cDeep/Caffe/#tarxfhdf5-1.8.17.tar#cdhdf5-1.8.17#./configure-prefix=/usr/local/hdf5#make&makeinstall(8)安装OpenBlas#cd/root/cDeep/Caffe/#unzipOpenB
9、LAS.zip#cdxianyi-OpenBLAS-3f6398a#make#makePREFIX=/usr/local/openblasinstall(9)安装OpenCV#cd/root/cDeep/Caffe/#unzipopencv-2.4.13.zip#cdopencv-2.4.13#mkdirrelease&cdrelease#cmake-DCMAKE_BUILD_TYPE=RELEASE-DCMAKE_INSTALL_PREFIX=/usr/local-DBUILD_PYTHON_SUPPORT=ON-DBUILD_EXAMPLES=ON.#make#makeinstall6.1
10、Caffe第六章深度学习开源框架of40136.1.2安装Caffe(10)修改配置文件#cd/root/cDeep/Caffe/#unzipcaffe-master.zip&cdcaffe-master#cpMakefile.config.exampleMakefile.config#vimmakefile.config修改makefile.config文件里的信息1)USE_CUDNN:=1使用cuda进行加速2)OPENCV_VERSION:=2对应OpenCV版本是2.4.12.4.133)CUDA_DIR:=/usr/local/cuda-7.5cuda头文件及库目录4)BLAS:=
11、open使用openblasBLAS_INCLUDE:=/usr/local/openblas/include设置头文件路径BLAS_LIB:=/usr/local/openblas/lib设置动态库路径5)INCLUDE_DIRS:=/usr/local/include/usr/local/hdf5/include/usr/include/python2.76)设置其它依赖库头文件路径LIBRARY_DIRS:=/usr/local/lib/usr/lib/usr/local/hdf5/lib设置其它依赖库动态库路径6.1Caffe第六章深度学习开源框架of40146.1.2安装Caffe(
12、11)Caffe编译#cd/root/cDeep/Caffe/#cdcaffe-master#makeallj4#maketest#makeruntest6.1Caffe第六章深度学习开源框架of40156.1.3案例:基于Caffe的目标识别1.获取数据集#cd./data/cifar10#./get_cifar10.shcifar10数据集文件示意图Cifar10图像示意图6.1Caffe第六章深度学习开源框架of40166.1.3案例:基于Caffe的目标识别2.成训练及测试数据,将样本转为LMDB格式#cd./data/cifar10#./get_cifar10.sh3训练及测试#cd
13、./examples/cifar10&./train_full.sh第六章深度学习开源框架6.1Caffe6.2TensorFlow6.3其它开源框架全国高校标准教材云计算姊妹篇,剖析大数据核心技术和实战应用of4017习题6.2TensorFlow第六章深度学习开源框架6.2.1TensorFlow框架of4018TensorFlow是Google开源的一个深度学习框架。实现了本地和分布式两种接口机制。本地实现机制的client端、master端和worker均运行在同一个机器中;分布式实现机制它与本地实现的代码基本相同,但是client端、master端和worker进程一般运行在不同的机
14、器中,所包含的不同任务由一个集群调度系统进行管理。具备如下优点:1.多样化部署;2.可被基于梯度的机器学习算法借鉴;3.灵活的Python接口;4.可映射到不同硬件平台;5.支持分布式训练。6.2TensorFlow第六章深度学习开源框架6.2.2安装TensorFlowof40191、安装pip#cd/root/cDeep/Tensorflow/#pythonget-pip.pypip安装示意图6.2TensorFlow第六章深度学习开源框架6.2.2安装TensorFlowof40202安装TensorFlow#cd/root/cDeep/Tensorflow/#pipinstall-up
15、gradetensorflow-0.8.0-cp27-none-linux_x86_64.gpu.whl左图为tensorflow安装示意图6.2TensorFlow第六章深度学习开源框架6.2.2安装TensorFlowof40213安装测试#python.importtensorflowastfhello=tf.constant(Hello,TensorFlow!)sess=tf.Session()print(sess.run(hello)Hello,TensorFlow!sess.close()exit()tensorflow测试示意图6.2TensorFlow第六章深度学习开源框架6.
16、2.3案例:基于TensorFlow的目标识别of40221.下载Cifar10数据集#wgethttp:/www.cs.toronto.edu/kriz/cifar-10-binary.tar.gz#tar-xzfcifar-10-python.tar.gzCifar10数据集示意图6.2TensorFlow第六章深度学习开源框架6.2.3案例:基于TensorFlow的目标识别of40232.运行训练程序#cd/tensorflow/models/image/cifar10/#pythoncifar10_train.py3.运行测试程序#pythoncifar10_eval.py4.如图所
17、示,资源消耗:CPU:41%GPU:42%耗时:50min训练时资源消耗图6.2TensorFlow第六章深度学习开源框架6.2.3案例:基于TensorFlow的目标识别of40245.训练完成示意6.测试示意准确率:84.4%第六章深度学习开源框架6.1Caffe6.2TensorFlow6.3其它开源框架全国高校标准教材云计算姊妹篇,剖析大数据核心技术和实战应用of4025习题6.3其它开源框架第六章深度学习开源框架of40261.CNTK2.MXNet3.Theano4.Torch5.Deeplearning4j6.3其它开源框架第六章深度学习开源框架6.3.1CNTKof4027CN
18、TK的5个主要特点训练和测试多种神经网络的通用解决方案。AB用户使用一个简单的文本配置文件指定一个网络。C尽可能无缝地把很多计算在一个GPU上进行。D自动计算所需要的导数,网络是由许多简单的元素组成。E通过添加少量的C+代码来实现必需块的扩展。E对windows平台的支持更好。6.3其它开源框架第六章深度学习开源框架6.3.2MXNetof4028MXNet的7个主要特点:(1)其设计说明可以被重新应用到其他深度学习项目中。(2)任意计算图的灵活配置。(3)整合了各种编程方法的优势,最大限度地提高灵活性和效率。(4)轻量、高效的内存,以及支持便携式的智能设备,如手机等。(5)多GPU扩展和分布
19、式的自动并行化设置。(6)支持Python、R、C+和Julia。(7)对云计算友好,直接兼容S3、HDFS和Azure。6.3其它开源框架第六章深度学习开源框架6.3.3Theanoof4029Theano的6个主要特点01与NumPy紧密相关02透明地使用GPU03高效符号分化04速度和稳定性的优化05动态生成C代码06广泛的单元测试和自我验证6.3其它开源框架第六章深度学习开源框架6.3.4Torchof4030很多实现索引、切片、移调的程序。Torch的4个主要特点通过LuaJIT的C接口。快速、高效的GPU支持。可 嵌 入 、 移 植 到 iOS、Android和FPGA的后台。采用
20、Lua语言6.3其它开源框架第六章深度学习开源框架6.3.5Deeplearning4jof4031Deeplearning4j的4个主要特点:依赖于广泛使用的编程语言Java。集合了Cuda内核,支持CPU和分布式GPU。可专门用于处理大型文本集合。Canova向量化各种文件形式和数据类型。1安装TensorFlow。2安装配置Caffe环境,跑通test。3深度学习的开源框架有哪些。4分别简述CNTK、MXNet、Theano、Torch深度学习软件的主要特点。习题:AIRack人工智能实验平台一站式的人工智能实验平台DeepRack深度学习一体机开箱即用的AI科研平台BDRack大数据实验平台一站式的大数据实训平台云计算头条微信号:chinacloudnj中国大数据微信号:cstorbigdata刘鹏看未来微信号:lpoutlook云创大数据订阅号微信号:cStor_cn云创公众号推荐深度学习世界微信号:dl-world云创大数据服务号微信号:cstorfw高校大数据与人工智能微信号:data_AI手机APP推荐我的PM2.5随时随地准确查看身边的PM2.5值同声译支持26种语言互译的实时翻译软件科技头条汇聚前沿资讯的科技情报站我的南京云创大数据为路况大数据应用提供技术支持万物云智能硬件大数据免费托管平台环境云环境大数据开放共享平台网站推荐感谢聆听