Implement Mixup as a batch transform in PySpeech
Implement Mixup as a batch transform in PySpeech

Summary:
This diff implements the Mixup data augmentation in PySpeech.
It is implemented as `MixupBatchTransform`, which acts on batches of data instead of single instances.
Such a batch transform should be called by the collater, after it collates samples into a batch and before it converts the batch from numpy arrays to PyTorch tensors.
See `TALNetTask` for an example of how to use it.

Sometimes we may want to apply SpecAugment after Mixup, when data instances have already been collated into batches.
The class `Batchify` is a wrapper that turns an instance transform into a batch transform, by applying the instance transform to every instance in a batch.

Reviewed By: nayansinghal

Differential Revision: D26228942

fbshipit-source-id: b5784d8acab840d6ae6fa636d01cd7c68955d606

pytorch/fairseq,pytorch/fairseq,pytorch/fairseq