nlpaug.augmenter.spectrogram.time_masking

class nlpaug.augmenter.spectrogram.time_masking.TimeMaskingAug(name='TimeMasking_Aug', zone=(0.2, 0.8), coverage=1.0, verbose=0, silence=False, stateless=True)[source]

Bases: nlpaug.augmenter.spectrogram.spectrogram_augmenter.SpectrogramAugmenter

Augmenter that mask spectrogram based on frequency by random values.

Parameters:
  • zone (tuple) – Default value is (0.2, 0.8). Assign a zone for augmentation. By default, no any augmentation will be applied in first 20% and last 20% of whole audio.
  • coverage (float) – Default value is 1 and value should be between 0 and 1. Portion of augmentation. If 1 is assigned, augment operation will be applied to target audio segment. For example, the audio duration is 60 seconds while zone and coverage are (0.2, 0.8) and 0.7 respectively. 42 seconds ((0.8-0.2)*0.7*60) audio will be chosen for augmentation.
  • name (str) – Name of this augmenter
>>> import nlpaug.augmenter.spectogram as nas
>>> aug = nas.TimeMaskingAug()
augment(data, n=1, num_thread=1)
Parameters:
  • data (object/list) – Data for augmentation. It can be list of data (e.g. list of string or numpy) or single element (e.g. string or numpy)
  • n (int) – Default is 1. Number of unique augmented output. Will be force to 1 if input is list of data
  • num_thread (int) – Number of thread for data augmentation. Use this option when you are using CPU and n is larger than 1
Returns:

Augmented data

>>> augmented_data = aug.augment(data)
substitute(data)[source]

From: https://arxiv.org/pdf/1904.08779.pdf, Time masking is applied so that t consecutive time steps [t0, t0 + t) are masked, where t is first chosen from a uniform distribution from 0 to the time mask parameter T, and t0 is chosen from [0, tau - t).