模块'tensorflow_hub'没有属性'KerasLayer'

时间:2019-04-23 04:04:51

标签: python-3.x tensorflow keras tensorflow-hub

当我尝试使用张量流重新训练模型时,它显示了一个错误:

**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()

错误类似:

      1 print("Building model with", MODULE_HANDLE)
      2 model = tf.keras.Sequential([
----> 3     hub.KerasLayer(MODULE_HANDLE, output_shape=[FV_SIZE],
      4                    trainable=do_fine_tuning),
      5     tf.keras.layers.Dropout(rate=0.2),

AttributeError: module 'tensorflow_hub' has no attribute 'KerasLayer'

使用tensorflow集线器通过添加新的dence完全连接的层来重新训练以前的集线器模型。运行代码时,它会显示以上错误。对此有任何想法。请帮助

1 个答案:

答案 0 :(得分:0)

请检查tensorflow版本。应该是最近的每晚版本。

当我使用1.13.1之类的版本时,在错误之前我看到以下警告,没有属性'KerasLayer':

W0423 20:04:16.453974 139707130586880 __init__.py:56] Some hub symbols are not available because TensorFlow version is less than 1.14

完成pip install "tf-nightly"之后,一切正常。

https://www.tensorflow.org/hub

对于BatchNormalizationv1问题,您可以每晚使用tf2.0,这也应该解决原始问题。

pip install -U tf-nightly-2.0-preview

https://github.com/tensorflow/tfjs/issues/1255