Preprocesar conjuntos de datos de audio
Estás mejorando tu aplicación de agricultura de precisión al permitir que los agricultores controlen su maquinaria con comandos de voz. El sistema debe reconocer palabras clave en comandos como "Enciende el sistema de riego por aspersión".
Aprovecharás un conjunto de datos de detección de palabras clave con clips de audio de palabras clave como "on". ¡Preprocesa los archivos de audio para poder utilizarlos con un modelo Transformer preentrenado!
Se han precargado algunos datos:
dataset
contiene un conjunto de datos de entrenamiento de archivos de audio. Ya contiene la divisióntrain
, por lo que no necesitas especificartrain
cuando utilicesdataset
.AutoFeatureExtractor
se ha importado detransformers
.model
es igual afacebook/wav2vec2-base
.max_duration
se define como 1 segundo.
Este ejercicio forma parte del curso
Entrenamiento eficiente de modelos de IA con PyTorch
Instrucciones del ejercicio
- Carga un
feature_extractor
preentrenado con la claseAutoFeatureExtractor
. - Configura el
sampling_rate
utilizando los índices delfeature_extractor
. - Ajusta el
max_length
delaudio_arrays
utilizandomax_duration
.
Ejercicio interactivo práctico
Prueba este ejercicio completando el código de muestra.
# Load a pre-trained feature extractor
feature_extractor = ____.____(model)
def preprocess_function(examples):
audio_arrays = [x["array"] for x in examples["audio"]]
inputs = feature_extractor(
audio_arrays,
# Set the sampling rate
sampling_rate=____.____,
# Set the max length
max_length=int(feature_extractor.sampling_rate * max_duration),
truncation=True)
return inputs
encoded_dataset = dataset.map(preprocess_function, remove_columns=["audio", "file"], batched=True)