def __init__(self, feature_extractor: nn.Module, projection: nn.Module):
        """
        :param feature_extractor: a pytorch module that given the input
            examples extracts the hidden features
        :param projection: a pytorch module that takes as input the output
            of the feature extractor
        """
        super().__init__()
        self.ncm = NCMClassifier(normalize=False)
        self.feature_extractor = feature_extractor
        self.train_classifier = projection
        self.eval_classifier = self.ncm

        :param feature_extractor: a pytorch module that given the input
            examples extracts the hidden features
        :param projection: a pytorch module that takes as input the output
            of the feature extractor
        
avalanche/models/scr_model.py