加载kears_tune报错 ‘tensorflow.keras.layers.experimental.preprocessing‘ has no attribute ‘Random

在这里插入图片描述

加载kt时报错。

在这里插入图片描述

分析

  1. 查找tensorflow官方手册,2.4.0版本tenssorflow有tf.keras.layers.experimental.preprocessing.RandomRotationAPI。
    加载kears_tune报错 ‘tensorflow.keras.layers.experimental.preprocessing‘ has no attribute ‘Random_第1张图片
      察看对象在github上的源码。
    在这里插入图片描述
    加载kears_tune报错 ‘tensorflow.keras.layers.experimental.preprocessing‘ has no attribute ‘Random_第2张图片
      找到image_preprocessing.py文件。
    在这里插入图片描述

  2. 查找本地文件。在augment.py中调用了processing.RandomRotation
    加载kears_tune报错 ‘tensorflow.keras.layers.experimental.preprocessing‘ has no attribute ‘Random_第3张图片
      需要查找一下对应的py文件,看看可不可以手动补全。使用help()函数查找路径。
    加载kears_tune报错 ‘tensorflow.keras.layers.experimental.preprocessing‘ has no attribute ‘Random_第4张图片

  3. 打开D:\anaconda3\envs\mytensorflow\Lib\site-packages\tensorflow_core\python\keras\api_v2\keras\layers\experimental\preprocessing下的__ init __文件。添加加载语句:

from tensorflow.python.keras.layers.preprocessing.image_preprocessing import RandomRotation
加载kears_tune报错 ‘tensorflow.keras.layers.experimental.preprocessing‘ has no attribute ‘Random_第5张图片

  1. 对应文件夹下没有image_preprocessing.py文件。
    加载kears_tune报错 ‘tensorflow.keras.layers.experimental.preprocessing‘ has no attribute ‘Random_第6张图片
      把GitHub上的image_preprocessing.py文件下载到对应路径下(下载完成后,看一下内容是不是py代码)。
    加载kears_tune报错 ‘tensorflow.keras.layers.experimental.preprocessing‘ has no attribute ‘Random_第7张图片

  总而言之,言而总之,这是版本支持的问题,截止本文时tensorflow v2.4.0(stable)很好的支持了tuner。因此,与其在破房子上修修补补,不如把tensorflow更新到稳定版本。否则,还会有一大堆模块加载的问题。

你可能感兴趣的:(tensorflow)