win10 anaconda tensorflow 环境配置

前言

为了完成games102的作业而下载anaconda。使用anaconda下载python。
参考资料为极客学院的教程:
https://wiki.jikexueyuan.com/project/tensorflow-zh/get_started/os_setup.html

总结

总结我的配置:
anaconda python3.6+cuda11.2+cudnn8.1+tensorflow_gpu 2.6.0

anaconda介绍

Anaconda 是一个集成许多第三方科学计算库的 Python 科学计算环境,Anaconda 使用 conda 作为自己的包管理工具,同时具有自己的计算环境,类似 Virtualenv.

和 Virtualenv 一样,不同 Python 工程需要的依赖包,conda 将他们存储在不同的地方。 TensorFlow 上安装的 Anaconda 不会对之前安装的 Python 包进行覆盖.

安装 Anaconda
建立一个 conda 计算环境
激活环境,使用 conda 安装 TensorFlow
安装成功后,每次使用 TensorFlow 的时候需要激活 conda 环境

安装anaconda:成功!

首先需要确定适配tensorflow的python版本
大部分教程使用的都是python3.6
我们可以在tensorflow官网上找到经过测试的tensorflow构建环境

根据这篇blog
深度学习环境总共有三个方面的版本对应需要注意
版本对应关系:
显卡驱动、算力、cuda版本等查看CUDA发行文档说明
torch与torchvision版本对应
TensorFlow相关版本对应

我目前使用的显卡是
在这里插入图片描述
但是cuda官网居然没有列
在这里插入图片描述
但是cuda官网有NVidia和cuda的版本号对应
在这里插入图片描述

按照这个bolg所说,打开nvidia控制面板之后,就看到我的显卡对应的合适的cuda版本。最高是cuda11.2.162。所以我打算找这个cuda对应的anaconda和python。
在这里插入图片描述
tensorflow官网对最低版本的软硬件的支持也写了至少cuda11.2
在这里插入图片描述
在这里插入图片描述
总而言之,现在比较适合我的就是这一套tensorflow
在这里插入图片描述
所以我要选择python3.6版本的anaconda
这里下载历史版本
根据别人说3.6的anaconda对应的安装包是这个
在这里插入图片描述

下载好后安装过程参见这个blog
唯一需要注意的是安装目录和是否将anaconda设为默认的python
安装目录:
在这里插入图片描述
是否设为默认python和配置环境变量:
在这里插入图片描述
本来想顺便把vscode装了的 但是一直显示我没有联网 所以安装失败 算了 改天再装

但是我安装完发现打不开anaconda
在cmd中打开提示是

C:\Users\80955>anaconda-navigator
2022-01-20 16:12:15,360 - ERROR download_api._get_url:378
Expecting value: line 1 column 1 (char 0)

Traceback (most recent call last):
  File "C:\Users\80955\Anaconda3\lib\site-packages\anaconda_navigator\widgets\main_window.py", line 484, in setup
    self.post_setup(conda_data=conda_data)
  File "C:\Users\80955\Anaconda3\lib\site-packages\anaconda_navigator\widgets\main_window.py", line 521, in post_setup
    self.tab_home.setup(conda_data)
  File "C:\Users\80955\Anaconda3\lib\site-packages\anaconda_navigator\widgets\tabs\home.py", line 169, in setup
    self.set_applications(applications, packages)
  File "C:\Users\80955\Anaconda3\lib\site-packages\anaconda_navigator\widgets\tabs\home.py", line 204, in set_applications
    apps = self.api.process_apps(applications, prefix=self.current_prefix)
  File "C:\Users\80955\Anaconda3\lib\site-packages\anaconda_navigator\api\anaconda_api.py", line 811, in process_apps
    versions=[vsdata.get('productVersion')],
AttributeError: 'str' object has no attribute 'get'

上网查之后发现应该是VScode没有安装成功的问题

所以我就卸载重装了一下 装到vscode的时候,
在anaconda目录下pkgs文件夹下面C:\Users\80955\Anaconda3\pkgs ,找到vscode_inst.py文档,第110行原为:
VSCODE_ENDPOINT = ‘https://vscode-update.azurewebsites.net/api/update/{}/stable/version’.format
改为
VSCODE_ENDPOINT = ‘https://update.code.visualstudio.com/api/update/{}/stable/version’.format(VSCODE_SUBDIR) # NOQA

然后还是会报那个错
所以我
按照这个blog
一、查找安装路径C:\Users\80955\Anaconda3\Lib\site-packages\anaconda_navigator\api文件夹下找到anaconda_api.py文件,找[vsdata.get(‘productVersion’)]

二、修改versions的值为:versions=[“https://update.code.visualstudio.com/api/update/win32-x64/stable/version”],anaocnda navigator就能顺利启动

anaconda的getting started页面

安装cuda:成功

官网下载cuda的11.2.1版本
在这里插入图片描述
在这里插入图片描述
设置-应用-卸载nvidia frameview.
叫我卸载这个,但是我不是很想卸载这个
有人说安装tensorflow会自动安装对应的cuda版本?
是不是真的?好像不是真的。

TensorFlow 的 GPU 特性只支持 NVidia Compute Capability >= 3.5 的显卡. 被支持的显卡 包括但不限于:

NVidia Titan
NVidia Titan X
NVidia K20
NVidia K40
下载并安装 Cuda Toolkit 7.0
在这里插入图片描述
我卸载了这个

然后 再次安装 我选择安装推荐的精简版本,没有选择自定义的高级版本,现在正在安装中。安装成功了。

安装cudnn:成功

cuda和cudnn版本对应官网链接
在这里插入图片描述
安装成功后将cuDNN文件粘贴至CUDA下载路径(共四步)

本机CUDA安装路径为:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2

(一)依次复制cuDNN的bin,include,lib至CUDA的bin,include,lib(如下三张图)
在这里插入图片描述
(二)添加系统环境变量
在这里插入图片描述

但是tensorflow的官网上要加的系统变量好像更多一些

官网
在这里插入图片描述
我还没有加 或许下次有问题了再加?

重启电脑 / 输入命令让环境变量生效
(一)输入命令:

set PATH=c:
echo %PATH%

在这里插入图片描述
(二)关闭窗口,重新输入
echo %PATH%
(三)输入:

nvcc -V

如图:(可见CUDA版本号)

在这里插入图片描述

检查安装是否成功

(通过NVIDIA提供的 deviceQuery.exe 和 bandwidthTest.exe 来查看GPU的状态,两者均在安装目录的 extras\demo_suite文件夹中 )

(一)cmd进入CUDA文件夹下的\extras\demo_suite
执行.\bandwidthTest.exe 或者deviceQuery.exe
在这里插入图片描述
在这里插入图片描述

安装tensorflow-gpu

参考这篇文章
我适合这个:
在这里插入图片描述
所以我要安装tensorflow_gpu-2.6.0
按照这篇文章

打开anaconda prompt,输入:conda create -n tensorflow python=3.6
创建一个conda环境,名称:tensorflow,使用python3.6作为解释器。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
激活刚刚建好的环境,对这个环境进行处理。

输入:

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

默认安装最新版
旧版可以这样

pip install tensorflow==2.4.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

安装tensorflow2.4,也可以是其他版本,2X版本不区分cpu和gpu了。我想要的版本是2。6.0就是最新版,所以我不使用旧版了。

-i是使用外部源的标志位可以替换如其他源:
  阿里云 http://mirrors.aliyun.com/pypi/simple/
  中国科技大学(快) https://pypi.mirrors.ustc.edu.cn/simple/
  豆瓣(douban) http://pypi.douban.com/simple/
  清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
  中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/

安装成功
在这里插入图片描述

在这里插入图片描述

检验安装是否成功

在这里插入图片描述
在这里插入图片描述

以后可能有用

关于anaconda内置python的版本变更

可以添加一些镜像源增加anaconda下载速度

按照这篇文章:3060安装tensorflow的心得添加镜像源

其他问题:

在运行的过程中,即使什么软件都没有打开的情况下还是会出现RUN_OUT_OF_MEMORY 的情况,主要是由于有程序占用部分显存,tensorflow默认直接占用全部显存,所有需要修改一下使用显存配置。添加如下两行,设置为按需分配:

gpus = tf.config.experimental.list_physical_devices(‘GPU’)
tf.config.experimental.set_memory_growth(gpus[0], True)

安装好了以后就可以看自己的情况安装自己需要使用的库了。
输入:pip install numpy
输入:pip install sklearn
输入:pip install pandas
输入:pip install matplotlib

下面进行pycharm的安装

参考以下链接pycharm安装和使用
在这里插入图片描述
在这里插入图片描述
点击Create New Project,接下来是重点

Location是我们存放工程的路径,
在这里插入图片描述

在这里插入图片描述

4.左侧有4种选择:Virtualenv Environment、Conda Environment、System Interpreter、Pipenv Environment
①其中System Interpreter如字面意思,系统里安装的本地Python作为解释器,一般很少用,不推荐;
②Pipenv Environment,只知道pip包的一个管理模块,不了解;
③说一下Virtualenv Environment和Conda Environment。网上其实有很多资料了,找了两天,我还是没看明白Virtualenv Environment和Conda Environment的区别到底在哪里。后来觉得也不用太纠结这个问题,先会用,满足学习和工作的需要就行,这才是工具最大的意义。后面在使用中一定会遇到很多坑,自己一点一点总结就可以了。
简单说,Virtualenv Environment使项目拥有独立的Python环境,各项目之间不会因为版本依赖、库依赖受到影响。

④选择Conda Enviroment,项目文件夹会在Anaconda下面,独立于系统解释器的版本环境,会继承Anaconda下所有的包。

仅是自己学习的话,选择Virtualenv Environment或者Conda Enviroment都可。我常用Virtualenv Environment。

这个链接教了我们如何给github上下载的项目构建环境(包括命令行和图形界面)

这个视频演示了用venv和conda env的区别

上面是创建新环境
下面是使用现有的环境
因为我之前已经创建了一个名为tensorflow的环境
所以我就不修改这个环境了(虽然我挺想再创建一个名为计算机图形学作业的环境 但是那个环境里面可能就要把tensorflow重新装一遍 我觉得懒得 虽然不同的项目用的包不同 但是到底几个项目公用一个环境是合适的呢? 我不理解)

我想了一下 或许 tensorflow一个工作环境 pytorch一个工作环境 就够了 反正我就是用来深度学习+计算机图形学的 把 计算机图形学又不知道用什么别的东西去了 即使特别的包应该也不会很大 把。。。

猜你喜欢

转载自blog.csdn.net/weixin_42914662/article/details/122599994