tf2.6导入image_dataset_from_directory报错无法解决该怎么办?
问题解决方法
1. 修正导入语句
TensorFlow 2.6 版本已将image_dataset_from_directory接口从tf.keras.preprocessing.image模块迁移至tf.keras.utils模块,直接替换导入代码即可:
# 替换原来的错误导入语句 from tensorflow.keras.utils import image_dataset_from_directory
如果需要兼容不同TF版本的运行环境,可以增加兼容判断逻辑:
try: # 兼容旧版本TF from tensorflow.keras.preprocessing.image import image_dataset_from_directory except ImportError: # 适配TF 2.4及以上版本 from tensorflow.keras.utils import image_dataset_from_directory
2. 排查环境异常问题
你提到上周可正常运行、安装nightly版本后仍报错,优先检查以下配置:
- 确认运行代码的环境和安装依赖的环境一致:使用conda虚拟环境的需先执行
conda activate <你的环境名>再运行代码;使用Jupyter的需检查当前kernel是否切换到对应环境 - 验证当前实际加载的TensorFlow版本,执行以下代码确认版本符合预期:
import tensorflow as tf print(tf.__version__)
- 清理残留安装包后重新安装指定版本:如果存在多个版本TF/keras共存的情况,先卸载所有相关包再重新安装:
pip uninstall -y tensorflow tensorflow-gpu keras tf-nightly keras-nightly pip install tensorflow==2.6.0
内容的提问来源于stack exchange,提问作者LuisGF93
相关产品推荐
相关产品推荐

