from diles.learn import Learner from diles.learn.learners.bayes import NBLearner, FMLearner from diles.learn.learners.cbr import KNNLearner from diles.learn.learners.svm import SVMLearner paramspace = {} for cls in (NBLearner, FMLearner, KNNLearner, SVMLearner): paramspace.update(cls.paramspace) class _CombinedLearner(Learner): """A combined learner. Lets multiple base learners vote. """ paramspace = paramspace def __init__(self, **kwds): pass # TODO (use inspect) def train(self, samples, labels, fwl=None, fwt=0): """See :meth:`diles.learn.Learner.train`.""" # TODO def predict(self, sample): # pylint: disable-msg=W0613 """See :meth:`diles.learn.Learner.predict`. The returned ranking is a probability distribution. """ # TODO