Skip to content
This repository has been archived by the owner on Nov 3, 2022. It is now read-only.

Commit

Permalink
Scrub legacy support for ‘engine’ Keras submodule. (#23)
Browse files Browse the repository at this point in the history
  • Loading branch information
fchollet authored and taehoonlee committed Jul 28, 2018
1 parent d200119 commit 42f3e52
Show file tree
Hide file tree
Showing 14 changed files with 13 additions and 75 deletions.
11 changes: 2 additions & 9 deletions keras_applications/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,35 +5,30 @@
from __future__ import print_function

_KERAS_BACKEND = None
_KERAS_ENGINE = None
_KERAS_LAYERS = None
_KERAS_MODELS = None
_KERAS_UTILS = None


def set_keras_submodules(backend=None,
engine=None,
layers=None,
models=None,
utils=None):
# TODO: remove `engine` argument after release of Keras 2.2.1.
global _KERAS_BACKEND
global _KERAS_ENGINE
global _KERAS_LAYERS
global _KERAS_MODELS
global _KERAS_UTILS
_KERAS_BACKEND = backend
_KERAS_ENGINE = engine
_KERAS_LAYERS = layers
_KERAS_MODELS = models
_KERAS_UTILS = utils


def get_keras_submodule(name):
if name not in {'backend', 'engine', 'layers', 'models', 'utils'}:
if name not in {'backend', 'layers', 'models', 'utils'}:
raise ImportError(
'Can only retrieve one of "backend", '
'"engine", "layers", "models", or "utils". '
'"layers", "models", or "utils". '
'Requested: %s' % name)
if _KERAS_BACKEND is None:
raise ImportError('You need to first `import keras` '
Expand All @@ -49,8 +44,6 @@ def get_keras_submodule(name):
'```\n')
if name == 'backend':
return _KERAS_BACKEND
elif name == 'engine':
return _KERAS_ENGINE
elif name == 'layers':
return _KERAS_LAYERS
elif name == 'models':
Expand Down
7 changes: 1 addition & 6 deletions keras_applications/densenet.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand Down Expand Up @@ -231,11 +230,7 @@ def DenseNet(blocks,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input

Expand Down
7 changes: 1 addition & 6 deletions keras_applications/inception_resnet_v2.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand Down Expand Up @@ -335,11 +334,7 @@ def InceptionResNetV2(include_top=True,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input

Expand Down
7 changes: 1 addition & 6 deletions keras_applications/inception_v3.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand Down Expand Up @@ -366,11 +365,7 @@ def InceptionV3(include_top=True,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input
# Create model.
Expand Down
7 changes: 1 addition & 6 deletions keras_applications/mobilenet.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand Down Expand Up @@ -282,11 +281,7 @@ def MobileNet(input_shape=None,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input

Expand Down
10 changes: 2 additions & 8 deletions keras_applications/mobilenet_v2.py
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand All @@ -92,11 +91,6 @@
from .imagenet_utils import decode_predictions
from .imagenet_utils import _obtain_input_shape

if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs

# TODO Change path to v1.1
BASE_WEIGHT_PATH = ('https://github.com/JonathanCMitchell/mobilenet_v2_keras/'
'releases/download/v1.1/')
Expand Down Expand Up @@ -218,7 +212,7 @@ def MobileNetV2(input_shape=None,
except ValueError:
try:
is_input_t_tensor = backend.is_keras_tensor(
get_source_inputs(input_tensor))
keras_utils.get_source_inputs(input_tensor))
except ValueError:
raise ValueError('input_tensor: ', input_tensor,
'is not type input_tensor')
Expand Down Expand Up @@ -422,7 +416,7 @@ def MobileNetV2(input_shape=None,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input

Expand Down
7 changes: 1 addition & 6 deletions keras_applications/nasnet.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand Down Expand Up @@ -247,11 +246,7 @@ def NASNet(input_shape=None,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input

Expand Down
7 changes: 1 addition & 6 deletions keras_applications/resnet50.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand Down Expand Up @@ -266,11 +265,7 @@ def ResNet50(include_top=True,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input
# Create model.
Expand Down
7 changes: 1 addition & 6 deletions keras_applications/vgg16.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand Down Expand Up @@ -191,11 +190,7 @@ def VGG16(include_top=True,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input
# Create model.
Expand Down
7 changes: 1 addition & 6 deletions keras_applications/vgg19.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand Down Expand Up @@ -203,11 +202,7 @@ def VGG19(include_top=True,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input
# Create model.
Expand Down
7 changes: 1 addition & 6 deletions keras_applications/xception.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@
from . import get_keras_submodule

backend = get_keras_submodule('backend')
engine = get_keras_submodule('engine')
layers = get_keras_submodule('layers')
models = get_keras_submodule('models')
keras_utils = get_keras_submodule('utils')
Expand Down Expand Up @@ -295,11 +294,7 @@ def Xception(include_top=True,
# Ensure that the model takes into account
# any potential predecessors of `input_tensor`.
if input_tensor is not None:
if hasattr(keras_utils, 'get_source_inputs'):
get_source_inputs = keras_utils.get_source_inputs
else:
get_source_inputs = engine.get_source_inputs
inputs = get_source_inputs(input_tensor)
inputs = keras_utils.get_source_inputs(input_tensor)
else:
inputs = img_input
# Create model.
Expand Down
1 change: 0 additions & 1 deletion tests/applications_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
import keras_applications
keras_applications.set_keras_submodules(
backend=keras.backend,
engine=keras.engine,
layers=keras.layers,
models=keras.models,
utils=keras.utils)
Expand Down
1 change: 0 additions & 1 deletion tests/imagenet_utils_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
import keras_applications
keras_applications.set_keras_submodules(
backend=keras.backend,
engine=keras.engine,
layers=keras.layers,
models=keras.models,
utils=keras.utils)
Expand Down
2 changes: 0 additions & 2 deletions tests/integration_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ def test_that_internal_imports_are_not_overriden():
import tensorflow as tf
keras_applications.set_keras_submodules(
backend=tf.keras.backend,
engine=tf.keras.engine,
layers=tf.keras.layers,
models=tf.keras.models,
utils=tf.keras.utils)
Expand All @@ -36,7 +35,6 @@ def test_that_internal_imports_are_not_overriden():

keras_applications.set_keras_submodules(
backend=tf.keras.backend,
engine=tf.keras.engine,
layers=tf.keras.layers,
models=tf.keras.models,
utils=tf.keras.utils)
Expand Down

0 comments on commit 42f3e52

Please sign in to comment.