LoslegenKostenlos loslegen

Trainings- und Validierungsdaten aufteilen

Du wirst Trainings- und Validierungsdatensätze erstellen. Es ist eine gute Idee, einen Validierungsdatensatz zu haben und die Leistung des Modells daran zu checken, um Überanpassung zu vermeiden.

Für diese Übung hast du die folgenden Texte bekommen: en_text (Sätze auf Englisch) und fr_text (Sätze auf Französisch).

Diese Übung ist Teil des Kurses

Maschinelle Übersetzung mit Keras

Kurs anzeigen

Anleitung zur Übung

  • Definiere eine Folge von Indizes mit „ np.arange() “, die bei 0 anfängt und die Größe „ en_text “ hat.
  • Definieren wir „ train_inds “ als die erste „ train_size “-Gruppe von Indizes aus der Indizes-Sequenz.
  • Definiere „ tr_en “ und „ tf_fr “, die die Sätze enthalten, die unter den Indizes „ train_inds “ in den Listen „ en_text “ und „ fr_text “ gefunden wurden.
  • Definiere „ v_en “ und „ v_fr “, die die Sätze enthalten, die unter den Indizes „ valid_inds “ in den Listen „ en_text “ und „ fr_text “ gefunden wurden.

Interaktive Übung

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

train_size, valid_size = 800, 200
# Define a sequence of indices from 0 to size of en_text
inds = np.____(len(____))
np.random.shuffle(inds)
# Define train_inds as first train_size indices
train_inds = inds[:____]
valid_inds = inds[train_size:train_size+valid_size]
# Define tr_en (train EN sentences) and tr_fr (train FR sentences)
tr_en = [en_text[ti] for ti in ____]
tr_fr = [____[____] for ti in ____]
# Define v_en (valid EN sentences) and v_fr (valid FR sentences)
v_en = [en_text[____] for vi in ____]
v_fr = [____[____] for vi in ____]
print('Training (EN):\n', tr_en[:3], '\nTraining (FR):\n', tr_fr[:3])
print('\nValid (EN):\n', v_en[:3], '\nValid (FR):\n', v_fr[:3])
Code bearbeiten und ausführen