当我尝试使用tensorflow重新训练模型时,它显示了一个错误:
**error module 'tensorflow_hub' has no attribute 'KerasLayer'**
代码为:
print("Building model with", MODULE_HANDLE)
model = tf.keras.Sequential([
hub.KerasLayer(MODULE_HANDLE, output_shape=[FV_SIZE],
trainable=do_fine_tuning),
tf.keras.layers.Dropout(rate=0.2),
tf.keras.layers.Dense(train_generator.num_classes,
activation='softmax',
kernel_regularizer=tf.keras.regularizers.l2(0.0001))
])
model.build((None,)+IMAGE_SIZE+(3,))
model.summary()
错误如下:
通过使用tensorflow hub,通过添加新的dence完全连接的层,重新训练以前的hub模型。当运行代码时,它显示上面的error.is任何人都有关于它的想法。请帮助
2条答案
按热度按时间6psbrbz91#
请检查tensorflow版本。它应该是最近的夜间版本。
当我使用像1.13.1这样的版本时,我在错误前看到以下警告,没有属性'KerasLayer':
之后,做
pip install "tf-nightly"
,一切工作正常。https://www.tensorflow.org/hub
对于BatchNormalizationv1问题,您可以在夜间使用tf2.0,它也可以处理原始问题。
https://github.com/tensorflow/tfjs/issues/1255
bybem2ql2#
KerasLayer可与TF 2预发布版本配合使用:
GPU预发布候选版本: