百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

解决安装AI算法库TensorFlow 的最新入坑指南以及详细的安装教程

liuian 2024-12-19 14:47 59 浏览

详细过程请到微信公众号阅读

【分别在linux和windows系统下安装】

(转载作者请注明出处)

废话不多说,直接上干货

....

正文开始

众所周知,学习深度学习和人工智能技术的科技工作者对Tensorflow的安装一直是件麻烦的事情,其实也没那么难,只是在于操作的方法是否合理和规范而已。合理正确的安装命令和正确的操作环节是成功的关键因素。为此,我们在本文中将详细说明linux和windows两种OS系统关于TensorFlow的安装教程,并且将重点说明目前最新版本TensorFlow2.1.0的安装要素和测试检验。

(注意:本文的linux系统教程适用于deepin和ubuntu 18.04两种,其他系统安装类似)

TensorFlow简介



https://baike.baidu.com/item/Tensorflow/18828108https://www.tensorflow.org/

一、在Windows10系统开展如下操作

安装前提:

已经安装好Anaconda3, 由于国外的镜像文件下载较慢,所以我选择了国内的镜像——https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

以上请自行安装....

1、前期准备:Anaconda3的终端上的过渡

打开已经安装好的Anaconda3

运行 Anaconda Prompt,输入如下命令检验是否安装成功


conda?list

输出:

再次输入清华镜像检验一下



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

这里是因为我已经安装过了,所以结果是这样的。

2、开始安装TensorFlow

(1)运行 Anaconda Prompt,输入以下命令,创建版本为python 3.7.4的tensorflow 环境:


conda?create?-n?tensorflow?python=3.7.4

这里的TensorFlow我以前已经安装过了,所以下面再给大家安装另一个tensorflow2环境:输入命令


conda create -n tensorflow2 python=3.7.4

输出:













































































(base) C:\Users\kangs>conda create -n tensorflow2 python=3.7.4Solving environment: done

==> WARNING: A newer version of conda exists. <==  current version: 4.5.11  latest version: 4.8.1
Please update conda by running
    $ conda update -n base -c defaults conda


## Package Plan ##
  environment location: D:\Anaconda3\envs\tensorflow2
  added / updated specs:    - python=3.7.4

The following packages will be downloaded:
    package                    |            build    ---------------------------|-----------------    setuptools-44.0.0          |           py37_0         671 KB  defaults    pip-19.3.1                 |           py37_0         1.9 MB  defaults    ca-certificates-2019.11.27 |                0         163 KB  defaults    certifi-2019.11.28         |           py37_0         157 KB  defaults    python-3.7.4               |       h5263a28_0        18.2 MB  defaults    sqlite-3.30.1              |       he774522_0         962 KB  defaults    vs2015_runtime-14.16.27012 |       hf0eaf9b_1         2.4 MB  defaults    openssl-1.1.1d             |       he774522_3         5.7 MB  defaults    wheel-0.33.6               |           py37_0          58 KB  defaults    ------------------------------------------------------------                                           Total:        30.1 MB
The following NEW packages will be INSTALLED:
    ca-certificates: 2019.11.27-0           defaults    certifi:         2019.11.28-py37_0      defaults    openssl:         1.1.1d-he774522_3      defaults    pip:             19.3.1-py37_0          defaults    python:          3.7.4-h5263a28_0       defaults    setuptools:      44.0.0-py37_0          defaults    sqlite:          3.30.1-he774522_0      defaults    vc:              14.1-h0510ff6_4        defaults    vs2015_runtime:  14.16.27012-hf0eaf9b_1 defaults    wheel:           0.33.6-py37_0          defaults    wincertstore:    0.2-py37_0             defaults
Proceed ([y]/n)? y

Downloading and Extracting Packagessetuptools-44.0.0    | 671 KB    | ################################################################################################################################################# | 100%pip-19.3.1           | 1.9 MB    | ################################################################################################################################################# | 100%ca-certificates-2019 | 163 KB    | ################################################################################################################################################# | 100%certifi-2019.11.28   | 157 KB    | ################################################################################################################################################# | 100%python-3.7.4         | 18.2 MB   | ################################################################################################################################################# | 100%sqlite-3.30.1        | 962 KB    | ################################################################################################################################################# | 100%vs2015_runtime-14.16 | 2.4 MB    | ################################################################################################################################################# | 100%openssl-1.1.1d       | 5.7 MB    | ################################################################################################################################################# | 100%wheel-0.33.6         | 58 KB     | ################################################################################################################################################# | 100%Preparing transaction: doneVerifying transaction: doneExecuting transaction: done## To activate this environment, use##     $ conda activate tensorflow2## To deactivate an active environment, use##     $ conda deactivate

然后打开Anaconda Navigator,进入点击中间的选项applications on可以看到我们刚刚创建的TensorFlow2,这里的TensorFlow是我以前安装的环境:

打开上述左侧菜单栏,也就是开始菜单下的Anaconda Navigator 左边的 Environments,点击之后可看到此环境:

(2)启动tensorflow2环境

这里有两种启动方式:第一种是连续刚刚的 Anaconda Prompt终端输入


activate tensorflow2

输出

第二种打开方式,启动刚刚的Anaconda Navigator,进入环境点击

(3)安装cpu版本的tensorflow

有两种方法可以安装:

方法一:cpu版本(我推荐的)


pip install --ignore-installed --upgrade tensorflow

方法二:gpu版本, 注意: gpu版要事先选好, 并装好CUDA和cuDNN


pip?install?--ignore-installed?--upgrade?tensorflow-gpu

执行结果:



















(tensorflow2) C:\Users\kangs>pip install --ignore-installed --upgrade tensorflowCollecting tensorflow  Using cached https://files.pythonhosted.org/packages/34/d5/ce8c17971067c0184c9045112b755be5461d5ce5253ef65a367e1298d7c5/tensorflow-2.1.0-cp37-cp37m-win_amd64.whlCollecting protobuf>=3.8.0  Using cached https://files.pythonhosted.org/packages/30/c6/286db43e2d0d4b89d328a222365c7a253a99a24067812253f0d4f8eb0f1c/protobuf-3.11.2-cp37-cp37m-win_amd64.whlCollecting six>=1.12.0  Using cached https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whlCollecting keras-applications>=1.0.8  Using cached https://files.pythonhosted.org/packages/71/e3/19762fdfc62877ae9102edf6342d71b28fbfd9dea3d2f96a882ce099b03f/Keras_Applications-1.0.8-py3-none-any.whlProcessing c:\users\kangs\appdata\local\pip\cache\wheels\d7\de\2e\efa132238792efb6459a96e85916ef8597fcb3d2ae51590dfd\wrapt-1.11.2-cp37-none-any.whlCollecting numpy<2.0,>=1.16.0  Using cached https://files.pythonhosted.org/packages/a9/38/f6d6d8635d496d6b4ed5d8ca4b9f193d0edc59999c3a63779cbc38aa650f/numpy-1.18.1-cp37-cp37m-win_amd64.whlCollecting wheel>=0.26; python_version >= "3"  Using cached https://files.pythonhosted.org/packages/00/83/b4a77d044e78ad1a45610eb88f745be2fd2c6d658f9798a15e384b7d57c9/wheel-0.33.6-py2.py3-none-any.whlCollecting astor>=0.6.0....(由于太长,因此这里省略了)

这样就安装成功了,当不使用TensorFlow时,可以通过deactivate来关闭TensorFlow环境:

(不过先不要着急关闭,我们下面还有进行检验,如果最后不用,再关掉)

(4)测试tensorflow



python --versionpython

创建一个项目:






import tensorflow as tftf.compat.v1.disable_eager_execution()hello = tf.constant('hello,tensorflow') #初始化一个TensorFlow的常量sess= tf.compat.v1.Session() #启动一个会话print(sess.run(hello))

执行结果显然是可行的,测试成功:

提示:如果遇到No module named ‘tensorflow’,那是因为没有在tensorflow的环境下打开它们,所以记得激活tensorflow的环境。

(5)解决你安装的Tensorflow环境不能安装ipython,spyder等插件

错误提示如下图:

“无法定位程序输入点OPENSSL_sk_new_reserve于动态链接库...... libssl-1_1-x64.dll上的问题”‘’

解放方法:互换 libssl-1_1-x64.dll文件,时间必须一样

第一步 打开D:\Anaconda\Library\bin文件夹下面的 libssl-1_1-x64.dll

第二步 D:\Anaconda\DLLs 文件夹下面的 libssl-1_1-x64.dll

如果两个文件夹时间不一样的话,把两个文件换成一样的就可以了。

注意:为了避免系统出错,要事先备份好一样的文件,以避免修改后出错而找不会原来的文件。最简单的方法就是复制换成另一个名称的,例如我加了一个“源文件”。

互换如下图:

换文件之后,时间都是2018/6/28 21:00

下面再次点击安装插件就可以了

安装成功,如图下所示

二、在Linux系统开展如下操作

这里使用的虚拟机VMware Workstation Pro 15.0安装的linux系统进行操作的,如图:

下面打开deepin系统开始进行安装

1、先安装Anaconda3

(1)、下载:https://www.anaconda.com/distribution/#linux

将下载好的anacoda3放在主目录下(home)

(2)、安装命令:


bash Anaconda3-2019.10-Linux-x86_64.sh

回车运行如下

按回车键继续,会读取许可,出现个More,一直按回车以及yes,然后会出现下图:

一直往下回车和yes

安装成功

(3)、配置环境变量

为了方便编辑环境变量,这里安装一个编辑器gedit,命令


sudo apt-get install gedit

打开环境变量,并使用命令:sudo gedit ~/.bashrc查看系统环境,文件末尾输入以下代码:





在文件的末尾加上下述代码:
#Anacondaexport?PATH=$PATH:/home/anaconda3/bin

如下图

(5)、更新bashrc,并查看Anacoda3的安装情况



source?~/.bashrcconda

查询当前已经安装的conda库


conda list

安装库(这里的***代表库名称), 如果没有你的库文件,可以选择这个命令:


conda?install?***

更新库


conda?update?***?

(5)、(如果你不用还可以卸载),不卸载就跳过此处,建议不要卸载

卸载conda: 直接删除anaconda文件夹即可:


rm?-rf?anaconda3

(6)、进入和退出 conda base 环境

进入 conda base 环境


conda?activate?base

退出 conda base 环境


conda deactivate  

编辑 conda 环境变量


vim?~/.bashrc?或者?sudo?gedit?~/.bashrc

2、使用以上Anaconda3安装Tensorflow

(1)、在linux终端或cmd中输入以下命令搜索当前可用的tensorflow版本,如果没有就要创建:



conda?search?-t?conda?tensorflowconda?create?-n?tf

安装完成之后,最后还提示激活与退出









# To activate this environment, use#????$?conda?activate?tf##To deactivate an active environment, use#   $ conda deactivate

(2)、正式安装tensorflow

激活虚拟环境后conda activate tf,我们开始用conda安装tensorflow吧!

如果你还不知道GPU是什么东东,那你的计算机里肯定没有安装cuda、cudnn 、显卡之类的东西,那就安装CPU版本;

安装CPU版本的tensorflow(推荐安装):


conda install tensorflow

安装GPU版本

(如果你不理解建议不要安装,初学者还是卸载CPU版本的tensorflow吧!)


conda install tensorflow-gpu

等待几分钟之后,看看自己是否安装成功:

(3)、测试安装是否成功:在python3.7.6下导入tensorflow:

(不报错的话说明成功安装了)


import?tensorflow?as?tf

至此我们完整地安装完毕,以下是一些附件资料


附件资料

Conda的环境管理及知识点

































#conda版本查看conda -Vconda --version
#更新         conda update conda           #更新condaconda update anaconda        #更新anacondaconda update anaconda-navigator    #update最新版本的anaconda-navigator
# 查看已安装的虚拟环境conda env list conda info -econda info --env
# conda -create -n env_name list_of_packages# env_name是需要创建的环境名称,list_of_packages是在新环境中需要安装的工具包,有多个时用空格隔开# 创建一个名为的环境,指定Python版本是3.5(conda会自动寻找3.5.x中的最新版本)
conda create -n xxxx python=3.5conda create --name xxxx python=3.5
conda activate xxxx           #开启xxxx环境conda deactivate              #关闭环境
# 克隆环境,我想创建一个新环境BBB,完全克隆AAA的环境配置conda create -n BBB --clone AAA
# 删除一个已有的环境conda remove -n xxxx --all
# 环境重命名# conda没有重命名的命令,所以可以先 clone 一个环境,然后删除原有的环境


Conda的包管理知识点
























# 查看当前环境下已安装的包conda list
# 查看某个指定环境(xxxxx)下已安装的包conda list -n xxxxx
# 查找package信息,例如查找numpy包信息,会列numpy的所有版本conda search numpy
# 安装package,安装多个包用空格隔开# 如果不用-n指定环境名称,则被安装在当前活跃环境# 也可以通过-c指定通过某个channel安装conda install -n xxxxx numpy pandas
# 更新packageconda update numpy           # 更新numpy(当前活跃的环境)  conda update -n xxxxx numpy  # 更新指定xxxxx环境下的numpyconda update python          # 假设当前环境是python3.4, conda会将python升级为3.4.x系列的最新版本
# 删除环境packageconda uninstall numpyconda remove numpy           # 删除numpy包(当前活跃的环境)conda remove -n xxxxx numpy  # 删除xxxxx环境下的包


参考文献:






https://blog.csdn.net/qq654129588/article/details/79917515https://ask.csdn.net/questions/657580https://www.cnblogs.com/HongjianChen/p/8385547.htmlhttps://blog.csdn.net/qq_45100771/article/details/102868264https://blog.csdn.net/superjunenaruto/article/details/9539068


认认真真系统学习数据分析


相关推荐

赶紧收藏!编程python基础知识,本文给你全部整理好了

想一起学习编程Python的同学,趁我粉丝少,可以留言、私信领编程资料~Python基础入门既然学习Python,那么至少得了解下这门编程语言,知道Python代码执行过程吧。Python的历...

创建绩效改进计划 (PIP) 的6个步骤

每个经理都必须与未能达到期望的员工抗衡,也许他们的表现下降了,他们被分配了新的任务并且无法处理它们,或者他们处理了自己的任务,但他们的行为对他人造成了破坏。许多公司转向警告系统,然后在这些情况下终止。...

PI3K/AKT信号通路全解析:核心分子、上游激活与下游效应分子

PI3K/AKT/mTOR(PAM)信号通路是真核细胞中高度保守的信号转导网络,作用于促进细胞存活、生长和细胞周期进程。PAM轴上生长因子向转录因子的信号传导受到与其他多条信号通路的多重交叉相互作用的...

互联网公司要求签PIP,裁员连N+1都没了?

2021年刚画上句号,令无数互联网公司从业者闻风丧胆的绩效公布时间就到了,脉脉上已然炸了锅。阿里3.25、腾讯二星、百度四挡、美团绩效C,虽然名称五花八门,实际上都代表了差绩效。拿到差绩效,非但不能晋...

Python自动化办公应用学习笔记3—— pip工具安装

3.1pip工具安装最常用且最高效的Python第三方库安装方式是采用pip工具安装。pip是Python包管理工具,提供了对Python包的查找、下载、安装、卸载的功能。pip是Python官方提...

单片机都是相通的_单片机是串行还是并行

作为一个七年的从业者,单片机对于我个人而言它是一种可编程的器件,现在长见到的电子产品中几乎都有单片机的身影,它们是以单片机为核心,根据不同的功能需求,搭建不同的电路,从8位的单片机到32位的单片机,甚...

STM32F0单片机快速入门八 聊聊 Coolie DMA

1.苦力DMA世上本没有路,走的人多了,便成了路。世上本没有DMA,需要搬运的数据多了,便有了DMA。大多数同学应该没有在项目中用过这个东西,因为一般情况下也真不需要这个东西。在早期的单片机中...

放弃51单片机,直接学习STM32开发可能会面临的问题

学习51单片机并非仅仅是为了学习51本身,而是通过它学习一种方法,即如何仅仅依靠Datasheet和例程来学习一种新的芯片。51单片机相对较简单,是这个过程中最容易上手的选择,而AVR单片机则更为复杂...

STM32串口通信基本原理_stm32串口原理图

通信接口背景知识设备之间通信的方式一般情况下,设备之间的通信方式可以分成并行通信和串行通信两种。并行与串行通信的区别如下表所示。串行通信的分类1、按照数据传送方向,分为:单工:数据传输只支持数据在一个...

单片机的程序有多大?_单片机的程序有多大内存

之前一直很奇怪一个问题,每次写好单片机程序之后,用烧录软件进行烧录时,能看到烧录文件也就是hex的文件大小:我用的单片机芯片是STM32F103C8T6,程序储存器(flash)只有64K。从...

解析STM32单片机定时器编码器模式及其应用场景

本文将对STM32单片机定时器编码器模式进行详细解析,包括介绍不同的编码器模式、各自的优缺点以及相同点和不同点的应用场景。通过阅读本文,读者将对STM32单片机定时器编码器模式有全面的了解。一、引言...

两STM32单片机串口通讯实验_两个32单片机间串口通信

一、实验思路连接两个STM32单片机的串口引脚,单片机A进行发送,单片机B进行接收。单片机B根据接收到单片机A的指令来点亮或熄灭板载LED灯,通过实验现象来验证是否通讯成功。二、实验器材两套STM32...

基于单片机的智能考勤机设计_基于51单片机的指纹考勤机

一、设计背景随着科技水平的不断发展,在这么一个信息化的时代,智能化信息处理已是提高效率、规范管理和客观审查的最有效途径。近几年来,国内很多公司都在加强对企业人员的管理,考勤作为企业的基础管理,是公司...

STM32单片机详细教学(二):STM32系列单片机的介绍

大家好,今天给大家介绍STM32系列单片机,文章末尾附有本毕业设计的论文和源码的获取方式,可进群免费领取。前言STM32系列芯片是为要求高性能、低成本、低功耗的嵌入式应用设计的ARMCortexM...

STM32单片机的 Hard-Fault 硬件错误问题追踪与分析

有过单片机开发经验的人应该都会遇到过硬件错误(Hard-Fault)的问题,对于这样的问题,有些问题比较容易查找,有些就查找起来很麻烦,甚至可能很久都找不到问题到底是出在哪里。特别是有时候出现一次,后...