【深度学习系列】全面指南:安装TensorFlow的CPU和GPU版本

本博客旨在为初学者提供一份全面的指南,介绍如何根据个人电脑的配置选择并安装适合的TensorFlow版本。内容涵盖了如何查看电脑显卡型号以确定是安装CPU还是GPU版本的TensorFlow,创建Python虚拟环境,以及使用conda命令查找可用的TensorFlow版本。同时,文章还提供了安装过程中可能遇到的问题及其解决方法,确保读者能够顺利完成安装过程,并开始他们的机器学习或深度学习项目。

目录

一、安装anaconda

二、tensorflow安装cpu版本和gpu版本的区别

三、确定本电脑tensorflow安装cpu版本还是GPU版本

(一)查看显卡型号的步骤

(二) 点击性能

(三) 找到GPU,查看其型号

 (四)查看显卡的计算能力

 四、Tensorflow与Python、CUDA、cuDNN的版本对应表

五、安装CPU版本的tensorflow 

(一)创建虚拟环境

(二)查看虚拟环境

(三) 进入/激活虚拟环境

(四) 安装cpu版本的tensorflow

(五) 在jupyter中添加虚拟环境tensorflow-2.10.0的内核

六、使用conda search命令来查看所有可用的TensorFlow版本

 七、安装GPU版本的tensorflow

八、可能出现的报错

报错一:

出现报错一的原因: 

报错一的解决方法(切换镜像源)

 报错二及解决方法:

报错三及解决方案:

 报错四及解决方案:

报错五及解决方案:

一、安装anaconda

Anaconda | The Operating System for AI

anaconda想必大家都很熟悉了,就不在这里过多陈述。

二、tensorflow安装cpu版本和gpu版本的区别

TensorFlow 的 CPU 版本适用于普通计算机,无需特殊硬件,适合轻量级任务和小规模数据处理。

而 GPU 版本则需要 NVIDIA GPU 及相关驱动支持,能显著提升计算速度,适合大规模数据集和复杂模型的训练。选择版本时,应考虑硬件条件和任务需求。

三、确定本电脑tensorflow安装cpu版本还是GPU版本

下边是我在网上找到的参考:

首先,查看自己电脑显卡的型号。如果显卡是NVIDIA系列的,继续下面步骤;如果显卡不是NVIDIA系列的,直接装CPU版。 

注意:显卡是NVIDIA系列的,同样可以安装cpu版本。

步骤如下:

(一)查看显卡型号的步骤

①在电脑菜单栏里输入“任务管理器”,然后打开

(二) 点击性能

(三) 找到GPU,查看其型号

发现本电脑GPU是NVIDIA系列系列中的Geforce RTX 2060

 (四)查看显卡的计算能力

在CUDA GPU | NVIDIA 开发者这个链接,点击自己显卡对应的系列,查看显卡计算能力(computer capability)。如下图,本电脑显卡是 NVIDIA系列系列中的Geforce RTX 2060,其对应的计算能力是7.5。(官方文档中写的75,不知道为啥没有加小数点),故可以安装GPU版本。

 四、Tensorflow与Python、CUDA、cuDNN的版本对应表

在 Windows 环境中从源代码构建  |  TensorFlow (google.cn)

Tensorflow与Python、CUDA、cuDNN的版本对应表_tensorflow版本对应-CSDN博客

五、安装CPU版本的tensorflow 

这里我选择安装tensorflow-2.10.0,对应的python版本是3.7-3.10

(一)创建虚拟环境

打开Anaconda的Prompt命令窗口,在进入Prompt后,默认的是你的base环境。(不明白这里也没事)

为了方便管理,我们在此创建一个新的虚拟环境,用来使用2.10.0版本的tensorflow

创建了一个新的conda环境,名为"tensorflow-2.10.0",并指定在这个环境中使用Python 3.9版本,代码命令如下:

conda create -n tensorflow-2.10.0 python=3.9

选择y 

这样就是创建虚拟环境成功了,下边我们再验证一下。

(二)查看虚拟环境

输入conda info -e 或者conda env list可以查看你当前conda中的环境。若创建成功,prompt中显示如下:

下图有四个虚拟环境,最左列是虚拟环境的名字,最右列是对应的位置。

第四个环境名称是tensorflow-2.10.0,就是我们刚刚创建的那个,说明创建成功了。

(三) 进入/激活虚拟环境

输入"conda activate 环境名" 可以进入新环境,如:

conda activate tensorflow-2.10.0

这样就从最开始的base环境切换到名称为 tensorflow-2.10.0虚拟环境下了。

(四) 安装cpu版本的tensorflow

conda install tensorflow==2.10.0

 如果没有报错的话九安装成功啦!

接下来可以使用pip list 或者conda list,查看一下我们本地安装好的包,如下:

发现有了2.10.0版本的tensorflow

接着我们进入python环境,输入下方两行代码,第一行代码作用是再python中导入tensorflow,没有报错就再次验证成功安装好tensorflow了。

第二行代码,是查看tensorflow的版本。

import tensorflow as tf
tf.__version__

 从下图结果中可以看出,tensorflow的版本正是2.10.0

(五) 在jupyter中添加虚拟环境tensorflow-2.10.0的内核

在tensorflow-2.10.0这个虚拟环境中,命令行输入conda install ipykernel安装ipykernel

安装完成后进入Jupyter Notebook,创建文件时可以发现有了tensorflow-2.10.0这个内核

同样,打开一个文件后,可以在kernel->change kernel下选择想要的内核。 

六、使用conda search命令来查看所有可用的TensorFlow版本

conda search tensorflow 命令查看的是当前镜像下的所有可用的TensorFlow版本

此命令将检索当前配置的镜像源中所有可获取的TensorFlow版本,这包括了不同版本号、适配不同环境(如CPU或GPU)的版本。使用者可以通过这个命令来查找适合自己需求的TensorFlow版本,从而进行安装。

conda search tensorflow

按下回车键后,你会看到一个包含TensorFlow不同版本及其对应途径的列表。

conda search tensorflow-gpu -c conda-forge

 如果你想查看特定类型的版本(如GPU版本),可以在搜索命令后加上-c conda-forge,因为GPU版本的TensorFlow通常在conda-forge库中提供。

 七、安装GPU版本的tensorflow

可以参照下方两个链接中的步骤进行安装gpu版本的tensorflow

tensorflow-gpu版本安装教程(过程详细)_tensorflow gpu版本安装-CSDN博客

Tensorflow-gpu安装教程(详细)!!!_安装tensorflow-gpu-CSDN博客

我在网上看到许多评论提到,通过使用conda安装gpu版本的tensorflow,例如执行命令:conda install tensorflow-gpu==2.6.0,无需单独下载cuda和cudnn。然而,这种方法在我的尝试中并未成功。

同样,直接使用pip进行安装也未能成功,这是我参考的第二篇博客中提到的前两种方法。

因此,我决定接下来手动下载cuda和cudnn,并进行相应的配置以安装gpu版本的tensorflow。

待我最近有空时,会继续更新这一进程。

补充:

conda config --show能够显示出所有conda的config信息。

conda config --show channels只显示channels的信息

八、可能出现的报错

报错一:

出现报错一的原因: 

  1. 版本不兼容:Anaconda channels(镜像)可能不包含特定的2.15.0版本,特别是对于较旧的版本。

  2. 镜像源问题:尝试安装的特定版本可能在当前的镜像源中不可用。可以尝试更换其他可用的 Anaconda 或者 TensorFlow 的官方镜像源,或者更新到较新的版本。

报错一的解决方法(切换镜像源)

打开cmd切换到国内的其它镜像源

这里提供两个镜像源,分别是清华镜像、中科大镜像、,其它的小伙伴们可以在网上自行搜索

切换成清华镜像源

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 --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/

切换成阿里云像源

conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/free/
conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/main/

切换成华为云像源

conda config --add channels https://mirrors.huaweicloud.com/anaconda/pkgs/free/
conda config --add channels https://mirrors.huaweicloud.com/anaconda/pkgs/main/

切换成上海交通大学像源

conda config --add channels https://mirrors.sjtug.org/anaconda/pkgs/free/
conda config --add channels https://mirrors.sjtug.org/anaconda/pkgs/main/

注意!如果切换镜像后还是出现下载不了的情况,就先切换回默认源,然后再修改另一个可以使用的conda源(一定要先恢复默认,再换另一个!!!)

切换回默认源

conda config --remove-key channels

​​

 报错二及解决方法:

这个错误提示表明你遇到了"429 Too Many Requests",即请求次数过多,导致服务器暂时无法处理你的请求。这通常是因为在短时间内发送了过多的安装请求。为了解决这个问题,你可以按照以下步骤操作:

  1. 等待一段时间

  2. 检查网络状况

  3. 更换镜像源

报错三及解决方案:

有时,在安装特定版本的TensorFlow后,尝试导入时可能会遇到与numpy版本冲突的错误。解决这种冲突通常需要升级或降级numpy版本以使其与TensorFlow兼容。然而,当你解决了TensorFlow和numpy之间的兼容性问题后,可能会发现numpy又与scipy不兼容。如果调整numpy版本以适配scipy,那么它与TensorFlow的兼容性问题又会再次出现。

在这种情况下,我们可以考虑使用与TensorFlow兼容的Python版本来解决兼容性问题。每个版本的TensorFlow都支持多个Python版本,例如,安装2.10.0版本的TensorFlow时,它可能与Python 3.7、3.8、3.9和3.10等版本兼容。如果我们选择的是Python 3.7版本,但遇到了兼容性问题,我们可以尝试使用其他版本的Python来解决这个问题。

 报错四及解决方案:

有一个问题那就是在某些情况下,设置好镜像源后仍不能下载,可能是因为镜像源没有相关资源而导致没有安装到正确版本,每个人情况不同,或多或少会出现这样的问题。那么就尝试换其它镜像源。

报错五及解决方案:

在尝试安装2.15.0版本的tensorflow时,我使用了conda进行安装,但遇到了各种问题。最常见的问题是在当前channel下找不到此版本,即使更换了channel也无法正常安装。后来,我考虑使用pip install进行安装,通过运行`pip install tensorflow==2.15.0 -i https://pypi.tuna.tsinghua.edu.cn/simple`成功安装了所需的版本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/32607.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FPGA早鸟课程第二弹 | Vivado 设计静态时序分析和实际约束

在FPGA设计领域,时序约束和静态时序分析是提升系统性能和稳定性的关键。社区推出的「Vivado 设计静态时序分析和实际约束」课程,旨在帮助工程师们掌握先进的设计技术,优化设计流程,提高开发效率。 课程介绍 关于课程 权威认证&…

常用主流sip协议软电话客户端软件有哪些?—— 筑梦之路

Ekiga 官网地址:Ekiga ~ Free Your Speech Ekiga,原名GnomeMeeting,支持Windows和Linux,是一个兼容SIP和H.323的视频会议程序,兼容VoIP,IP电话,通过Ekiga可以与使用任何SIP和H.323软硬件的远程…

Vue.js 自定义组件的三种用法

1.创建项目 创建项目,你可以参考我以前的博文,这里省略了 项目的目录结构如下: 接着,我们在 src/components 目录下创建一个自定义的组件 SplashHello.vue,示例代码如下所示: <template><div><p>{{ title }}</p><p>{{ message }}</p&…

C++初学者指南第一步---13.聚合类型

C初学者指南第一步—13.聚合类型 文章目录 C初学者指南第一步---13.聚合类型1. 类型分类&#xff08;简化&#xff09;2. 如何定义和使用3. 为什么选择自定义类型/数据聚合&#xff1f;4. 聚合类型初始化5.混合6. 复制7. 值和引用的语义8.聚合的向量(std::vector)9.最令人烦恼的…

不使用ES,如何使用MySQL实现模糊匹配

1.业务场景 例如&#xff1a;我们实现一个公司的申请审批流程&#xff0c;整个业务流程涉及到两种角色&#xff0c;分别是商务角色与管理员角色&#xff0c;整个流程如下图所示&#xff1a; 核心流程总结为一句话&#xff1a;商务角色申请添加公司后由管理员进行审批。 商务在…

10.2 JavaEE——Spring MVC入门程序

要求在浏览器发起请求&#xff0c;由Spring MVC接收请求并响应&#xff0c;具体实现步骤如下。 一、创建项目 在IDEA中&#xff0c;创建一个名称为chapter10的Maven Web项目。 &#xff08;一&#xff09;手动设置webapp文件夹 1、单击IDEA工具栏中的File→“Project Structu…

干货 | 2024生成式AI产业落地路径研究报告(免费下载)

【1】关注本公众号&#xff0c;转发当前文章到微信朋友圈 【2】私信发送 2024生成式AI产业落地路径研究报告 【3】获取本方案PDF下载链接&#xff0c;直接下载即可。 如需下载本方案PPT/WORD原格式&#xff0c;诚挚邀请您微信扫描以下二维码加入方案驿站知识星球&#xff0c;…

已解决ApplicationException异常的正确解决方法,亲测有效!!!

已解决ApplicationException异常的正确解决方法&#xff0c;亲测有效&#xff01;&#xff01;&#xff01; 目录 问题分析 出现问题的场景 报错原因 解决思路 解决方法 分析错误日志 检查业务逻辑 验证输入数据 确认服务器端资源的可用性 增加对特殊业务情况的处理…

程序猿大战Python——面向对象——继承进阶

方法重写 目标&#xff1a;掌握方法的重写。 当父类的同名方法达不到子类的要求&#xff0c;则可以在子类中对方法进行重写。语法&#xff1a; class 父类名(object):def 方法A(self):代码... class 子类名(父类名):def 方法A(self):代码... 例如&#xff0c;一起来完成&…

UEC++ 虚幻5第三人称射击游戏(一)

UEC 虚幻5第三人称射击游戏&#xff08;一&#xff09; 创建一个空白的C工程 人物角色基本移动 创建一个Character类添加一些虚幻商城中的基础动画 给角色类添加Camera与SPringArm组件 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category "SpringArm")clas…

AG32 MCU Start Kit 开发板快速入门及 21天体验活动

AG32 IDE开发环境搭建-完整版 海振远科技 2024-6-18 AG32 MCU开发板的使用 使用准备 在使用开发板前&#xff0c;请确认已经安装好开发环境。 安装环境过程&#xff0c;请参考文档《AG32 开发环境搭建.pdf》 上电&#xff1a; 给开发板5V 供电&#xff0c;打开开关&#…

极速下载,尽在Gopeed — 现代全能下载管理器

Gopeed&#xff1a;用Gopeed&#xff0c;让下载变得简单而高效。- 精选真开源&#xff0c;释放新价值。 概览 Gopeed是一个用Go语言编写的现代下载管理器&#xff0c;支持跨平台使用&#xff0c;包括Windows、macOS、Linux等。它不仅提供了基本的下载功能&#xff0c;还通过内…

免费的AI在线写作工具,让写作变的更简单

在如今的时代&#xff0c;写作已经成为了我们日常生活中不可或缺的一部分。无论是自媒体创作者、学生还是办公职场人员&#xff0c;都有内容创作的需求。然而&#xff0c;写作过程往往伴随着灵感枯竭、查找资料费时等问题。下面小编就来和大家分享几款免费的AI在线写作工具&…

流水账里的贷款密码:如何打造银行眼中的“好流水”

说到贷款&#xff0c;很多人可能都遇到过这样的困惑&#xff1a;明明觉得自己条件不错&#xff0c;为啥银行就是不给批呢&#xff1f;其实&#xff0c;银行在审批贷款时&#xff0c;除了看你的征信记录、收入证明这些基础材料外&#xff0c;还有一个很重要的参考指标&#xff0…

文心一言 VS 讯飞星火 VS chatgpt (287)-- 算法导论21.2 6题

六、假设对 UNION 过程做一个简单的改动&#xff0c;在采用链表表示中拿掉让集合对象的 tail 指针总指向每个表的最后一个对象的要求。无论是使用还是不使用加权合并启发式策略&#xff0c;这个修改不应该改变 UNION 过程的渐近运行时间。(提示:而不是把一个表链接到另一个表后…

常见数字化转型方案撰写的思维模式

通过这一段时间的学习和倾听,结合DAMA数据管理知识体系学习与项目实践,对大部分数据治理类项目、信息化建设和数字化转型项目的思维模式做了一些总结梳理,具体有如下四种,供参考。 一、方法1:结合环境六边形法 1.要点题,弄清楚问题是什么 2.目标原则有哪些,补充哪些 3.…

如何使用代理ip上网移动转电信

在一些特定的工作场景中&#xff0c;比如跨网办公、数据分析等&#xff0c;我们常常需要将网络IP从一种类型转换到另一种类型。如需将移动网络转电信IP代理。那么&#xff0c;如何使用代理IP上网移动转电信呢&#xff1f;接下来&#xff0c;将为您揭示一个便捷的方法&#xff0…

【Linux】系统文件IO·文件描述符fd

前言 C语言文件接口 C 语言读写文件 1.C语言写入文件 2.C语言读取文件 stdin/stdout/stderr 系统文件IO 文件描述符fd&#xff1a; 文件描述符分配规则&#xff1a; 文件描述符fd&#xff1a; 前言 我们早在C语言中学习关于如何用代码来管理文件&#xff0c;比如文件的…

《Fundamentals of Power Electronics》——绕组导体中的涡流

绕组导体中的涡流也会导致功率损耗。这可能导致铜耗大大超过上述公式预测的值。特殊的导体涡流机制被称为集肤效应和紧邻效应。这些机制在多层绕组的大电流导体中最为明显&#xff0c;特别是在高频变换器中。 下图说明了一个简单变压器绕组中的邻近效应。

微软TTS最新模型,发布9种更真实的AI语音

很高兴与大家分享 Azure AI 语音翻译产品套件的两个重大更新&#xff1a; 视频翻译和增强的实时语音翻译 API。 视频翻译&#xff08;批量&#xff09; 今天&#xff0c;我们宣布推出视频翻译预览版&#xff0c;这是一项突破性的服务&#xff0c;旨在改变企业本地化视频内容…