snorkel.map.lambda_mapper

class snorkel.map.lambda_mapper(name=None, pre=None, memoize=False, memoize_key=None)[source]

Bases: object

Decorate a function to define a LambdaMapper object.

Example

>>> @lambda_mapper()
... def concatenate_text(x):
...     x.article = f"{x.title} {x.body}"
...     return x
>>> isinstance(concatenate_text, LambdaMapper)
True
>>> from types import SimpleNamespace
>>> x = SimpleNamespace(title="my title", body="my text")
>>> concatenate_text(x).article
'my title my text'
Parameters
  • name (Optional[str]) – Name of mapper. If None, uses the name of the wrapped function.

  • pre (Optional[List[BaseMapper]]) – Mappers to run before this mapper is executed

  • memoize (bool) – Memoize mapper outputs?

  • memoize_key (Optional[Callable[[Any], Hashable]]) – Hashing function to handle the memoization (default to snorkel.map.core.get_hashable)

memoize[source]

Memoize mapper outputs?

__init__(name=None, pre=None, memoize=False, memoize_key=None)[source]

Initialize self. See help(type(self)) for accurate signature.

Return type

None

Methods

__init__([name, pre, memoize, memoize_key])

Initialize self.

__call__(f)[source]

Wrap a function to create a LambdaMapper.

Parameters

f (Callable[[Any], Optional[Any]]) – Function executing the mapping operation

Returns

New LambdaMapper executing operation in wrapped function

Return type

LambdaMapper