tensorflow-gpu1.4.1 Object Detection API环境搭建踩坑

在无root权限的服务器上,使用CUDA 8.0搭建Tensorflow 1.4.1及Object Detection API环境时遇到问题。在运行model_builder_test.py时,由于tensorflow.python.keras模块缺少Model属性导致错误。解决方法是将所有引用tensorflow.python.keras.Model的地方改为tensorflow.python.keras.models.Model,以此修复相关文件。

      在服务器上搭建tensorflow Object Detection API环境时,因为是在实验室的服务器上添加了一个使用账号,所以没有root权限,不能使用sudo命令(前提)。实验室的cuda版本是8.0的,我查看了版本对应关系

cuda-8.0最高支持tensorflow-1.4.0版本,Object Detection API最低要求也是1.4.0版本,当时还很庆幸。

 

按照网上的方法一步步搭建,最后能运行 import tensorflow as tf了

坑来了,在运行python object_detection/builders/model_builder_test.py 时,报错:File "/home/yjzmatch/models-master/research/object_detection/predictors/heads/head.py", line 64, in <module>
    class KerasHead(tf.keras.Model):
AttributeError: module 'tensorflow.python.keras' has no attribute 'Model'
 

如果是自己的电脑,更新cuda版本和tensorflow版本就好了,但是在没有root权限的服务器上,这是不行的,搜到的另一个解决办法是:

在1.4.0版本中

<think>嗯,用户的问题是解决TensorFlow GPU 1.4.1与Python版本的冲突。首先,我需要回忆一下TensorFlow各个版本对应的Python支持情况。记得TensorFlow 1.4.x可能比较老旧,支持的Python版本可能在2.7或者3.5到3.6之间。现在用户遇到了版本兼容的问题,可能需要确认他们的Python版本是否符合要求。 接下来,用户可能需要安装特定版本的Python。比如,Python 3.6或2.7。如果用户当前使用的是更高版本的Python,比如3.7或以上,可能需要降级或者使用虚拟环境。这里可能需要用conda或者venv来创建独立的环境,安装指定版本的Python。 然后,安装TensorFlow-gpu 1.4.1的时候,可能需要对应的CUDA和cuDNN版本。比如,TensorFlow 1.4通常需要CUDA 8.0和cuDNN 6.0。用户需要检查他们的NVIDIA驱动是否支持这些版本,以及是否已经正确安装了这些库。 另外,用户提到的引用中有关于安装python3-devel的内容,这可能是因为在编译某些依赖时需要Python的头文件。所以,如果用户遇到编译错误,可能需要安装对应的开发包,比如python3-devel或者python-dev,具体取决于系统。 还有,用户可能需要处理其他依赖项的版本兼容性问题,比如numpy。例如,旧版本TensorFlow可能不支持较新的numpy版本,这时候需要指定安装旧版的numpy。引用中提到新建环境来避免numpy版本冲突,这也是一个有效的解决方法。 最后,用户可能需要通过conda来管理环境,因为conda可以处理Python版本和依赖库的兼容性问题,自动安装合适的CUDA和cuDNN版本。这样可以减少手动配置的麻烦。 总结一下,解决步骤可能包括:确认Python版本,创建虚拟环境,安装对应版本TensorFlow-gpu,检查CUDA/cuDNN版本,处理依赖库版本,以及可能的系统包安装(如python3-devel)。</think>### TensorFlow GPU 1.4.1与Python版本冲突解决方案 #### 1. 确定版本兼容TensorFlow 1.4.1官方支持的Python版本为**Python 3.5/3.6**和**Python 2.7**。若当前Python版本高于3.6,需要通过虚拟环境降级。例如使用conda创建环境: ```bash conda create -n tf_gpu_env python=3.6 conda activate tf_gpu_env ``` #### 2. 安装TensorFlow-gpu 1.4.1 ```bash pip install tensorflow-gpu==1.4.1 ``` 若遇到编译错误`Python.h: No such file or directory`,需安装Python开发包: ```bash sudo apt-get install python3.6-dev # Ubuntu/Debian # 或 sudo yum install python36-devel # CentOS/RHEL [^1] ``` #### 3. 匹配CUDA/cuDNN版本 | TensorFlow版本 | CUDA版本 | cuDNN版本 | |----------------|----------|-----------| | 1.4.1 | 8.0 | 6.0 | 安装CUDA 8.0后需配置环境变量: ```bash export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH export PATH=/usr/local/cuda-8.0/bin:$PATH ``` #### 4. 处理依赖冲突 若出现`numpy`版本兼容,强制安装指定版本: ```bash pip install numpy==1.16.0 # 典型兼容版本 ``` 建议使用独立环境隔离依赖,如引用[3]中新建环境的方案[^3]。 #### 5. 验证安装 ```python import tensorflow as tf sess = tf.Session(config=tf.ConfigProto(log_device_placement=True)) print(tf.__version__) # 应输出1.4.1 ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值