本文介绍在Anaconda环境中,下载并配置Python中机器学习、深度学习常用的新版tensorflow库的方法。

  在之前的两篇文章Python TensorFlow深度学习回归代码:DNNRegressorPython TensorFlow深度神经网络回归:keras.Sequential中,我们介绍了利用Python中的tensorflow库,实现机器学习深度学习的具体思路与代码实现;然而,当初并没有具体介绍tensorflow库的配置方法。因此,在这篇文章中,我们就介绍一下在Anaconda环境中,配置tensorflow库的详细方法;此外,这里需要注意,在较新版本的tensorflow库(版本大于1.5 ,但对于Windows用户而言,版本还不能高于2.10)中,已经同时支持CPUGPU训练,不需要再区分是配置CPU版本的库还是GPU版本的库了。

  首先,和Anaconda环境配置其他库一样,我们需要打开Anaconda Prompt软件;如下图所示。

  随后,将会弹出如下所示的终端窗口。

  接下来,我们即可开始tensorflow库的配置。由于我这里希望将tensorflow库配置到另一个已有的Anaconda虚拟环境中(这个虚拟环境的名称为py36tfPython版本是3.6的),而不是当前这个默认的base环境,因此需要按照文章创建Anaconda虚拟Python环境的方法中提到的方法,首先进入这个名称为py36tf的虚拟环境中,如下图所示。

  如果大家需要在默认的环境中配置tensorflow库,直接执行接下来的操作即可;如果大家希望新建一个环境来配置tensorflow库,那么参考上文提及的文章创建Anaconda虚拟Python环境的方法,创建并进入一个新的虚拟环境,再继续执行接下来的操作即可。

  接下来,继续输入如下的代码,即可立即开始配置tensorflow库。

pip install --upgrade tensorflow

  运行上述代码后,可以看到将立即开始tensorflow库的配置,如下图所示。其中,由于我这里Python版本是3.6的,而不是最新的Python版本,因此从下图可以看到tensorflow库版本也并不是最新的,而是2.6.2版本的——当然对我而言,这也就足够了。如果大家希望用最新版本的tensorflow库,需要注意同时使用最新的Python版本。

  此外,这里有必要提一句——如果我用如下所示的代码进行tensorflow库的配置,配置得到的tensorflow库则是1.X版本的,而不是上面我们刚刚得到的是2.X版本,始终无法获取最新版本的tensorflow库;且之后无论怎么更新tensorflow库,都会出现报错信息。

conda install tensorflow

  例如,在我的电脑上,如果运行上述代码,则结果如下图所示。

  不知道具体是哪里的问题,从上图可以看到这种方法得到的tensorflow库始终是1.X版本(例如上图中显示tensorflow库就是1.2.1版本的)。所以,如果大家需要比较新版本的tensorflow库,还是建议用前面提到的pip install --upgrade tensorflow这句代码来实现。

  让我们继续回到前述tensorflow库配置的工作中;稍等片刻,一般情况下即可完成tensorflow库的配置。这里需要注意,如果此时大家出现如下图所示的报错,则说明tensorflow库暂时还是没有配置成功。

  这种情况是由于pip版本不够高导致的,因此我们需要通过如下所示的代码将pip升级。

python -m pip install --upgrade pip

  输入上述代码,如下图所示。

  运行这一代码后,我们重新运行一次pip install --upgrade tensorflow这句代码即可。可是在我这里,重新运行这句代码后,又出现了如下图所示的问题。

  通过检查,发现网络代理的问题;将代理关闭后,即可解决问题(但是很奇怪,不知道为什么刚刚没有报这个错误,重新运行这句代码后才出现这样的错误)。最终,得到结果界面如下图所示。

  接下来,我们可以输入如下的代码,从而检查tensorflow库是否已经配置成功。

python -c "import tensorflow as tf;print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

  如下图所示,如果最终得到了一个tf.Tensor结果,即可说明我们的tensorflow库终于配置完毕了。

  至此,大功告成。当然,到这里或许也不算完全成功——从上图可以看到,当前tensorflow库并没有进行GPU计算。如果大家的电脑上没有GPU,或者不需要用GPU加以计算,那就不用管这个问题,相当于已经完全成功了,后续直接开始用tensorflow库进行各类深度学习的应用即可;但是对于电脑上有GPU,并且也希望让GPU加入计算的用户而言,我们将在下一篇博客中介绍具体的配置方法。

部署CPU与GPU通用的tensorflow:Anaconda环境的更多相关文章

  1. 在 Ubuntu 16.04 中安装支持 CPU 和 GPU 的 Google TensorFlow 神经网络软件

    TensorFlow 是用于机器学习任务的开源软件.它的创建者 Google 希望提供一个强大的工具以帮助开发者探索和建立基于机器学习的应用,所以他们在去年作为开源项目发布了它.TensorFlow ...

  2. 关于gpu版本的tensorflow+anaconda+jupyter的一些安装问题(持续更新)

    关于anaconda安装,虽然清华镜像站资源很丰富,但是不知道是网络还是运气的问题,用这个路径安装的时候总是出现文件丢失.具体表现可能是anaconda prompt 找不到,conda命令无效等问题 ...

  3. TensorFlow——tensorflow指定CPU与GPU运算

    1.指定GPU运算 如果安装的是GPU版本,在运行的过程中TensorFlow能够自动检测.如果检测到GPU,TensorFlow会尽可能的利用找到的第一个GPU来执行操作. 如果机器上有超过一个可用 ...

  4. TensorFlow指定CPU和GPU方法

    TensorFlow指定CPU和GPU方法 TensorFlow 支持 CPU 和 GPU.它也支持分布式计算.可以在一个或多个计算机系统的多个设备上使用 TensorFlow. TensorFlow ...

  5. [CB]Intel 2018架构日详解:新CPU&新GPU齐公布 牙膏时代有望明年结束

    Intel 2018架构日详解:新CPU&新GPU齐公布 牙膏时代有望明年结束 北京时间12月12日晚,Intel在圣克拉拉举办了架构日活动.在五个小时的演讲中,Intel揭开了2021年CP ...

  6. CPU和GPU双低效,摩尔定律之后一万倍 ——写于TPU版AlphaGo重出江湖之际

    本文来自计算机体系结构专家王逵.他认为,“摩尔定律结束之后,性能提升一万倍”不会是科幻,而是发生在我们眼前的事实.   2008年,<三体2:黑暗森林>里写到:   真的很难,你冬眠后不久 ...

  7. (通用)深度学习环境搭建:tensorflow安装教程及常见错误解决

    区别于其他入门教程的"手把手式",本文更强调"因"而非"果".我之所以加上"通用"字样,是因为在你了解了这个开发环境之后 ...

  8. 转:ubuntu 下GPU版的 tensorflow / keras的环境搭建

    http://blog.csdn.net/jerr__y/article/details/53695567 前言:本文主要介绍如何在 ubuntu 系统中配置 GPU 版本的 tensorflow 环 ...

  9. 浅谈CPU和GPU的区别

    导读: CPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景.CPU需要很强的通用性来处理各种不同的数据类型,而GPU面对的则是类型高度统一的.相互无依赖的大规模数据 ...

  10. (七) Keras 绘制网络结构和cpu,gpu切换

    视频学习来源 https://www.bilibili.com/video/av40787141?from=search&seid=17003307842787199553 笔记 首先安装py ...

随机推荐

  1. #Powerbi 1分钟学会,SUMMARIZE函数,分组汇总并新建表

    今天我们来学习一个新的表函数,SUMMARIZE函数是DAX中的一个函数,它可以根据一列或多列对数据进行分组,并且可以使用指定的表达式为汇总后的表添加新列,形成一张新表. 一:基础语法 SUMMARI ...

  2. R语言求取大量遥感影像的平均值、标准差:raster库

      本文介绍基于R语言中的raster包,批量读取多张栅格图像,对多个栅格图像计算平均值.标准差,并将所得新的栅格结果图像保存的方法.   在文章基于R语言的raster包读取遥感影像中,我们介绍了基 ...

  3. 《Node.js+Vue.js+MangoDB全栈开发实战》已出版

    <Node.js+Vue.js+MangoDB全栈开发实战> 图书购买地址: 京东:<Node.js+Vue.js+MangoDB全栈开发实战> 当当:<Node.js+ ...

  4. Lfu缓存在Rust中的实现及源码解析

    一个 lfu(least frequently used/最不经常使用页置换算法 ) 缓存的实现,其核心思想是淘汰一段时间内被访问次数最少的数据项.与LRU(最近最少使用)算法不同,LFU更侧重于数据 ...

  5. MyBatis学习篇

    什么是MyBatis (1)Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动.创建连接.创建statement等繁杂 ...

  6. 使用@nuxtjs/sitemap给项目添加sitemap(网站地图)

    安装使用步骤参照:此博客内容转载博客地址:https://huangliangbo.com/2097 如何使用?(详细图文) 在项目根目录下使用yarn/npm/cnpm 安装 @nuxtjs/sit ...

  7. 松灵机器人scout mini小车 自主导航(3)——建图导航仿真

    松灵机器人Scout mini小车建图导航仿真 在之前的文章中,我们已经介绍了如何在gazebo和rviz对scout mini小车进行仿真,并且测试了添加自定义的传感器,在本文章中将进一步介绍如何利 ...

  8. oeasy教您玩转vim - 80 - # 宏macro

    ​ 宏 macro 回忆 这次我们了解了编码格式 屏幕显示的encoding 文件保存的fileencoding 不能搞乱了 一般用什么编的就用什么解 解铃还须系铃人 打开不正确的话,就要切到正确的上 ...

  9. 前端太卷了,不玩了,写写node.js全栈涨工资,赶紧学起来吧!!!!!

    首先聊下node.js的优缺点和应用场景 Node.js的优点和应用场景 Node.js作为后端开发的选择具有许多优点,以下是其中一些: 高性能: Node.js采用了事件驱动.非阻塞I/O模型,使得 ...

  10. C# 常用类和命名空间

    Array类 用括号声明数组是C#中使用Array类的记号.在后台使用C#语法,会创建一个派生于抽象基类Array的新类.这样,就可以使用Array类为每个C#数组定义的方法和属性了. Array类实 ...