ยป
Keras API reference /
Keras Applications /
ResNet and ResNetV2

`ResNet50`

function```
tf.keras.applications.ResNet50(
include_top=True,
weights="imagenet",
input_tensor=None,
input_shape=None,
pooling=None,
classes=1000,
**kwargs
)
```

Instantiates the ResNet50 architecture.

**Reference**

- Deep Residual Learning for Image Recognition (CVPR 2015)

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 ResNet, call `tf.keras.applications.resnet.preprocess_input`

on your
inputs before passing them to the model.

**Arguments**

**include_top**: whether to include the fully-connected layer at the top of the network.**weights**: one of`None`

(random initialization), 'imagenet' (pre-training on ImageNet), or the path to the weights file to be loaded.**input_tensor**: optional Keras tensor (i.e. output of`layers.Input()`

) to use as image input for the model.**input_shape**: optional shape tuple, only to be specified if`include_top`

is False (otherwise the input shape has to be`(224, 224, 3)`

(with`'channels_last'`

data format) or`(3, 224, 224)`

(with`'channels_first'`

data format). It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g.`(200, 200, 3)`

would be one valid value.**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 block.`avg`

means that global average pooling will be applied to the output of the last convolutional block, 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.

`ResNet101`

function```
tf.keras.applications.ResNet101(
include_top=True,
weights="imagenet",
input_tensor=None,
input_shape=None,
pooling=None,
classes=1000,
**kwargs
)
```

Instantiates the ResNet101 architecture.

**Reference**

- Deep Residual Learning for Image Recognition (CVPR 2015)

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 ResNet, call `tf.keras.applications.resnet.preprocess_input`

on your
inputs before passing them to the model.

**Arguments**

**include_top**: whether to include the fully-connected layer at the top of the network.**weights**: one of`None`

(random initialization), 'imagenet' (pre-training on ImageNet), or the path to the weights file to be loaded.**input_tensor**: optional Keras tensor (i.e. output of`layers.Input()`

) to use as image input for the model.**input_shape**: optional shape tuple, only to be specified if`include_top`

is False (otherwise the input shape has to be`(224, 224, 3)`

(with`'channels_last'`

data format) or`(3, 224, 224)`

(with`'channels_first'`

data format). It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g.`(200, 200, 3)`

would be one valid value.**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 block.`avg`

means that global average pooling will be applied to the output of the last convolutional block, 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.

`ResNet152`

function```
tf.keras.applications.ResNet152(
include_top=True,
weights="imagenet",
input_tensor=None,
input_shape=None,
pooling=None,
classes=1000,
**kwargs
)
```

Instantiates the ResNet152 architecture.

**Reference**

- Deep Residual Learning for Image Recognition (CVPR 2015)

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 ResNet, call `tf.keras.applications.resnet.preprocess_input`

on your
inputs before passing them to the model.

**Arguments**

**include_top**: whether to include the fully-connected layer at the top of the network.**weights**: one of`None`

(random initialization), 'imagenet' (pre-training on ImageNet), or the path to the weights file to be loaded.**input_tensor**: optional Keras tensor (i.e. output of`layers.Input()`

) to use as image input for the model.**input_shape**: optional shape tuple, only to be specified if`include_top`

is False (otherwise the input shape has to be`(224, 224, 3)`

(with`'channels_last'`

data format) or`(3, 224, 224)`

(with`'channels_first'`

data format). It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g.`(200, 200, 3)`

would be one valid value.**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 block.`avg`

means that global average pooling will be applied to the output of the last convolutional block, 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.

`ResNet50V2`

function```
tf.keras.applications.ResNet50V2(
include_top=True,
weights="imagenet",
input_tensor=None,
input_shape=None,
pooling=None,
classes=1000,
classifier_activation="softmax",
)
```

Instantiates the ResNet50V2 architecture.

**Reference**

- [Identity Mappings in Deep Residual Networks] (https://arxiv.org/abs/1603.05027) (CVPR 2016)

`~/.keras/keras.json`

.

Note: each Keras Application expects a specific kind of input preprocessing.
For ResNetV2, call `tf.keras.applications.resnet_v2.preprocess_input`

on your
inputs before passing them to the model.

**Arguments**

**include_top**: whether to include the fully-connected layer at the top of the network.**weights**: one of`None`

(random initialization), 'imagenet' (pre-training on ImageNet), or the path to the weights file to be loaded.**input_tensor**: optional Keras tensor (i.e. output of`layers.Input()`

) to use as image input for the model.**input_shape**: optional shape tuple, only to be specified if`include_top`

is False (otherwise the input shape has to be`(224, 224, 3)`

(with`'channels_last'`

data format) or`(3, 224, 224)`

(with`'channels_first'`

data format). It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g.`(200, 200, 3)`

would be one valid value.**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 block.`avg`

means that global average pooling will be applied to the output of the last convolutional block, 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.**classifier_activation**: A`str`

or callable. The activation function to use on the "top" layer. Ignored unless`include_top=True`

. Set`classifier_activation=None`

to return the logits of the "top" layer.

**Returns**

A `keras.Model`

instance.

`ResNet101V2`

function```
tf.keras.applications.ResNet101V2(
include_top=True,
weights="imagenet",
input_tensor=None,
input_shape=None,
pooling=None,
classes=1000,
classifier_activation="softmax",
)
```

Instantiates the ResNet101V2 architecture.

**Reference**

- [Identity Mappings in Deep Residual Networks] (https://arxiv.org/abs/1603.05027) (CVPR 2016)

`~/.keras/keras.json`

.

Note: each Keras Application expects a specific kind of input preprocessing.
For ResNetV2, call `tf.keras.applications.resnet_v2.preprocess_input`

on your
inputs before passing them to the model.

**Arguments**

**include_top**: whether to include the fully-connected layer at the top of the network.**weights**: one of`None`

(random initialization), 'imagenet' (pre-training on ImageNet), or the path to the weights file to be loaded.**input_tensor**: optional Keras tensor (i.e. output of`layers.Input()`

) to use as image input for the model.**input_shape**: optional shape tuple, only to be specified if`include_top`

is False (otherwise the input shape has to be`(224, 224, 3)`

(with`'channels_last'`

data format) or`(3, 224, 224)`

(with`'channels_first'`

data format). It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g.`(200, 200, 3)`

would be one valid value.**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 block.`avg`

means that global average pooling will be applied to the output of the last convolutional block, 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.**classifier_activation**: A`str`

or callable. The activation function to use on the "top" layer. Ignored unless`include_top=True`

. Set`classifier_activation=None`

to return the logits of the "top" layer.

**Returns**

A `keras.Model`

instance.

`ResNet152V2`

function```
tf.keras.applications.ResNet152V2(
include_top=True,
weights="imagenet",
input_tensor=None,
input_shape=None,
pooling=None,
classes=1000,
classifier_activation="softmax",
)
```

Instantiates the ResNet152V2 architecture.

**Reference**

- [Identity Mappings in Deep Residual Networks] (https://arxiv.org/abs/1603.05027) (CVPR 2016)

`~/.keras/keras.json`

.

Note: each Keras Application expects a specific kind of input preprocessing.
For ResNetV2, call `tf.keras.applications.resnet_v2.preprocess_input`

on your
inputs before passing them to the model.

**Arguments**

**include_top**: whether to include the fully-connected layer at the top of the network.**weights**: one of`None`

(random initialization), 'imagenet' (pre-training on ImageNet), or the path to the weights file to be loaded.**input_tensor**: optional Keras tensor (i.e. output of`layers.Input()`

) to use as image input for the model.**input_shape**: optional shape tuple, only to be specified if`include_top`

is False (otherwise the input shape has to be`(224, 224, 3)`

(with`'channels_last'`

data format) or`(3, 224, 224)`

(with`'channels_first'`

data format). It should have exactly 3 inputs channels, and width and height should be no smaller than 32. E.g.`(200, 200, 3)`

would be one valid value.**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 block.`avg`

means that global average pooling will be applied to the output of the last convolutional block, 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.**classifier_activation**: A`str`

or callable. The activation function to use on the "top" layer. Ignored unless`include_top=True`

. Set`classifier_activation=None`

to return the logits of the "top" layer.

**Returns**

A `keras.Model`

instance.