换了台机器,又装Tensorflow,记得我第一次装的时候装了好几天,而今天只用了十分钟就搞定了,因为这个方法只用在终端操作,不用去英伟达官网下载包,刷刷刷的贼快,只是后面去找版本的对应问题了又花了些时间
文章目录
0.pip/conda换默认源
为了高效下载,建议先把默认源换了,很简单这里不再赘述。(我用梯子,所以没换源😋)
1.Anaconda+python虚拟环境
如果你需要用到tensorflow了那我相信你一定会用Anaconda,Anaconda的安装不再赘述。只是提个醒,如果你第一次用conda create -n
创建环境那么路径一定在C盘,而换默认路径一定是可以设置的,这里也不再展开
创建TensorFlow环境:(tf是环境名字,尽量取短点吧,要不然以后手都输麻)
conda create -n tf python=3.9
2.安装CUDA以及cudnn
找到NVIDIA控制面板->帮助->系统信息->组件看一下CUDA版本,我的12.0是目前最新的,一般向下兼容
作为最高效的安装方法,接下来的每一个下载都只在终端里完成
首先在Tensorflow官网里看一眼
我们就安装最新的tensorflow-gpu2.6.0+python3.9+CUDA11.2+cuDNN8.1套餐
先用conda search
找找当前源下的CUDA与cuDNN有没有我们要的版本,如果没有对应包或者版本的话可以试试换镜像源,换几个总会有的。
conda search cuda
我的CUDA11.2有:
conda search cudnn
cuDNN8.1也有:
别忘了进入刚刚创建的环境:
activate tf
直接开下!
conda install cudatoolkit=11.2.0
conda install cudnn=8.1.0.77
两个都done了这一步就ok了,省去了多少官网的麻烦事
3.Tensorflow-gpu2.6.0下载测试
下载tensorflow-gpu2.6:
pip install tensorflow-gpu==2.6.0
此外还有几个必须包得装:
请确保numpy版本是1.19.5,否则tensorflow2.6.0与别的1.19.x都很容易打架
pip install protobuf==3.20.0
pip install numpy==1.19.5
如果要使用matplotlib会发现tensorlfow2.6.0需要的numpy版本比较低会和matplotlib打架
而经过在https://www.lfd.uci.edu/~gohlke/pythonlibs/#matplotlib的一番寻找,我找到了(一个一个试的)唯一一个符合python3.9环境兼容且与numpy1.19.5也兼容的matplotlib版本:matplotlib3.3.4
pip install matplotlib==3.3.4
下载结束后进python测试:
python
import tensorflow as tf
tf.test.is_gpu_available()
exit()
True了就成功了,恭喜
再去跑跑之前的项目
完全没问题了
4.附一个纯净的tensorflow2.6.0不打架所有pip list
pip list
得
(tf) D:\AAA\PYTHON\pythonproject>pip list
Package Version
----------------------- ---------
absl-py 0.15.0
asttokens 2.2.1
astunparse 1.6.3
backcall 0.2.0
cachetools 5.3.0
certifi 2022.12.7
charset-normalizer 3.1.0
clang 5.0
colorama 0.4.6
comm 0.1.3
contourpy 1.0.7
cycler 0.11.0
debugpy 1.6.7
decorator 5.1.1
executing 1.2.0
flatbuffers 1.12
fonttools 4.39.3
gast 0.4.0
google-auth 2.17.2
google-auth-oauthlib 1.0.0
google-pasta 0.2.0
grpcio 1.53.0
h5py 3.1.0
idna 3.4
importlib-metadata 6.3.0
importlib-resources 5.12.0
ipykernel 6.22.0
ipython 8.12.0
jedi 0.18.2
jupyter_client 8.1.0
jupyter_core 5.3.0
keras 2.6.0
Keras-Preprocessing 1.1.2
kiwisolver 1.4.4
Markdown 3.4.3
MarkupSafe 2.1.2
matplotlib 3.3.4
matplotlib-inline 0.1.6
nest-asyncio 1.5.6
numpy 1.19.5
oauthlib 3.2.2
opt-einsum 3.3.0
packaging 23.0
parso 0.8.3
pickleshare 0.7.5
Pillow 9.5.0
pip 23.0.1
platformdirs 3.2.0
prompt-toolkit 3.0.38
protobuf 3.20.0
psutil 5.9.4
pure-eval 0.2.2
pyasn1 0.4.8
pyasn1-modules 0.2.8
Pygments 2.14.0
pyparsing 3.0.9
python-dateutil 2.8.2
pywin32 306
pyzmq 25.0.2
requests 2.28.2
requests-oauthlib 1.3.1
rsa 4.9
scipy 1.10.1
setuptools 67.6.1
six 1.15.0
stack-data 0.6.2
tensorboard 2.12.1
tensorboard-data-server 0.7.0
tensorboard-plugin-wit 1.8.1
tensorflow-estimator 2.12.0
tensorflow-gpu 2.6.0
termcolor 1.1.0
tornado 6.2
traitlets 5.9.0
typing-extensions 3.7.4.3
urllib3 1.26.15
wcwidth 0.2.6
Werkzeug 2.2.3
wheel 0.40.0
wrapt 1.12.1
zipp 3.15.0
哪里不一样直接照着抄就可行