Spracheinbettungen erstellen
Zeit, ein Audio-Array in eine Lautsprecher-Einbettung zu kodieren! Sprecher-Einbettungen haben Infos darüber, wie man generierte Audiodaten an einen bestimmten Sprecher anpassen kann, und sind super wichtig, um Audio ganz genau zu optimieren.
Das vortrainierte Modell „ spkrec-xvect-voxceleb “ (speaker_model) und der Datensatz „VCTK“ (dataset) wurden für dich geladen.
Diese Übung ist Teil des Kurses
Multimodale Modelle mit Hugging Face
Anleitung zur Übung
- Vervollständige die Definition der Funktion „
create_speaker_embedding()“, indem du die Roh-Einbettung aus „waveform“ mit „speaker_model“ berechnest. - Hol das Audio-Array aus dem Datenpunkt mit dem Index „
10“ aus „dataset“. - Berechne eine Sprecher-Einbettung aus dem Audio-Array mit der Funktion „
create_speaker_embedding()“.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
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)