A classification class builder.
tfm.vision.classification_model.ClassificationModel(
backbone: tf.keras.Model,
num_classes: int,
input_specs: tf.keras.layers.InputSpec = layers.InputSpec(shape=[None, None, None, 3]),
dropout_rate: float = 0.0,
kernel_initializer: str = 'random_uniform',
kernel_regularizer: Optional[tf.keras.regularizers.Regularizer] = None,
bias_regularizer: Optional[tf.keras.regularizers.Regularizer] = None,
add_head_batch_norm: bool = False,
use_sync_bn: bool = False,
norm_momentum: float = 0.99,
norm_epsilon: float = 0.001,
skip_logits_layer: bool = False,
**kwargs
)
Args |
backbone
|
a backbone network.
|
num_classes
|
int number of classes in classification task.
|
input_specs
|
tf.keras.layers.InputSpec specs of the input tensor.
|
dropout_rate
|
float rate for dropout regularization.
|
kernel_initializer
|
kernel initializer for the dense layer.
|
kernel_regularizer
|
tf.keras.regularizers.Regularizer object. Default to
None.
|
bias_regularizer
|
tf.keras.regularizers.Regularizer object. Default to
None.
|
add_head_batch_norm
|
bool whether to add a batch normalization layer
before pool.
|
use_sync_bn
|
bool if True, use synchronized batch normalization.
|
norm_momentum
|
float normalization momentum for the moving average.
|
norm_epsilon
|
float small float added to variance to avoid dividing by
zero.
|
skip_logits_layer
|
bool , whether to skip the prediction layer.
|
**kwargs
|
keyword arguments to be passed.
|
Attributes |
backbone
|
|
checkpoint_items
|
Returns a dictionary of items to be additionally checkpointed.
|
Methods
call
call(
inputs, training=None, mask=None
)
Calls the model on new inputs and returns the outputs as tensors.
In this case call()
just reapplies
all ops in the graph to the new inputs
(e.g. build a new computational graph from the provided inputs).
Args |
inputs
|
Input tensor, or dict/list/tuple of input tensors.
|
training
|
Boolean or boolean scalar tensor, indicating whether to
run the Network in training mode or inference mode.
|
mask
|
A mask or list of masks. A mask can be either a boolean tensor
or None (no mask). For more details, check the guide
here.
|
Returns |
A tensor if there is a single output, or
a list of tensors if there are more than one outputs.
|