"""
Wrapper module around `sklearn.multiclass`
"""
[docs]__author__ = "Elisha Yadgaran"
from sklearn.multiclass import (
OneVsOneClassifier,
OneVsRestClassifier,
OutputCodeClassifier,
)
from simpleml.models.classifiers.external_models import ClassificationExternalModelMixin
from .base_sklearn_classifier import SklearnClassifier
"""
One Vs Rest Classifier
"""
[docs]class WrappedSklearnOneVsRestClassifier(
OneVsRestClassifier, ClassificationExternalModelMixin
):
pass
[docs]class SklearnOneVsRestClassifier(SklearnClassifier):
[docs] def _create_external_model(self, **kwargs):
return WrappedSklearnOneVsRestClassifier(**kwargs)
"""
One Vs One Classifier
"""
[docs]class WrappedSklearnOneVsOneClassifier(
OneVsOneClassifier, ClassificationExternalModelMixin
):
pass
[docs]class SklearnOneVsOneClassifier(SklearnClassifier):
[docs] def _create_external_model(self, **kwargs):
return WrappedSklearnOneVsOneClassifier(**kwargs)
"""
Output Code Classifier
"""
[docs]class WrappedSklearnOutputCodeClassifier(
OutputCodeClassifier, ClassificationExternalModelMixin
):
pass
[docs]class SklearnOutputCodeClassifier(SklearnClassifier):
[docs] def _create_external_model(self, **kwargs):
return WrappedSklearnOutputCodeClassifier(**kwargs)