旧记录-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安装完成。