Source code for simpleml.models.classifiers.external_models

import logging

from simpleml.models.external_models import ExternalModelMixin

[docs]__author__ = "Elisha Yadgaran"
[docs]LOGGER = logging.getLogger(__name__)
[docs]class ClassificationExternalModelMixin(ExternalModelMixin): """ Wrapper class for a pickleable model with expected methods Expected to be used as Mixin Class with default methods and ovewritten by the model class if methods exist Extended from base class to add classification methods ex: from some_model_library import ActualModelClass class WrappedActualModelClass(ActualModelClass, ClassificationExternalModelMixin): pass class some_model_libraryActualModelClass(Model, [optional mixins]): def _create_external_model(self, **kwargs): return WrappedActualModelClass(**kwargs) """
[docs] def predict_proba(self, *args, **kwargs): """ By default fall back to predict method """ LOGGER.warning("No predict_proba method defined, using predict") return self.predict(*args, **kwargs)