以下是我的解决方法,亲测可行,不过有点麻烦。
conda create -n new_tensorflow python=3.8
进入该环境
conda activate new_tensorflow
下载安装cudatoolkit和cudnn
conda install cudatoolkit=11.2
conda install cudnn=8.1
安装keras-tuner最新版
这里注意一定要使用命令行pip安装,不要在pycharm里安装!!!!!
pip install keras-tuner
安装tensorflow-gpu 2.5.0
pip install tensorflow-gpu==2.5.0
等待后,验证是否安装成功,输入python,进入python对话框
python
import tensorflow as tf
tf.test.is_gpu_available()
成功后的打印结果。
至此,问题已解决
最近想使用keras-tuner优化网络的超参数,但是我在pycharm安装完keras-tuner后,按照keras-tuner官网(https://keras.io/keras_tuner/)给出的事例代码写好程序,满怀期待想要看到结果,运行后却发现报错:
ImportError: cannot import name ‘tf2’ from ‘tensorflow.python’ (unknown location)
苦恼不已,一开始我以为是keras_tuner安装失败,后来搜索报错提示后发现是因为Keras版本和Tensorflow版本不对,我的初步想法是Keras_tuner版本和我当前的tensorflow-gpu2.5.0版本不对应,我找遍了全网也没找到这两者的对应关系,无奈只好删除之前辛辛苦苦创建好的tensorflow-gpu2.5.0的环境,再次利用Anaconda Navigator创建了一个新的环境,查看cudatoolkit、cudnn和tensorflow-gpu 2.5.0的对应关系。
查看版本驱动
nvida-smi
结果图
cudatoolkit、cudnn和tensorflow-gpu 2.5.0的对应关系
安装好了tensorflow-gpu2.5.0后,我再次在pycharm中安装低版本keras-tuner 1.0.3,安装完毕,再次运行程序,依旧报错。
ImportError: cannot import name ‘tf2’ from ‘tensorflow.python’ (unknown location)
输入conda list
conda list
发现我的环境里居然有两个版本的tensorflow,一个是tensoeflow-gpu2.5.0 还有一个是tensorflow 2.3.0。
问题就在这里
其实在pycharm里安装keras-tuner是,查看详情会发现,它会自动帮你安装tensorflow 2.3.0
于是,我再次创建新的环境,以防万一,在安装tensorflow之前,安装keras-tuner。
安装cudatoolkit、cudnn之前,一定要查看对应关系,本人安装的是tensorflow-gpu 2.5.0版本的。
在github上查到的。
我目前的修复:
安装
keras-tuner's
依赖项:terminaltables==3.1.0 tabulate==0.8.6 tqdm==4.41.1 colorama==0.4.3
然后安装 keras-tuner:
pip install -U --no-deps keras-tuner
--------------------------------------
创作不易,如对您有用,给个赞再走。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)