ProtocolMixin#

class mlquantify.base.ProtocolMixin[source]#

Mixin class for protocol-based quantifiers.

This mixin indicates that the quantifier follows a specific protocol, by setting the estimation_type tag to “sample” and requires_fit to False.

Examples

>>> from mlquantify.base import BaseQuantifier, ProtocolMixin
>>> class MyProtocolQuantifier(ProtocolMixin, BaseQuantifier):
...     def __init__(self, param=None):
...         self.param = param
...     def sample_method(self, X):
...         indexes = np.random.choice(len(X), size=10, replace=False)
...         X_sample = X[indexes]
...         return X_sample
>>> X = np.random.rand(100, 10)
>>> protocol_qtf = MyProtocolQuantifier(param=5)
>>> X_sample = protocol_qtf.sample_method(X)
>>> X_sample.shape
(10, 10)