このモジュールをインポートできません
import keras.applications.resnet
ModuleNotFoundError
in()----> 1つのインポートkeras.applications.resnet
ModuleNotFoundError: No module named 'keras.applications.resnet'
keras resnet リンク
Kerasチームは現在のモジュールにresnet、resnet_v2、およびresnextを含めていません。前述のように、それらはKeras 2.2.5から追加されます ここ 。
回避策として、keras_applicationsモジュールを直接使用して、以下に示すように、すべてのResNet、ResNetV2、およびResNeXtモデルをインポートできます。
from keras_applications.resnet import ResNet50
または、ResNet50を使用したいだけの場合
from keras.applications.resnet50 import ResNet50
あるいは、言及されているように、常にソースからビルドできます here 。
Keras 2.2.4でResNeXtを使用するための回避策が見つかりました here 。
ResNeXt50()関数には、バックエンド、レイヤー、モデル、ユーティリティの4つの引数が必要です。
import keras
from keras_applications.resnext import ResNeXt50
model = ResNeXt50(weights='imagenet',
backend=keras.backend,
layers=keras.layers,
models=keras.models,
utils=keras.utils)
Kerasには複数のフレーバーのResNetがあり、必要なResNetのバージョンを指定する必要があります。 ResNet50をロードします。
使用する
_from keras.applications import ResNet50
_
編集2これは、アプリケーションでdir()
コマンドを使用したときに取得されるリストです
_['DenseNet121', 'DenseNet169', 'DenseNet201', 'InceptionResNetV2', 'InceptionV3', 'MobileNet', 'MobileNetV2', 'NASNetLarge', 'NASNetMobile', 'ResNet50', 'VGG16', 'VGG19', 'Xception', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', 'absolute_import', 'backend', 'densenet', 'division', 'inception_resnet_v2', 'inception_v3', 'keras_applications', 'keras_modules_injection', 'layers', 'mobilenet', 'mobilenet_v2', 'models', 'nasnet', 'print_function', 'resnet50', 'utils', 'vgg16', 'vgg19', 'xception']
_、ここに表示されるモデルはこのようにロードできます。ResNet101のようないくつかのモデルがここにありません。これを修正する方法を考え出せるかどうか確認してみましょう。
Editこれも機能することの証明
Resnetモデルの利用可能なすべてのバージョンを確認するには、 https://keras.io/applications/#resnet にアクセスしてください