Classifier
- class eyefeatures.deep.models.Classifier(backbone, n_classes, classifier_hidden_layers=(), classifier_activation=ReLU(), learning_rate=0.001, optimizer_class=<class 'torch.optim.adamw.AdamW'>, optimizer_params=None, scheduler_class=None, scheduler_params=None)[source]
Bases:
BaseModelA classification model built on top of the BaseModel, with additional accuracy, precision, recall, and F1-score tracking.
- Parameters:
backbone (ModuleList | Module) – (Union[nn.ModuleList, nn.Module]) The feature extraction backbone model.
n_classes – (int) Number of output classes.
classifier_hidden_layers – (Tuple, optional) Tuple of hidden layer sizes for the classifier. Default is empty.
classifier_activation – (nn.Module, optional) Activation function to use in the classifier. Default is ReLU.
learning_rate – (float, optional) Learning rate for the optimizer. Default is 1e-3.
optimizer_class (Callable) – (Callable, optional) Optimizer class to use. Default is AdamW.
optimizer_params (dict | None) – (dict, optional) Additional parameters for the optimizer. Default is None.
scheduler_class (Callable | None) – (Callable, optional) Scheduler class to use. Default is None.
scheduler_params (dict | None) – (dict, optional) Additional parameters for the scheduler. Default is None.
- Returns:
Output logits after the forward pass through the classifier.