gpt4 book ai didi

tensorflow - TF/Keras 错误 : InputLayer not a Checkpointable

转载 作者:行者123 更新时间:2023-12-04 11:18:37 28 4
gpt4 key购买 nike

我正在使用简单的猫与狗数据集在 Google Colab 上尝试新添加的 TPU 支持。

在创建了一个简单的 CNN 之后,我尝试将模型导出到 TPU。但它因错误而失败

TypeError: Checkpointable._track_checkpointable() passed type <class 'keras.engine.topology.InputLayer'>, not a Checkpointable.

这是我在 Colab 上写的代码。
model = models.Sequential()
model.add(layers.Conv2D(32, (3,3), activation='relu', input_shape=(150, 150, 3)))
model.add(layers.MaxPooling2D((2,2)))
model.add(layers.Conv2D(64, (3,3), activation='relu'))
model.add(layers.MaxPooling2D((2,2)))
model.add(layers.Flatten())
model.add(layers.Dropout(0.5))
model.add(layers.Dense(512, activation='relu'))
model.add(layers.Dense(1, activation='sigmoid'))
model.summary()

train_datagen = ImageDataGenerator(rescale=1./255)

train_generator = train_datagen.flow_from_directory(train_dir, target_size=(150,150), batch_size=20, class_mode='binary')

tpu_model = tf.contrib.tpu.keras_to_tpu_model(model, strategy=tf.contrib.tpu.TPUDistributionStrategy(tf.contrib.cluster_resolver.TPUClusterResolver(tpu="grpc://" + os.environ['COLAB_TPU_ADDR'])))

我的猜测是我在 train_generator 中做错了什么.但我不确定它是什么。任何帮助将不胜感激。

最佳答案

如果您正在使用或导入 layers来自 Keras而不是 TensorFlow像这样:

from keras import layers,models
from keras.preprocessing.image import ImageDataGenerator
import tensorflow as tf

你会得到上面提到的错误:
TypeError: Checkpointable._track_checkpointable() passed type <class 'keras.engine.topology.InputLayer'>, not a Checkpointable.

因此,您可以导入 layers直接来自 TensorFlow就像我下面的代码:
from tensorflow.keras import layers,models
from keras.preprocessing.image import ImageDataGenerator
import tensorflow as tf

或者你可以在这里看到我的完整代码:
https://gist.github.com/ilmimris/8218e397dd35ab693404e95db32dc574

关于tensorflow - TF/Keras 错误 : InputLayer not a Checkpointable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52691280/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com