textflint.generation_layer.transformation.pipeline

Apply sequential transformations to input sample. Default generate transformed samples of combination number of contained transformations. ==========================================================

class textflint.generation_layer.transformation.pipeline.Pipeline(transform_objs)[source]

Bases: textflint.generation_layer.transformation.transformation.Transformation, list

Apply sequential transformations to input sample. Default generate transformed samples of combination number of contained transformations.

get_transformations()[source]
Returns

List of transformation string.

class textflint.generation_layer.transformation.pipeline.Transformation(**kwargs)[source]

Bases: abc.ABC

An abstract class for transforming a sequence of text to produce a list of potential adversarial example.

processor = <textflint.common.preprocess.en_processor.EnProcessor object>
transform(sample, n=1, field='x', **kwargs)[source]

Transform data sample to a list of Sample.

Parameters
  • sample (Sample) – Data sample for augmentation.

  • n (int) – Max number of unique augmented output, default is 5.

  • field (str|list) – Indicate which fields to apply transformations.

  • **kwargs (dict) –

    other auxiliary params.

Returns

list of Sample

classmethod sample_num(x, num)[source]

Get ‘num’ samples from x.

Parameters
  • x (list) – list to sample

  • num (int) – sample number

Returns

max ‘num’ unique samples.