我想将mobileNetV2与tf.keras一起使用。
如果在tensorflow网站上查找keras applications 我发现
mobilenet = tf.keras.applications.MobileNetV2()
如果我尝试导入MobileNetV2
from tensorflow.keras.applications import MobileNetV2
我收到一个错误:
ImportError: cannot import name 'MobileNetV2'
如果我勾选Keras2 webside,我只会发现少数几个应用程序。 mobileNetV2(或V1)不是其中之一。但是可以加载和使用V1模型。
如果我点击tensorflow.keras网站上的链接,它将带我进入经典的keras webside,我认为Keras1不是keras2,我是对的吗?还说明了MobileNetV2,显然没有实现。所以我想链接是错误的。
这一切都让我感到困惑。可能是由于切换到tf.keras造成的,还是混淆了?
要更具体地提出我的问题:是否存在带有tf.keras的预定义的,可用的MobileNetV2应用程序,还是我必须手动实现它?
谢谢
编辑:TF 1.10版。
答案 0 :(得分:1)
您正在使用this链接作为MobileNetV2的参考,但针对tensorflow版本1.13进行了记录。您正在使用Tensorflow版本1.10。在此您只能找到MobileNet而不是MobileNetV2。
对于tensorflow版本1.10,您可以这样导入
from tensorflow.keras.applications.mobilenet import MobileNet
或
model = tf.keras.applications.MobileNet()
如果要检查tf.keras.applications
中包含的模型,则可以使用适当的tensorflow版本检查github repo。
如果要使用MobileNetV2,请升级您的tensorflow版本,并可以按文档中所述使用它。
答案 1 :(得分:1)
对于 Google Colab 和最新版本的 tensorflow,
采用:
!pip install keras_applications
.. 将安装 keras-applications >= 1.0.8
对于 tensorflow 版本 >= 2.5.0,使用
from keras.applications.mobilenet_v2 import MobileNetV2