From a8f96b3744fa806cfa8bafa679a17e8e25170132 Mon Sep 17 00:00:00 2001 From: Steven Liu <59462357+stevhliu@users.noreply.github.com> Date: Wed, 24 Nov 2021 07:35:52 -0800 Subject: [PATCH] Add docs for audio processing (#3222) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ✨ add docs for audio processing * add new doc to toctree * minor fixes * add feedback from review * improve gif * add feedback from review --- docs/source/audio_process.rst | 125 ++++++++++++++++++++++++++++++++++ docs/source/imgs/resample.gif | Bin 0 -> 59459 bytes docs/source/index.rst | 1 + docs/source/use_dataset.rst | 2 +- 4 files changed, 127 insertions(+), 1 deletion(-) create mode 100644 docs/source/audio_process.rst create mode 100644 docs/source/imgs/resample.gif diff --git a/docs/source/audio_process.rst b/docs/source/audio_process.rst new file mode 100644 index 00000000000..74f7bbe70dd --- /dev/null +++ b/docs/source/audio_process.rst @@ -0,0 +1,125 @@ +Process audio data +================== + +🤗 Datasets supports an :class:`datasets.Audio` feature, enabling users to load and process raw audio files for training. This guide will show you how to: + +* Load your own custom audio dataset. +* Resample audio files. +* Use :func:`datasets.Dataset.map` with audio files. + +Installation +------------ + +The :class:`datasets.Audio` feature is an experimental feature and should be installed as an extra dependency in 🤗 Datasets. Install the :class:`datasets.Audio` feature with pip: + +.. code:: + + >>> pip install datasets[audio] + +Users should also install `torchaudio `_ and `librosa `_, two common libraries used by 🤗 Datasets for handling audio data. + +.. code:: + + >>> pip install librosa + >>> pip install torchaudio + +.. important:: + + torchaudio's ``sox_io`` `backend `_ supports decoding ``mp3`` files. Unfortunately, the ``sox_io`` backend is only available on Linux/macOS, and is not supported by Windows. + +Then you can load an audio dataset the same way you would load a text dataset. For example, load the `Common Voice `_ dataset with the Turkish configuration: + +.. code-block:: + + >>> from datasets import load_dataset, load_metric, Audio + >>> common_voice = load_dataset("common_voice", "tr", split="train") + +Audio datasets +-------------- + +Audio datasets commonly have an ``audio`` and ``path`` or ``file`` column. + +``audio`` is the actual audio file that is loaded and resampled on-the-fly upon calling it. + +.. code:: + + >>> common_voice[0]["audio"] + {'array': array([ 0.0000000e+00, 0.0000000e+00, 0.0000000e+00, ..., + -8.8930130e-05, -3.8027763e-05, -2.9146671e-05], dtype=float32), + 'path': '/root/.cache/huggingface/datasets/downloads/extracted/05be0c29807a73c9b099873d2f5975dae6d05e9f7d577458a2466ecb9a2b0c6b/cv-corpus-6.1-2020-12-11/tr/clips/common_voice_tr_21921195.mp3', + 'sampling_rate': 48000} + +When you access an audio file, it is automatically decoded and resampled. Generally, you should query an audio file like: ``common_voice[0]["audio"]``. If you query an audio file with ``common_voice["audio"][0]`` instead, **all** the audio files in your dataset will be decoded and resampled. This process can take a long time if you have a large dataset. + +``path`` or ``file`` is an absolute path to an audio file. + +.. code:: + + >>> common_voice[0]["path"] + /root/.cache/huggingface/datasets/downloads/extracted/05be0c29807a73c9b099873d2f5975dae6d05e9f7d577458a2466ecb9a2b0c6b/cv-corpus-6.1-2020-12-11/tr/clips/common_voice_tr_21921195.mp3 + +The ``path`` is useful if you want to load your own audio dataset. In this case, provide a column of audio file paths to :meth:`datasets.Dataset.cast_column`: + +.. code:: + + >>> my_audio_dataset = my_audio_dataset.cast_column("paths_to_my_audio_files", Audio()) + +Resample +-------- + +Some models expect the audio data to have a certain sampling rate due to how the model was pretrained. For example, the `XLSR-Wav2Vec2 `_ model expects the input to have a sampling rate of 16kHz, but an audio file from the Common Voice dataset has a sampling rate of 48kHz. You can use :meth:`datasets.Dataset.cast_column` to downsample the sampling rate to 16kHz: + +.. code:: + + >>> common_voice = common_voice.cast_column("audio", Audio(sampling_rate=16_000)) + +The next time you load the audio file, the :class:`datasets.Audio` feature will load and resample it to 16kHz: + + >>> common_voice_train[0]["audio"] + {'array': array([ 0.0000000e+00, 0.0000000e+00, 0.0000000e+00, ..., + -7.4556941e-05, -1.4621433e-05, -5.7861507e-05], dtype=float32), + 'path': '/root/.cache/huggingface/datasets/downloads/extracted/05be0c29807a73c9b099873d2f5975dae6d05e9f7d577458a2466ecb9a2b0c6b/cv-corpus-6.1-2020-12-11/tr/clips/common_voice_tr_21921195.mp3', + 'sampling_rate': 16000} + +.. image:: /imgs/resample.gif + :align: center + +``Map`` +------- + +Just like text datasets, you can apply a preprocessing function over an entire dataset with :func:`datasets.Dataset.map`, which is useful for preprocessing all of your audio data at once. Start with a `speech recognition model `_ of your choice, and load a ``processor`` object that contains: + +1. A feature extractor to convert the speech signal to the model's input format. Every speech recognition model on the 🤗 `Hub `_ contains a predefined feature extractor that can be easily loaded with ``AutoFeatureExtractor.from_pretrained(...)``. + +2. A tokenizer to convert the model's output format to text. Fine-tuned speech recognition models, such as `facebook/wav2vec2-base-960h `_, contain a predefined tokenizer that can be easily loaded with ``AutoTokenizer.from_pretrained(...)``. + + For pretrained speech recognition models, such as `facebook/wav2vec2-large-xlsr-53 `_, a tokenizer needs to be created from the target text as explained `here `_. The following example demonstrates how to load a feature extractor, tokenizer and processor for a pretrained speech recognition model: + +.. code-block:: + + >>> from transformers import AutoTokenizer, AutoFeatureExtractor, Wav2Vec2Processor + >>> model_checkpoint = "facebook/wav2vec2-large-xlsr-53" + >>> # after defining a vocab.json file you can instantiate a tokenizer object: + >>> tokenizer = AutoTokenizer("./vocab.json", unk_token="[UNK]", pad_token="[PAD]", word_delimiter_token="|") + >>> feature_extractor = AutoFeatureExtractor.from_pretrained(model_checkpoint) + >>> processor = Wav2Vec2Processor.from_pretrained(feature_extractor=feature_extractor, tokenizer=tokenizer) + +For fine-tuned speech recognition models, you can simply load a predefined ``processor`` object with: + +.. code-block:: + + >>> from transformers import Wav2Vec2Processor + >>> processor = Wav2Vec2Processor.from_pretrained("facebook/wav2vec2-base-960h") + +Make sure to include the ``audio`` key in your preprocessing function when you call :func:`datasets.Dataset.map` so that you are actually resampling the audio data: + +.. code-block:: + + >>> def prepare_dataset(batch): + ... audio = batch["audio"] + ... batch["input_values"] = processor(audio["array"], sampling_rate=audio["sampling_rate"]).input_values[0] + ... batch["input_length"] = len(batch["input_values"]) + ... with processor.as_target_processor(): + ... batch["labels"] = processor(batch["sentence"]).input_ids + ... return batch + >>> common_voice_train = common_voice_train.map(prepare_dataset, remove_columns=common_voice_train.column_names) \ No newline at end of file diff --git a/docs/source/imgs/resample.gif b/docs/source/imgs/resample.gif new file mode 100644 index 0000000000000000000000000000000000000000..c5ad1d99426ccd1f96d71c00816ad2ad93b8c471 GIT binary patch literal 59459 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

V7rx(lV2gHCku8jIlwbbhqsNj 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%0DANX0= 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 literal 0 HcmV?d00001 diff --git a/docs/source/index.rst b/docs/source/index.rst index 07983f89404..e7f1c866773 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -71,6 +71,7 @@ Find your dataset today on the `Hugging Face Hub