Imagenet (ILSVRC-2012-CLS) classification with ResNet V1 101.
ResNet (later renamed ResNet V1) is a family of network architectures for image classification with a variable number of layers, originally published by
- Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun: "Deep Residual Learning for Image Recognition", 2015.
This TF-Hub module uses the TF-Slim implementation of
with 101 layers.
The module contains a trained instance of the network, packaged to do the
that the network was trained on. If you merely want to transform images into
feature vectors, use module
instead, and save the space occupied by the classification layer.
The weights for this module were obtained by training on the ILSVRC-2012-CLS dataset for image classification ("Imagenet") with TF-Slim's "Inception-style" preprocessing.
This module implements the common signature for image classification. It can be used like
module = hub.Module("https://tfhub.dev/google/imagenet/resnet_v1_101/classification/1") height, width = hub.get_expected_image_size(module) images = ... # A batch of images with shape [batch_size, height, width, 3]. logits = module(images) # Logits with shape [batch_size, num_classes].
...or using the signature name
image_classification. The indices into logits
num_classes = 1001 classes of the classification from
the original training (see above).
This module can also be used to compute image feature
using the signature name
For this module, the size of the input image is fixed to
width = 224 x 224 pixels.
images are expected to have color values in the range [0,1],
common image input
In principle, consumers of this module can fine-tune it. However, fine-tuning through a large classification might be prone to overfit.
Fine-tuning requires importing the graph version with tag set
in order to operate batch normalization in training mode.