旧记录-1

Posted qjuse

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了旧记录-1相关的知识,希望对你有一定的参考价值。

深度学习tensorflow环境搭建说明

1 深度学习环境

深度学习作为传统神经网络的拓展,随着数据量和计算力的增加,其在计算机视觉、语音语义识别等领域,应用日益广泛。目前,主流的深度学习开源平台有Tensorflow、Caffe、PyTorch、Keras、Thenno等,下图显示了2018年Github上不同DL平台受欢迎的程度:

 技术图片

 

 

 

对比五种主流的开源平台:

开源框架

编程语言

特点

Tensorflow

Python/C++

灵活性、可延展性好,功能齐全,支持异构设备分布式计算

Caffe

C++/Python

专注CNN模型,高性能,精于CV领域

pyTorch

Lua

支持大量机器学习算法,构建模型简单,高度模块化

Theano

python

集成Numpy,计算稳定性好,可动态地生成C/CUDA代码

Keros

python

由Theano派生的python软件包

基于平台本身的特性,目前选择Tensorflow框架作为深度学习的切入点。

2 Tensorflow环境搭建

搭建Tensorflow环境,需要先安装python和相关工具包。为避免各工具包间的版本冲突,推荐使用Anaconda进行python安装和相关工具包的管理。特别在windows环境下,可以使用Anaconda的图形化管理界面,很方便的安装、卸载工具包。

目前最新版本是Anaconda5.3,基于python3.7。我在搭建时选用的是python3.6版本。建议先选定python版本,再根据python版本选择Anaconda版本。

Anaconda下载地址https://www.anaconda.com/download/

 

2.1本地windows环境下的安装

在windows环境下,安装好Anaconda,进入其导航页面,如图所示:

技术图片

 

 

 

 

Anaconda 自带了Ipython和spyder。目前采用spyder开发python程序,其界面功能模仿matlab,提供变量查看功能。

 

点击导航页上的Environments,查看Python工具包的安装情况。以下是搭建Tensorflow环境,需要准备的一些基本工具包。

Numpy

数组处理

Scickit_learn

ML框架

Scipy

数值计算

CUDA

GPU加速

Pandas

数据分析

Tensorflow-gpu

DL 框架

 

技术图片

 

 

 

逐一检查Anaconda是否以安装以上软件包。不出意外,我们只需要安装tensorflow工具包,这里选择tensorflow-gpu进行安装,安装该包时会自动安装版本匹配的CUDA。所有软件包安装完成后,启动spyder,界面如图所示。并在右下角控制台内输入:import tensorflow as tf,如果没有报错则说明tensorflow安装完成。

技术图片

或者在左侧编写一个python文件,运行以下Tensorflow 测试程序,运行通过说明Tensorflow环境搭建完成。

import tensorflow as tf

import numpy as np

# 使用 NumPy 生成假数据(phony data), 总共 100 个点.

x_data = np.float32(np.random.rand(2, 100)) # 随机输入

y_data = np.dot([0.100, 0.200], x_data) + 0.300

# 构造一个线性模型

b = tf.Variable(tf.zeros([1]))

W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))

y = tf.matmul(W, x_data) + b

# 最小化方差

loss = tf.reduce_mean(tf.square(y - y_data))

optimizer = tf.train.GradientDescentOptimizer(0.5)

train = optimizer.minimize(loss)

# 初始化变量

init = tf.initialize_all_variables()

# 启动图 (graph)

sess = tf.Session()

sess.run(init)

# 拟合平面

for step in range(0, 201):

    sess.run(train)

    if step % 20 == 0:

        print (step, sess.run(W), sess.run(b))

# 得到最佳拟合结果 W: [[0.100  0.200]], b: [0.300]

 

2.2服务器linux环境上的安装

目前,搭建服务器上的Tensorflow环境的目的,主要还是解决本地计算能力不够的问题。所以一般是在本地先写好代码,然后丢到服务器上跑。同本地搭建一样,采用Anaconda安装python,但需要使用命令行进行软件工具包的管理。

Step1:下载Anaconda的linux版本,并安装。

 技术图片

 

如果不能通过命令行下载,可以先手动下载后,在安装。

Step2: 检查Anaconda已安装的包,不出意外,我们只缺少tensorflow包。

 技术图片

Step3: 搜索可用的tensorflow包,选择带gpu的较新版本进行安装。

 技术图片

Step4: 安装tensorflow包。

 技术图片

Setp5: 查看python版本,或者查看已安装列表,确定tenshorflow安装完成

   Setp6:在命令行中输入python命令,进入python环境,测试import tensorflow as tf。

 技术图片

如果没有报错说明tensorflow安装完成。

 

以上是关于旧记录-1的主要内容,如果未能解决你的问题,请参考以下文章

防止android tv行片段/浏览片段保存列表行中卡片的旧位置?

记录C#常用的代码片段

FragmentStatePageAdapter 缓存,重新创​​建活动后如何引用旧片段? (对于前 - 横向模式)

CSP核心代码片段记录

OpenGL:旧 ATI 卡上的“硬件不支持片段着色器”

我升级到 Android Studio 2.3.3,一个旧的、无错误的程序现在给出错误:“片段应该是静态的......”