Source code for sourced.ml.core.extractors.graphlets
from sourced.ml.core.algorithms.uast_inttypes_to_graphlets import Uast2GraphletBag
from sourced.ml.core.extractors.bags_extractor import BagsExtractor
from sourced.ml.core.extractors.helpers import \
(filter_kwargs, get_names_from_kwargs, register_extractor)
[docs]@register_extractor
class GraphletBagExtractor(BagsExtractor):
OPTS.update(BagsExtractor.OPTS)
def __init__(self, docfreq_threshold=None, **kwargs):
original_kwargs = kwargs
uast2bag_kwargs = filter_kwargs(kwargs, Uast2GraphletBag.__init__)
for k in uast2bag_kwargs:
kwargs.pop(k)
super().__init__(docfreq_threshold, **kwargs)
self._log.debug("__init__ %s", original_kwargs)
uast2bag_kwargs = filter_kwargs(kwargs, Uast2GraphletBag.__init__)
self.uast2bag = Uast2GraphletBag(**uast2bag_kwargs)