Création d'intégrations vocales
Il est temps d'encoder un tableau audio dans un encodage de haut-parleur. Les intégrations de locuteurs contiennent des informations sur la manière de personnaliser l'audio généré pour un locuteur donné et sont essentielles pour générer un son précis.
Le modèle pré-entraîné spkrec-xvect-voxceleb
(speaker_model
) et l'ensemble de données VCTK (dataset
) ont été chargés pour vous.
Cet exercice fait partie du cours
Modèles multimodaux avec Hugging Face
Instructions
- Compléter la définition de la fonction «
create_speaker_embedding()
» en calculant l'encodage brut à partir de l'waveform
e à l'aide de la fonction «speaker_model
». - Extrayez le tableau audio du point de données à l'index
10
de l'dataset
. - Calculez l'intégration d'un haut-parleur à partir du tableau audio à l'aide de la fonction
create_speaker_embedding()
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
def create_speaker_embedding(waveform):
with torch.no_grad():
# Calculate the raw embedding from the speaker_model
speaker_embeddings = ____.____(torch.tensor(____))
speaker_embeddings = torch.nn.functional.normalize(speaker_embeddings, dim=2)
speaker_embeddings = speaker_embeddings.squeeze().cpu().numpy()
return speaker_embeddings
# Extract the audio array from the dataset
audio_array = dataset[10]["____"]["____"]
# Calculate the speaker_embedding from the datapoint
speaker_embedding = ____(____)
print(speaker_embedding.shape)