前言
前几天,我们刚下发了毕业设计的题目,我选的题目为基于TensorFlow的深度学习与研究,这将会是一个系列文章,截止2020-07我会将所有相关内容用更加通俗易懂的方式发布在公众平台上,我们一块学习,让我们嗨起来~。
工欲善其事,必先利其器。今天这篇文章,我们就先学习如何在Windows、Linux上搭建开发环境。
1 Windows下环境搭建
1. 安装Python环境
进入官网,根据个人电脑系统选择合适的发行版本进行安装,以下是两点提示:
- 选择Python3.x版本
- 下载好之后进行安装的时候,记住勾选Add Python 3.x to PATH可选项。
官网地址:
https://www.python.org/downloads/windows/
按照上述步骤安装好之后,我们通过命令行检测一下是否安装成功。
打开命令行工具,输入如下命令:
python --version
若能显示出版本号,则证明安装正确。(:因为我之前已经安装了Anaconda,所以后面也会显示Anaconda的相关信息,小伙伴们在自己的电脑上只要看到Python版本信息就好了哦,不用跟我一样哒~
2. Anaconda下载
haha,首先介绍下Anaconda,Anaconda是Python的一个科学计算发行版,内置了上千个Python经常会用到的库,包括Scikit-learn、Numpy、Scipy、Pandas等。
因为Anaconda是一个国外网站,所以我推荐大家通过镜像去进行安装。当然,如果你想通过官网下载,也没有是问题滴~进入官网,选择合适的发行版本进行安装即可~
官网地址:
https://www.anaconda.com/distribution/#download-section
ok,我们重点来说如何通过镜像去安装,这里我们采用清华的镜像。
地址:
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
这里建议小伙伴们安装3-4.2版本,因为这个版本对于我们初学者比较友好,简单介绍下Anaconda3-4.2.0-Windows-x86.exe文件名含义:
- 3-是Python版本3.x
- Windows-x86是32位系统
- Windows-x86_64是64位系统
大家记住自行根据电脑实际情况进行安装,不必跟我一样~
下载好之后,双击进行安装,由于安装方式比较简单(:会给你女朋友装QQ、微信就会装这个,所以这里不再赘述。等安装好之后,按下Windows键,找到如下图所示选项:在以后的开发中,我们将主要使用其中的Anaconda Prompt命令行工具和基于Web的Jupyter Notebook 。
3. 在Anaconda中安装Tensorflow
国外网络有时太慢,可以通过配置把下载源改为国内的,通过conda config命令生成配置文件,这里使用清华的镜像源。
地址如下:
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
First of all,打开Anaconda Prompt窗口,执行命令:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
In addition,执行命令:
conda config --set show_channel_urls yes
last but not least,在用户目录底下找到.condarc文件,用编辑软件打开.condarc文件,删除第三行 -defaults,保存文件。
修改好镜像源之后,我们可以安装TensorFlow了:
- 安装普通版TensorFlow命令为:
conda install tensorflow
- 安装GPU版TensorFlow命令为:
conda install tensorflow -gpu
为便于学习,建议大家安装普通版即可,在安装的过程中:大家按照图中提示,选择y即可。
4.测试TensorFlow是否安装成功
打开Jupyter,新建Python3文件,我们看图说话:
打开之后,我们新建一个py文件,写一段测试代码跑一跑。
哎呦,好开心,一把就跑通了~真厉害o(* ̄▽ ̄*)ブ 赶紧喝两口RIO,慰劳一下自己贴心的我把跑测试的代码贴到下面,有没有想要夸我的冲动
import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') sess = tf.Session() print(sess.run(hello))
2 Linux下环境搭建
目前,TensorFlow社区推荐的安装和运行环境是Ubuntu,它同时也支持Mac和Windows上的安装部署。
因为在深度学习的计算过程中,大量操作是向量和矩阵的计算,而GPU在向量和矩阵计算速度方面比CPU有一个数量级的提升,并且深度学习在GPU上的运算效率更高,所以推荐在配有GPU的机器上运行TensorFlow程序。
你说巧不巧,我在腾讯刚好有一台Linux服务器,刚好借用它老人家来写写教程(:我真爱学习O(∩_∩)O,夸我
1.Python3环境安装
CentOS系统本身默认安装有Python2.x,版本x根据不同版本系统有所不同,可通过 python --V 或 python --version 查看系统自带的Python版本。
有一些系统命令时需要用到Python2,不能卸载。
- 安装依赖包
- 首先安装gcc编译器,gcc有些系统版本已经默认安装,通过如下命令查看:
gcc --version
- 没安装的先安装gcc:
yum -y install gcc
- 安装其它依赖包,(注:不要缺少,否则有可能安装python出错,python3.7.0以下的版本可不装 libffi-devel )
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
- 下载python3.7.0源码,根据需求下载
- 在https://www.python.org/ftp/python/中选择自己需要的python源码包,我下载的是python3.7.0
- 下载
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
- 解压Python-3.7.0.tgz
tar -zxvf Python-3.7.0.tgz
- 建立一个空文件夹,用于存放python3程序
mkdir /usr/local/python3
- 执行配置文件,编译,编译安装
cd Python-3.7.0 ./configure --prefix=/usr/local/python3 make && make install
- 安装完成没有提示错误便安装成功了
- 建立软连接
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3 ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3
- 测试一下python3是否可以用,见证一下Linux下Python版本的Hello World!
2.CentOS中安装TensorFlow
注意用yum安装,不要卸载之前的python2,否则系统会出问题。安装完毕后会有如下命令:/usr/bin/python3,注意不要做软连接python3到python,原因还是centos要使用python2作为默认工具。这里不用理会,因为下面的virtualenv会自动对应python3.
下面这些不看本文也可以,把TensorFlow官网安装文档中的apt-get换成yum就行。
- 安装需要的东西
sudo yum -y install epel-release sudo yum -y install gcc gcc-c++ python3-pip python-devel atlas atlas-devel gcc-gfortran openssl-devel libffi-devel
注意:这里的python3-pip对应了python3
- 安装virtualenv
use pip or pip3 as you prefer for python or python3
pip3 install --upgrade virtualenv virtualenv --system-site-packages ~/venvs/tensorflow
- 启动virtualenv
source ~/venvs/tensorflow/bin/activate
注意:每次都需要启动这个虚拟环境来跑TensorFlow
- 在virtualenv中安装TensorFlow
pip3 install --upgrade tensorflow
安装好之后,我们写一段测试代码跑一跑:
ok,若能看到版本信息,就证明安装成功。
3 一点说明
到此为止,对于Windows和Linux两种平台下TensorFlow的安装就到此over。
可能有的小伙伴会问:我在书上看到还要安装GPU啊啥的,对的,小伙伴提的问题很好,证明你仔细看书了,这里我做如下解释:
深度学习中大量的操作是向量和矩阵的运算,而GPU在向量和矩阵计算速度方面比CPU有一个数量级的提升,并且深度学习在GPU上的运算效率更高,但是,听好了,我说但是,我们的项目用CPU跑就足够了~