Module keras.api.keras.applications.nasnet
Public API for tf.keras.applications.nasnet namespace.
Expand source code
# This file is MACHINE GENERATED! Do not edit.
# Generated by: tensorflow/python/tools/api/generator/create_python_api.py script.
"""Public API for tf.keras.applications.nasnet namespace.
"""
from __future__ import print_function as _print_function
import sys as _sys
from keras.applications.nasnet import NASNetLarge
from keras.applications.nasnet import NASNetMobile
from keras.applications.nasnet import decode_predictions
from keras.applications.nasnet import preprocess_input
del _print_function
from tensorflow.python.util import module_wrapper as _module_wrapper
if not isinstance(_sys.modules[__name__], _module_wrapper.TFModuleWrapper):
_sys.modules[__name__] = _module_wrapper.TFModuleWrapper(
_sys.modules[__name__], "keras.applications.nasnet", public_apis=None, deprecation=True,
has_lite=False)
Functions
def NASNetLarge(input_shape=None, include_top=True, weights='imagenet', input_tensor=None, pooling=None, classes=1000)
-
Instantiates a NASNet model in ImageNet mode.
Reference: - Learning Transferable Architectures for Scalable Image Recognition (CVPR 2018)
Optionally loads weights pre-trained on ImageNet. Note that the data format convention used by the model is the one specified in your Keras config at
~/.keras/keras.json
.Note: each Keras Application expects a specific kind of input preprocessing. For NASNet, call
tf.keras.applications.nasnet.preprocess_input
on your inputs before passing them to the model.Args
input_shape
- Optional shape tuple, only to be specified
if
include_top
is False (otherwise the input shape has to be(331, 331, 3)
for NASNetLarge. It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g.(224, 224, 3)
would be one valid value. include_top
- Whether to include the fully-connected layer at the top of the network.
weights
None
(random initialization) orimagenet
(ImageNet weights) For loadingimagenet
weights,input_shape
should be (331, 331, 3)input_tensor
- Optional Keras tensor (i.e. output of
layers.Input()
) to use as image input for the model. pooling
- Optional pooling mode for feature extraction
when
include_top
isFalse
. -None
means that the output of the model will be the 4D tensor output of the last convolutional layer. -avg
means that global average pooling will be applied to the output of the last convolutional layer, and thus the output of the model will be a 2D tensor. -max
means that global max pooling will be applied. classes
- Optional number of classes to classify images
into, only to be specified if
include_top
is True, and if noweights
argument is specified.
Returns
A Keras model instance.
Raises
ValueError
- in case of invalid argument for
weights
, or invalid input shape. RuntimeError
- If attempting to run this model with a backend that does not support separable convolutions.
Expand source code
@keras_export('keras.applications.nasnet.NASNetLarge', 'keras.applications.NASNetLarge') def NASNetLarge(input_shape=None, include_top=True, weights='imagenet', input_tensor=None, pooling=None, classes=1000): """Instantiates a NASNet model in ImageNet mode. Reference: - [Learning Transferable Architectures for Scalable Image Recognition]( https://arxiv.org/abs/1707.07012) (CVPR 2018) Optionally loads weights pre-trained on ImageNet. Note that the data format convention used by the model is the one specified in your Keras config at `~/.keras/keras.json`. Note: each Keras Application expects a specific kind of input preprocessing. For NASNet, call `tf.keras.applications.nasnet.preprocess_input` on your inputs before passing them to the model. Args: input_shape: Optional shape tuple, only to be specified if `include_top` is False (otherwise the input shape has to be `(331, 331, 3)` for NASNetLarge. It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g. `(224, 224, 3)` would be one valid value. include_top: Whether to include the fully-connected layer at the top of the network. weights: `None` (random initialization) or `imagenet` (ImageNet weights) For loading `imagenet` weights, `input_shape` should be (331, 331, 3) input_tensor: Optional Keras tensor (i.e. output of `layers.Input()`) to use as image input for the model. pooling: Optional pooling mode for feature extraction when `include_top` is `False`. - `None` means that the output of the model will be the 4D tensor output of the last convolutional layer. - `avg` means that global average pooling will be applied to the output of the last convolutional layer, and thus the output of the model will be a 2D tensor. - `max` means that global max pooling will be applied. classes: Optional number of classes to classify images into, only to be specified if `include_top` is True, and if no `weights` argument is specified. Returns: A Keras model instance. Raises: ValueError: in case of invalid argument for `weights`, or invalid input shape. RuntimeError: If attempting to run this model with a backend that does not support separable convolutions. """ return NASNet( input_shape, penultimate_filters=4032, num_blocks=6, stem_block_filters=96, skip_reduction=True, filter_multiplier=2, include_top=include_top, weights=weights, input_tensor=input_tensor, pooling=pooling, classes=classes, default_size=331)
def NASNetMobile(input_shape=None, include_top=True, weights='imagenet', input_tensor=None, pooling=None, classes=1000)
-
Instantiates a Mobile NASNet model in ImageNet mode.
Reference: - Learning Transferable Architectures for Scalable Image Recognition (CVPR 2018)
Optionally loads weights pre-trained on ImageNet. Note that the data format convention used by the model is the one specified in your Keras config at
~/.keras/keras.json
.Note: each Keras Application expects a specific kind of input preprocessing. For NASNet, call
tf.keras.applications.nasnet.preprocess_input
on your inputs before passing them to the model.Args
input_shape
- Optional shape tuple, only to be specified
if
include_top
is False (otherwise the input shape has to be(224, 224, 3)
for NASNetMobile It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g.(224, 224, 3)
would be one valid value. include_top
- Whether to include the fully-connected layer at the top of the network.
weights
None
(random initialization) orimagenet
(ImageNet weights) For loadingimagenet
weights,input_shape
should be (224, 224, 3)input_tensor
- Optional Keras tensor (i.e. output of
layers.Input()
) to use as image input for the model. pooling
- Optional pooling mode for feature extraction
when
include_top
isFalse
. -None
means that the output of the model will be the 4D tensor output of the last convolutional layer. -avg
means that global average pooling will be applied to the output of the last convolutional layer, and thus the output of the model will be a 2D tensor. -max
means that global max pooling will be applied. classes
- Optional number of classes to classify images
into, only to be specified if
include_top
is True, and if noweights
argument is specified.
Returns
A Keras model instance.
Raises
ValueError
- In case of invalid argument for
weights
, or invalid input shape. RuntimeError
- If attempting to run this model with a backend that does not support separable convolutions.
Expand source code
@keras_export('keras.applications.nasnet.NASNetMobile', 'keras.applications.NASNetMobile') def NASNetMobile(input_shape=None, include_top=True, weights='imagenet', input_tensor=None, pooling=None, classes=1000): """Instantiates a Mobile NASNet model in ImageNet mode. Reference: - [Learning Transferable Architectures for Scalable Image Recognition]( https://arxiv.org/abs/1707.07012) (CVPR 2018) Optionally loads weights pre-trained on ImageNet. Note that the data format convention used by the model is the one specified in your Keras config at `~/.keras/keras.json`. Note: each Keras Application expects a specific kind of input preprocessing. For NASNet, call `tf.keras.applications.nasnet.preprocess_input` on your inputs before passing them to the model. Args: input_shape: Optional shape tuple, only to be specified if `include_top` is False (otherwise the input shape has to be `(224, 224, 3)` for NASNetMobile It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g. `(224, 224, 3)` would be one valid value. include_top: Whether to include the fully-connected layer at the top of the network. weights: `None` (random initialization) or `imagenet` (ImageNet weights) For loading `imagenet` weights, `input_shape` should be (224, 224, 3) input_tensor: Optional Keras tensor (i.e. output of `layers.Input()`) to use as image input for the model. pooling: Optional pooling mode for feature extraction when `include_top` is `False`. - `None` means that the output of the model will be the 4D tensor output of the last convolutional layer. - `avg` means that global average pooling will be applied to the output of the last convolutional layer, and thus the output of the model will be a 2D tensor. - `max` means that global max pooling will be applied. classes: Optional number of classes to classify images into, only to be specified if `include_top` is True, and if no `weights` argument is specified. Returns: A Keras model instance. Raises: ValueError: In case of invalid argument for `weights`, or invalid input shape. RuntimeError: If attempting to run this model with a backend that does not support separable convolutions. """ return NASNet( input_shape, penultimate_filters=1056, num_blocks=4, stem_block_filters=32, skip_reduction=False, filter_multiplier=2, include_top=include_top, weights=weights, input_tensor=input_tensor, pooling=pooling, classes=classes, default_size=224)
def decode_predictions(preds, top=5)
-
Decodes the prediction of an ImageNet model.
Args
preds
- Numpy array encoding a batch of predictions.
top
- Integer, how many top-guesses to return. Defaults to 5.
Returns
A list of lists of top class prediction tuples
(class_name, class_description, score)
. One list of tuples per sample in batch input.Raises
ValueError
- In case of invalid shape of the
pred
array (must be 2D).
Expand source code
@keras_export('keras.applications.nasnet.decode_predictions') def decode_predictions(preds, top=5): return imagenet_utils.decode_predictions(preds, top=top)
def preprocess_input(x, data_format=None)
-
Preprocesses a tensor or Numpy array encoding a batch of images.
Usage example with
applications.MobileNet
:i = tf.keras.layers.Input([None, None, 3], dtype = tf.uint8) x = tf.cast(i, tf.float32) x = tf.keras.applications.mobilenet.preprocess_input(x) core = tf.keras.applications.MobileNet() x = core(x) model = tf.keras.Model(inputs=[i], outputs=[x]) image = tf.image.decode_png(tf.io.read_file('file.png')) result = model(image)
Args
x
- A floating point
numpy.array
or atf.Tensor
, 3D or 4D with 3 color channels, with values in the range [0, 255]. The preprocessed data are written over the input data if the data types are compatible. To avoid this behaviour,numpy.copy(x)
can be used. data_format
- Optional data format of the image tensor/array. Defaults to
None, in which case the global setting
tf.keras.backend.image_data_format()
is used (unless you changed it, it defaults to "channels_last").
Returns
Preprocessed
numpy.array
or atf.Tensor
with typefloat32
.The inputs pixel values are scaled between -1 and 1, sample-wise.
Raises
ValueError
- In case of unknown
data_format
argument.
Expand source code
@keras_export('keras.applications.nasnet.preprocess_input') def preprocess_input(x, data_format=None): return imagenet_utils.preprocess_input(x, data_format=data_format, mode='tf')