LoslegenKostenlos loslegen

Teil 1: Textumkehrmodell – Encoder

Ein einfaches Modell zum Umkehren von Text zu erstellen ist eine super Methode, um die Mechanismen von Encoder-Decoder-Modellen und deren Zusammenhänge zu verstehen. Jetzt wirst du den Encoder-Teil eines Textumkehrmodells umsetzen.

Die Umsetzung des Encoders wurde auf zwei Übungen aufgeteilt. In dieser Übung definierst du die Hilfsfunktion „ words2onehot() “. Die Funktion „ words2onehot() “ sollte eine Liste von Wörtern und ein Wörterbuch „ word2index “ nehmen und die Liste der Wörter in ein Array von One-Hot-Vektoren umwandeln. Das Wörterbuch „ word2index “ ist im Arbeitsbereich verfügbar.

Diese Übung ist Teil des Kurses

Maschinelle Übersetzung mit Keras

Kurs anzeigen

Anleitung zur Übung

  • Wörter mit dem Wörterbuch „ word2index “ in der Funktion „ words2onehot() “ in IDs umwandeln
  • Wandelt Wort-IDs in One-Hot-Vektoren mit der Länge 3 um (mit dem Argument „ num_classes “) und gibt das resultierende Array zurück.
  • Ruf die Funktion „ words2onehot() “ mit den Wörtern „ I “, „ like “ und „ cats “ auf und speicher das Ergebnis in „ onehot “.
  • Druck die Wörter und die dazugehörigen One-Hot-Vektoren mit den Funktionen „ print() “ und „ zip() “. Mit der Funktion „ zip() “ kannst du mehrere Listen gleichzeitig durchlaufen.

Interaktive Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

import numpy as np

def words2onehot(word_list, word2index):
  # Convert words to word IDs
  word_ids = [____[w] for w in ____]
  # Convert word IDs to onehot vectors and return the onehot array
  onehot = ____(____, num_classes=3)
  return ____

words = ["I", "like", "cats"]
# Convert words to onehot vectors using words2onehot
onehot = ____(____, ____)
# Print the result as (, ) tuples
print([(w,ohe.tolist()) for ____,____ in zip(words, ____)])
Code bearbeiten und ausführen