Source code for simpleml.models.classifiers.sklearn.multioutput

'''
Wrapper module around `sklearn.multioutput`
'''

from .base_sklearn_classifier import SklearnClassifier
from simpleml.models.classifiers.external_models import ClassificationExternalModelMixin

from sklearn.multioutput import ClassifierChain, MultiOutputClassifier


__author__ = 'Elisha Yadgaran'


'''
Classifier Chain
'''

[docs]class WrappedSklearnClassifierChain(ClassifierChain, ClassificationExternalModelMixin):
[docs] def get_feature_metadata(self, features, **kwargs): pass
[docs]class SklearnClassifierChain(SklearnClassifier): def _create_external_model(self, **kwargs): return WrappedSklearnClassifierChain(**kwargs)
''' Multi Output Classifier '''
[docs]class WrappedSklearnMultiOutputClassifier(MultiOutputClassifier, ClassificationExternalModelMixin):
[docs] def get_feature_metadata(self, features, **kwargs): pass
[docs]class SklearnMultiOutputClassifier(SklearnClassifier): def _create_external_model(self, **kwargs): return WrappedSklearnMultiOutputClassifier(**kwargs)