飞道的博客

Anaconda搭建TensorFlow2.x(win环境)

365人阅读  评论(0)

本篇文章介绍如何使用Anaconda快速搭建Python环境下的TensorFlow2.x开发框架

Anaconda搭建TensorFlow2.x过程

关于 Anaconda

Anaconda就是可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本。Anaconda包含了conda、Python在内的超过180个科学包及其依赖项。

Conda

conda是包及其依赖项和环境的管理工具,功能与Py的专用包管理工具Pip类似,但是Conda还提供虚拟环境,使python开发过程中的依赖环境得到非常好的隔离

安装过程

1、通过Anaconda搭建Python环境

我们可以通过前往官网下载Anaconda,然而下载非常慢,所有我们选择清华镜像源下载,下载地址 https://mirrors.tuna.tsinghua.edu.cn/


选择anaconda,进入archive ,点击一下File Name的箭头,按最新的排序在前排序

下载后直接安装anaconda,勾选添加环境变量

安装完成后,我们打开cmd命令终端,检测一下是否存在conda命令,输入如下命令:

$ conda list
# packages in environment at E:\Program Files\Anaconda:
#
# Name                    Version                   Build  Channel
_ipyw_jlab_nb_ext_conf    0.1.0                    py37_0    defaults
alabaster                 0.7.11                   py37_0    defaults
anaconda                  5.3.1                    py37_0    defaults
anaconda-client           1.7.2                    py37_0    defaults
anaconda-navigator        1.9.2                    py37_0    defaults
anaconda-project          0.8.2                    py37_0    defaults
appdirs                   1.4.3            py37h28b3542_0    defaults
asn1crypto                0.24.0                   py37_0    defaults
astroid                   2.0.4                    py37_0    defaults
astropy                   3.0.4            py37hfa6e2cd_0    defaults
atomicwrites              1.2.1                    py37_0    defaults
...

 

我们再查看一下以下Python命令

# 查看python的位置
$ where python
E:\Program Files\Anaconda\python.exe
D:\Program Files\python\python.exe

# 查看ipython的位置
$ where ipython
E:\Program Files\Anaconda\Scripts\ipython.exe

# 查看当前python脚本
$ python --version
Python 3.7.0

注意,由于在安装Anaconda之前,已经安装过一个python3.8.0的版本,下面的D盘的Python即为3.8.0的版本;覆盖环境变量后,当前选择的Anaconda目录下的Python版本

以上证明我们的Anaconda及Python环境已经安装好,我们继续下一步

2、安装使用Anaconda安装TensorFlow

一般TensorFlow有GPU版本以及CPU版本,推荐大家安装GPU版本,前提是大家有独立的Nvidia显卡。使用Anaconda的conda命令安装TensorFlow集成环境非常方便

# conda配置国内镜像源
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/

# 设置下载时,显示源地址
conda config --set show_channel_urls yes

可以通过使用conda show --config 查看配置的情况

$ conda config --show
add_anaconda_token: True
add_pip_as_python_dependency: True
aggressive_update_packages:
  - ca-certificates
  - certifi
  - openssl
allow_non_channel_urls: False
allow_softlinks: False
always_copy: False
always_softlink: False
always_yes: None
anaconda_upload: None
auto_update_conda: True
changeps1: True
channel_alias: https://conda.anaconda.org
channel_priority: True
channels:
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
...

 

查看一下所以conda的虚拟环境列表

$ conda env list
# conda environments:
#
base                  *  E:\Program Files\Anaconda

只有一个base的默认环境,或者使用conda info -e 显示当前的命令

安装tensorflow-gpu

# 创建一个tensorflow-gpu环境
conda create -n tf2 tensorflow-gpu=2.0

这一步耗时比较长,包比较大create -n tf2 tensorflow-gpu这个命令主要创建一个命为tf2的虚拟换,这个虚拟环境即为tensorflow-gpu的环境,这个tensorflow-gpu包含一系列的依赖包。

这一步我们重点确认一下以下几个包
cudatoolkit
cudnn
tensorflow

3、TensorFlow的环境验证

安装完成后,我们看看我们这时的虚拟环境

$ conda env list
# conda environments:
#
base                  *  E:\Program Files\Anaconda
tf2                      E:\Program Files\Anaconda\envs\tf2

这时我们已经有两个环境了,第一个带*的为当前环境,另外一个tf2即为我们刚才安装好的tensorflow环境。所以需要使用conda activate tf2切换到tf2虚拟环境下,才能正常使用tnesorflow库。

我们使用ipython来尝试一下是否可以正常导入tensorflow库

# 进入交互式py shell
$ ipython
# 导入tensorflow库
$ import tensorflow as tf

发现报错了,找不到tensorflow库,如下所示:

因为我们的tensorflow是安装在tf2下的,而默认base环境下并没有安装tensorflow,在默认环境下的ipython使用的python解释器的路劲是E:\Program Files\Anaconda下的python.exe,在该解释器的目录下自然没有任何tensorflow库。

我们尝试激活一下tf2

# 激活tf2虚拟环境
$ conda activate tf2
# 再次查看一下python
$ where python

首先,在命令行最前面,标记了(tf2)表示当前使用的环境,其次,我们使用where python发现列出了3个,其中第一个始终是当前使用的python解释器路径,我们可以看到,就是我们前面安装的tf2路径下的虚拟环境

我们再次使用ipython进入交互式的命令,查看是否可正常导入tensorflow库

# 进入交互式py shell
$ ipython
# 导入tensorflow库
$ import tensorflow as tf

依然前面一样的报错,提示没有tensorflow模块。如下所示:

这里的需要注意,确实是conda create -n tf2 tensorflow-gpu这个环境包安装的bug,这是因为tf2这个环境下,没有安装好ipythontf2下的ipython的路劲,依然使用的是base环境的ipython路劲,即E:\Program Files\Anaconda\Scripts\ipython.exe,我们可以where ipython命令来查看一下

$ where ipython


如果取消激活tf2(conda deactivate)再次查看where ipython结果也是一样的。怎么办呢,所以我们需要在tf2虚拟环境下,重新安装一次ipython,这里我们使用pip

# 首先设置一下国内pip镜像源
$ pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 安装ipython
$ pip install ipython

安装完成后,我们可以进入ipython再次测试导入tensorflow库

# 进入交互式py shell
$ ipython
# 导入tensorflow库
$ import tensorflow as tf

成功了,不再报错,如下图:

我们继续查看我们tensorflow是否支持GPU,接着上一步,在ipython交互下,输入如下代码;

tf.test.is_gpu_available()


上面显示了显卡型的信息,同时最后一行显示Out[2] True,这说明gpu工作了

4、pyCharm的配置

PyCharm的安装这就不介绍,这里提供官方下载路径,我们一般下载社区版本的PyCharm即可

环境配置

我们启动PyCharm,创建一个新项目


使用自定义的Python解释器,点击...浏览,选择Conda Env...,选择我们前面创建环境tf2如下图:

确定后,如下所示Create Project,点击OK,如下图

这样我们就把我们的tensorflow环境配置好了,我们测试一下,在main.py中输入如下代码

# main.py
import tensorflow as tf
print(tf.__version__)
print(tf.test.is_gpu_available())

右键,运行一下如下所示:

与前面我们在ipython交互shell下返回的数据一样!
接下来,可以开始进入Tensorflow的开发了


转载:https://blog.csdn.net/youlinhuanyan/article/details/128885598
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场