Tensorflow 2.0 最新版(2.4.1) 安装教程

前言

目前考虑进入梦寐以求的机器学习、人工智能等领域的学习,因此安装主流的机器学习框架Tensorflow迫在眉睫。

然而网上的安装教程大多是1.xx版本的。

笔者目前安装的环境是win10,Python版本是3.8。

最近在安装Tensorflow最新版2.4.1时,参考了不少大佬博客,也遇到不少问题,因此借此机会,更新下最新的安装教程。

参考很多很多博客
捂脸哭o(╥﹏╥)o

必须要感谢csdn 知乎…各位大神的文章
Tensorflow 2.0 最新版(2.4.1) 安装教程

Tensorflow 简介

任何曾经试图在 Python 中只利用 NumPy 编写神经网络代码的人都知道那是多么麻烦。
编写一个简单的一层前馈网络的代码尚且需要 40 多行代码,当增加层数时,编写代码将会更加困难,执行时间也会更长。
TensorFlow 使这一切变得更加简单快捷,从而缩短了想法到部署之间的实现时间。
TensorFlow 是由 Google Brain 团队为深度神经网络(DNN)开发的功能强大的开源软件库,于 2015 年 11 月首次发布,在 Apache 2.x 协议许可下可用。
截至今天,短短的两年内,其 GitHub 库大约 845 个贡献者共提交超过17000 次,这本身就是衡量 TensorFlow 流行度和性能的一个指标。

下图列出了当前流行的深度学习框架,从中能够清楚地看到 TensorFlow 的领先地位:
Tensorflow 2.0 最新版(2.4.1) 安装教程

Anaconda 简介

  • what’s Anaconda?

Anaconda在英文中是“蟒蛇”,麻辣鸡(Nicki Minaj妮琪·米娜)有首歌就叫《Anaconda》,表示像蟒蛇一样性感妖娆的身体。
Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。因为包含了大量的科学包,Anaconda 的下载文件比较大(约 531 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和 Python)。
—— 百度百科

Tensorflow 2.0 最新版(2.4.1) 安装教程

  • 为什么需要先安装Anaconda?

Tensorflow是属于很高层的应用。高层应用的一个比较大的麻烦就是需要依赖的底层的东西很多,如果底层依赖没有弄好的话,高层应用是没法玩转的。
在极客学院有关Tensorflow的教程中,提到了这样几种安装方式:Pip, Docker, Virtualenv, Anaconda 或 源码编译的方法安装 TensorFlow。
在这里,我强烈推荐大家使用Anaconda的方式安装!因为采用这种方式安装的时候,相当于将所有的底层依赖细节全部已经打包给封装好了!并且,Anaconda还能创建自己的计算环境,相当于将tensorflow的环境与其他环境做了隔离,这样你就可以将tensorflow随便玩,爱怎么玩怎么玩,也不用担心破坏之前的环境!
如果是玩数据玩ML的同学,如果你还不知道Anaconda,你就out啦!Anaconda是一个基于python的科学计算平台,这个平台里包含有python,r,scala等绝大部分主流的用于科学计算的包。

  • 你可能已经安装了 Python,那么为什么还需要 Anaconda?

1)Anaconda 附带了一大批常用数据科学包,它附带了 conda、Python 和 150 多个科学包及其依赖项。因此你可以立即开始处理数据。
2)管理包
Anaconda 是在 conda(一个包管理器和环境管理器)上发展出来的。在数据分析中,你会用到很多第三方的包,而conda(包管理器)可以很好的帮助你在计算机上安装和管理这些包,包括安装、卸载和更新包。
3)管理环境
为什么需要管理环境?
比如你在A项目中用了 Python 2,而新的项目B老大要求使用Python 3,而同时安装两个Python版本可能会造成许多混乱和错误。这时候 conda就可以帮助你为不同的项目建立不同的运行环境。
还有很多项目使用的包版本不同,比如不同的pandas版本,不可能同时安装两个 Numpy 版本,你要做的应该是,为每个 Numpy 版本创建一个环境,然后项目的对应环境中工作。这时候conda就可以帮你做到。

Anaconda 优点?

Anaconda的优点总结起来就八个字:省时省心、分析利器。 省时省心:
Anaconda通过管理工具包、开发环境、Python版本,大大简化了你的工作流程。不仅可以方便地安装、更新、卸载工具包,而且安装时能自动安装相应的依赖包,同时还能使用不同的虚拟环境隔离不同要求的项目。

Anaconda 安装

官网下载地址:Link

  • Products — Inpidual Edition
    在产品中选择个人分布

Tensorflow 2.0 最新版(2.4.1) 安装教程

  • 点击Download跳转到最下面,下载相应的版本(目前大多都是64位电脑)

Tensorflow 2.0 最新版(2.4.1) 安装教程
官网下载速度还是很快的

  • 下载完成后点击安装
  • 就和安装普通的软件一样,全部选择默认即可,注意勾选将 python3.8 添加进环境变量。

Tensorflow 2.0 最新版(2.4.1) 安装教程

  • 在非C盘创建一个新的目录

Tensorflow 2.0 最新版(2.4.1) 安装教程

  • 这里可以将第一个对勾打上(Add … to my Path),这样就不用配置环境变量,直接Install

Tensorflow 2.0 最新版(2.4.1) 安装教程

  • 如果上面第一个选项没有勾选,则需要手动配置环境变量

Tensorflow 2.0 最新版(2.4.1) 安装教程

Tensorflow 2.0 最新版(2.4.1) 安装教程

Tensorflow 2.0 最新版(2.4.1) 安装教程

安装成功后,开始菜单会多出Anaconda3相关组件
Tensorflow 2.0 最新版(2.4.1) 安装教程

安装完成Anaconda,进行环境变量的测试

  • 进入cmd命令窗口
  1. 验证Anaconda环境是否安装成功:
    conda –version

Tensorflow 2.0 最新版(2.4.1) 安装教程

  1. 检测当前安装了哪些环境变量:
    conda info –envs

Tensorflow 2.0 最新版(2.4.1) 安装教程
安装成功

我们可以通过下面的命令来查看Anaconda已经安装了哪些包。

运行 开始菜单 -> Anaconda3 -> Anaconda Prompt

在Anaconda Prompt 命令界面输入:
conda list
Tensorflow 2.0 最新版(2.4.1) 安装教程
可以看到已经安装了numpy、sympy等常用的包。

恭喜完成第一步

TensorFlow CPU & GPU

  • 前提

TensorFlow 安装的前提是系统安装了 Python 2.5 或更高版本,教程中的例子是以 Python 3.8(Anaconda 3版)为基础设计的。
为了安装 TensorFlow,首先确保你已经安装了Anaconda。
可以从网址(https://www.continuum.io/downloads)中下载并安装适用于Windows/macOS 或 Linux 的 Anaconda。

  • what’s CPU & GPU?

安装了 Anaconda,下一步决定是否安装 TensorFlow CPU 版本或 GPU 版本。
几乎所有计算机都支持 TensorFlow CPU 版本,而 GPU 版本则要求计算机有一个 CUDA compute capability 3.0 及以上的 NVDIA GPU 显卡(对于台式机而言最低配置为 NVDIA GTX 650)。

  • CPU 与 GPU 的对比

中央处理器(CPU)由对顺序串行处理优化的内核(4~8个)组成。
图形处理器(GPU)具有大规模并行架构,由数千个更小且更有效的核芯(大致以千计)组成,能够同时处理多个任务。
对于 TensorFlow GPU 版本,需要先安装 CUDA toolkit 7.0 及以上版本、NVDIA【R】驱动程序和 cuDNN v3 或以上版本。Windows 系统还另外需要一些 DLL 文件,读者可以下载所需的 DLL 文件或安装 Visual Studio C++。
还有一件事要记住,cuDNN 文件需安装在不同的目录中,并需要确保目录在系统路径中。当然也可以将 CUDA 库中的相关文件复制到相应的文件夹中。

内容来源:Link

Tensorflow 安装

  1. 打开Anaconda Prompt,输入清华仓库镜像,这样更新会快一些:

Tensorflow 2.0 最新版(2.4.1) 安装教程
输入命令:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes

附上(以下可忽略):

Python默认的pip包来源是国外的Pypi服务站点:https://pypi.python.org/simple。
对于国内用户,由于网络原因,下载速度太慢,建议使用国内镜像源站。
目前,比较常用的pip镜像站点有:
1)清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/
2)中国科大:https://mirrors.ustc.edu.cn/pypi/web/simple/
3)豆瓣:http://pypi.doubanio.com/simple/
4)阿里云:http://mirrors.aliyun.com/pypi/simple/

  • pip使用国内镜像站点

方式一:直接在 pip install xxx 后加上镜像源地址。

例如:下载numpy包:

 pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple/

但是利用这种方式,每次下载python包,都需要在后面加上镜像源地址,操作繁琐,不建议。

方法二:修改配置文件
目前,在windows系统上使用python安装包安装时,都会自带安装pip软件,此时可以通过下述方式修改pip的配置文件。

首先在C:\Users\×××目录中创建名为pip的文件夹(×××为用户名),然后在里面创建名为pip.ini的文件,最后在该文件中添加以下内容,保存即可。

[global]
index-url=https://pypi.tuna.tsinghua.edu.cn/simple
timeout = 6000
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn
disable-pip-version-check = true

说明:请注意,该方式不适合于linux系统和MacOS。

  1. 创建虚拟环境
  • 同样在Anaconda Prompt中利用Anaconda创建一个python3.8的环境,环境名称为tensorflow,输入下面命令:
conda create -n tensorflow python=3.8

其中(环境名称,可以随意设置)

运行 开始菜单->Anaconda3—>Anaconda Navigator
点击Navigator左侧的 Environments,可以看到tensorflow的环境已经创建好了。

Tensorflow 2.0 最新版(2.4.1) 安装教程

    Tensorflow 2.0 最新版(2.4.1) 安装教程

  1. 在Anaconda Prompt中启动tensorflow环境
    格式:activate 虚拟环境名
    activate tensorflow
    注:当不使用tensorflow时,关闭tensorflow环境,命令为:deactivate 虚拟环境名
  2. 安装cpu版本的TensorFlow

用pip命令安装。这里高潮 (climax)来了,官方还有网上各种命令层出不穷,让人眼花缭乱。
下面列出了几种常用的命令方法,说明以下命令可以安装成功,但不能确定是否可以使用。

1.pip install tensorflow  # 最新的稳定发行版本,2.0×后默认是CPU和GPU版本在一起,1.×只表示CPU版本
2.pip install tensorflow-gpu  # 1.×的GPU版本
3.pip install tensorflow==1.15  # 1.×的最后一个更新版本
  • 第一个指令:什么叫CPU和GPU版本在一起?我理解的意思就是,CPU和GPU一家亲,不搞什么分裂,一条安装命令搞定就可以了嘛,至于怎么选择,看你机器的显卡支不支持CUDA了。
    因此,对于显卡支持gpu版本,而又只想用cpu版本练手的小伙伴来说,就不要用第一条命令进行安装,要不然在导包的时候就会有一大堆错误,缺这个少那个,基本是由显卡驱动程序版本、CUDA版本、CUDDN版本等问题引起的。如果不想安装gpu版本,何必自找麻烦呢。

这里的安装步骤是我copy前辈的文章,我之前直接用的这条安装命令pip install tensorflow,但是最后使用时,它提示我没有CUDA之类的东西,我查看安装的包时,发现tensorflow-cpu与tensorflow-gpu都安装上,看完这篇博客后,才知道gpu也捆绑安装了,运行代码时,总是报红提示我缺少 “动态链接”等,好像使用GPU时需要安装 cuda8+cudnn5等,比较麻烦,小白的我未尝试。

  • 第二个指令:安装1.×的GPU版本,我们不涉及,请忽略。
  • 第三个指令:按照对于1.x 版本,tensorflow默认是CPU版本的逻辑。这个确实没问题,安装成功后能用,诚不欺我。虽然能运行成功,但是总是输出一些异常。

运行结果。大致意思是,我的显卡支持GPU版本,所以提示我找不到一些库,如果想用gpu版本,请安装这些库,并且最后正确输出了Tensorflow的版本是1.15,无法使用gpu。虽然程序正常运行结束,但是明显基于计算机的硬件,官方还是强推了gpu版本,输出了一大堆的提示来安利你。可是,我明明只是想用cpu版本的,不想要推荐,这些输出报错不想看到。如果你不介意,当然也可以凑活着这么用。

上面说了这么多,如何才能安装简洁的tensorflow?

利用下面的命令安装,强制安装CPU版本。

pip install tensorflow-cpu

最后 完美的安装了最新的tensorflow 2.4.1 cpu版本。

注:这里没有介绍GPU版本的安装方法,GPU版本需要安装cuda8+cudnn5,如果需要 请搜索其他博文。

注意:一定要在 刚刚创建的tensorflow的环境下安装!

  1. 测试tensorflow
    在Anaconda Prompt中启动tensorflow环境,并进入python环境。

在tensorflow命令行中:输入python便是进入python环境

测试代码

import tensorflow as tf
#查看tensorflow版本
print(tf.__version__)

Tensorflow 2.0 最新版(2.4.1) 安装教程
如图所示
恭喜您安装成功
ヾ(◍°∇°◍)ノ゙

Pycharm &Tensorflow

习惯使用PyCharm来开发,而 Anaconda 集成了python开发环境,因此我们可以修改Project的python编译环境,从而更方便使用tensorflow框架。

配置如下:

  • 新建Project
  • File-Setting–Project Interpreter选择tensorflow下的Python解释器

Tensorflow 2.0 最新版(2.4.1) 安装教程

Tensorflow 2.0 最新版(2.4.1) 安装教程
部署完便可跑一个 HelloWorld

import tensorflow as tf
#查看tensorflow版本
print(tf.__version__)

这种方法的优点:不需要每次都打开和关闭环境。

Tensorflow & Hello world

Hello world

  • 安装成功后试一下Hello world,参考网上的代码:
import tensorflow as tf

#创建一个Tensor字符串常量
hello = tf.constant("hello world ")
print(hello)
  • 结果如下:

tf.Tensor(b’hello world’, shape=(), dtype=string)

  • 访问hello中的字符串,我们需要用到 numpy()
#调用numpy(),来访问一个Tensor(张量)值
print(hello.numpy())

运行结果如下: b’hello world’

本程序原期望的运行结果为:hello world
而实际运行结果为:b’hello world’
上网查后:
b 前缀的字符串为bytes类型的字符串
Python语言中有两种不同的字符串
一个用于存储文本(unicode类型文本字符串 u’hello world’ ),一个用于存储原始字节(byte类型字节字符串 b’hello world’ )
在python3中,str 变量默认采用unicode类型,因而省略了u 前缀

字节型字符串和文本型字符串之间可以通过编码encode() 和解码decode() 相互转换。

#调用decode()解码,默认为utf-8解码
print(hello.numpy().decode())

运行结果:
hello

具体请参考博客Link

Session()

测试代码:

import tensorflow as tf

def add_demo():
    # 计算两个变量的和
    # 回顾原生的python计算
    a = 10
    b = 20
    c = a + b
    print('原生python计算', c)
	# tensorflow 获取变量值,与 python不同
    a_t = tf.constant(10)
    b_t = tf.constant(20)
    print('a_t', a_t)
    c_t = a_t + b_t
    print('tensorflow计算两数的和:', c_t)
    
    # 开启会话
    with tf.Session() as sess:
    	c_t_value = sess.run(c_t)
    	print('c_t_value:', c_t_value)
   
   
if __name__ == '__main__':
    add_demo()

直接报错:
Tensorflow 2.0 最新版(2.4.1) 安装教程

错误的意思是tensortflow模块没有Session属性,后来查阅资料发现,tensorflow2.0版本中的确没有Session这个属性

如果安装的是tensorflow2.0版本又想利用Session属性请参考博客:Link

兼容2.0与1.0版本,需更改import语句:
import tensorflow.compat.v1 as tf

后购

安装一个框架,我觉得好难啊 (可能是我太笨 太low)
o(╥﹏╥)o

到现在为止,我花了很长时间阅读很多大佬的博客、资源等。衷心感谢他们,向优秀的人们致敬!

希望我能越走越远,加油!

“欢迎登陆官网(附https://tensorflow.google.cn/)了解更多TensorFlow内容,也可关注TensorFlow官方公众号获取更多资讯。”

Tensorflow 2.0 最新版(2.4.1) 安装教程

参考博客

Link
Link
Link

版权声明:本文为博主ZSYL原创文章,版权归属原作者,如果侵权,请联系我们删除!

原文链接:https://blog.csdn.net/qq_46092061/article/details/116561557

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2022年2月17日 下午2:48
下一篇 2022年2月17日

相关推荐