深度学习环境搭建讲解_第1页
深度学习环境搭建讲解_第2页
深度学习环境搭建讲解_第3页
深度学习环境搭建讲解_第4页
深度学习环境搭建讲解_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1234CONTENT1.1GPU简介GPU(Graphics

Processing

Unit)即图形处理器,又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上作图像运算工作的微处理器。目前深度学习实验室主流的显卡为GTX1080Ti,如图1所示。专业图像处理显卡TITANV如图2。图2图11.2安装英伟达显卡驱动根据机器的GPU型号,在NVIDIA官网搜索GPU对应的驱动的版本号。如图3所示。图3电脑重启之后,打开终端,输入:nvidia-smi

,出现GPU信息表示驱动安装成功。1.3

CUDA简介CUDA(Compute

Unified

Device

Architecture,统一计算设备架构),是显卡厂商NVIDIA在2007年推出的并行计算平台和编程模型。它利用图形处理器(GPU)能力,实现计算性能的显著提高。CUDA是一种由NVIDIA(独有)推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题,从而能通过程序控制底层的硬件进行计算。它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。开发人员可以使用C/C++/11语言来为CUDA架构编写程序。CUDA提供host-device的编程模式以及非常多的接口函数和科学计算库,通过同时执行大量的线程而达到并行的目的。1.4

安装CUDA下载好cuda

8.0的runfile安装包,安装包放在下载目录下。1、cd到下载目录2、终端输入下列代码sudo

shcuda_8.0.61_375.26_linux.run3、终端开始安装,一直按空格,直到下面显示100%4、输入accept,接受协议5、输入n,不安装驱动,【这个地方一定输入n】

接下来的输入y或者default直接回车就行,具体如下图4:图41.5、cuDNN介绍NVIDIA

cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIAcuDNN可以集成到更高级别的机器学习框架中,如加州大学伯克利分校的流行CAFFE软件。简单的,插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是调整性能,同时还可以在GPU上实现高性能现代并行计算。1.6、安装cuDNN1、下载相对应的cudnn版本2、

建立软连接3cuda

Samples

测试(1)cd到切换到CUDA

8.0Samples默认安装路径(即在NVIDIA_CUDA-8.0_Samples目录下)。(2)终端输入:sudo

make

all-j8

#8代表8核,可以更改(3)完成后终端依次输入cdbin/x86_64/linux/release./deviceQuery结果如下图,表明cuda和cudnn配置成功1.7

TensorFlow介绍TensorFlow是一个基于数据流编程(dataflow

programming)的符号数学系统,被广泛应用于各类机器学习(machine

learning)算法的编程实现,其前身是谷歌的神经网络算法库DistBelief

。Tensorflow拥有多层级结构,可部署于各类服务器、PC终端和网页并支持GPU和TPU高性能数值计算,被广泛应用于谷歌内部的产品开发和各领域的科学研究

。1.7

TensorFlow介绍分布式TensorFlow的核心组件(coreruntime)包括:分发中心(distributed

master)、执行器(dataflow

executor/workerservice)、内核应用(kernelimplementation)和最底端的设备层(devicelayer)/网络层(networking

layer)。1.4安装TensorFlow1、TensorFlow可以安装CPU和GPU两种版本,根据机器选择合适版本CPU版本安装命令如下:sudo

pip

installtensorflowGPU版本安装命令如下:sudo

pipinstalltensorflow-gpu2、测试结果进入python编译环境,导入TensorFlow,输出版本号,如下图5所示。图51.4安装其他依赖Numpy--

Python的一种开源的数值计算扩展Scipy--构建于NumPy之上,提供了一个用于在Python中进行科学计算的工具集Pillow--

Python图片处理模块Cython--Python支持C语言扩展的编译器Matplotlib--

Python

2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形Keras--纯Python编写而成并基Tensorflow、Theano以及CNTK后端Opencv--一个基于BSD许可(开源)发行的跨平台计算机视觉库2.1下载SSD源码搭建SSD框架,/balancap/SSD-Tensorflow下载解压。2.2

采集与标注数据(1)用摄像机采集数据(2)使用LabelImg标注数据,标注格式如图6

。图62.3修改网络参数1、下载pascalvoc数据,自己的数据根据voc格式改写,如图7所示。图72.3修改网络参数2、标记数据,生成txt文件,train.txt,

trainval.txt,

test.txt,

val.txt3、修改datasets文件夹中pascalvoc_common.py文件,将训练类修改别成自己的#原始的#VOC_LABELS

={######################}'none':

(0,'Background'),'aeroplane':

(1,'Vehicle'),'bicycle':

(2,'Vehicle'),'bird':

(3,'Animal'),'boat':

(4,'Vehicle'),'bottle':

(5,'Indoor'),'bus':

(6,'Vehicle'),'car':

(7,'Vehicle'),'cat':

(8,'Animal'),'chair':

(9,'Indoor'),'cow':

(10,'Animal'),'diningtable':

(11,'Indoor'),'dog':

(12,

'Animal'),'horse':

(13,'Animal'),'motorbike':

(14,'Vehicle'),'person':

(15,'Person'),'pottedplant':

(16,'Indoor'),'sheep':

(17,'Animal'),'sofa':

(18,'Indoor'),'train':

(19,'Vehicle'),'tvmonitor':

(20,'Indoor'),#修改后的VOC_LABELS

={'none':

(0,'Background'),'pantograph':(1,'Vehicle'),}2.3修改网络参数4、将图像数据转换为tfrecods格式SSD-Tensorflow-master—>datasets—>pascalvoc_to_tfrecords.py。。。然后更改文件的83行读取方式为’rb’)如果你的文件不是.png格式,也可以修改图片的类型。2.3修改网络参数在SSD-Tensorflow-master文件夹下创建tf_conver_data.sh#!/bin/bash#this

isashell

script

to

convert

pascal

VOCdatasets

into

tf-records

only#directory

where

the

original

dataset

is

storedDATASET_DIR=/home/buu123/Model/SSD/SSD-Tensorflow-master/VOCdevkit/VOC2007/

#VOC数据保存的文件夹(VOC的目录格式未改变)#output

directory

where

to

store

TFRecords

filesOUTPUT_DIR=/home/buu123/Model/SSD/SSD-Tensorflow-master/VOCdevkit/VOC2007/SegmentationClass

#自己建立的保存tfrecords数据的文件夹python

./tf_convert_data.py

\--dataset_name=pascalvoc

\--dataset_dir=${DATASET_DIR}

\--output_name=voc_2007_train

\--output_dir=${OUTPUT_DIR}在终端运行tf_convert_data.sh文件2.3修改网络参数train_ssd_network.py

154

None

50000

。(tf.contrib.slim.learning.training函数中max-step为None时训练会无限进行。)A.nets/ssd_vgg_300.py

(因为使用此网络结构),修改87和88行的类别B.train_ssd_network.py,修改类别120行,GPU占用量,学习率,batch_size等C.eval_ssd_network.py

修改类别,66行D.datasets/pascalvoc_2007.py

根据自己的训练数据修改整个文件2.4训练模型1、新建train.sh文件输入:#!/bin/bash

DATASET_DIR=./tfrecords

###训练集转化成tfrecords存储的路径TRAIN_DIR=./logs/

###存储训练结果的路径,包括checkpoint和event,自行指定

CHECKPOINT_PATH=./checkpoints/vgg_16.ckpt

###下载vgg_16模型pythontrain_ssd_network.py

\--train_dir=${TRAIN_DIR}

\--dataset_dir=${DATASET_DIR}

\--dataset_name=xxxxxx

\###具体指定,改为your_data_name,

如果你在前面搞清楚了如何转换自己的数据的话--dataset_split_name=train

\--model_name=ssd_300_vgg

\--num_classes=4--checkpoint_path=${CHECKPOINT_PATH}\--checkpoint_model_scope=vgg_16\####改为vgg_16--checkpoint_exclude_scopes=ssd_300_vgg/conv6,ssd_300_vgg/conv7,ssd_300_vgg/block8,ssd_300_vgg/block9,ssd_300_vgg/block10,ssd_300_vgg/block11,ssd_300_vgg/block4_box,ssd_300_vgg/block7_box,ssd_300_vgg/block8_box,ssd_300_vgg/block9_box,ssd_300_vgg/block10_box

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论