Sequentielles Dataset
Gute Arbeit beim Aufbau der create_sequences()
-Funktion! Es ist Zeit, dies zu nutzen, um einen Trainingsdatensatz für dein Modell zu erstellen.
Wie bei tabellarischen Daten und Bilddaten lassen sich sequentielle Daten am einfachsten per torch-Dataset und -DataLoader an ein Modell übergeben. Um einen sequentiellen Datensatz zu erstellen, rufst du create_sequences()
auf, um die NumPy-Arrays mit Inputs und Zielen zu erhalten und ihre Form zu überprüfen. Als Nächstes übergibst du sie an TensorDataset
, um ein korrektes torch-Dataset zu erstellen und dessen Länge zu überprüfen.
Deine Implementierung von create_sequences()
und ein DataFrame mit den Trainingsdaten namens train_data
stehen zur Verfügung.
Diese Übung ist Teil des Kurses
Deep Learning mit PyTorch für Fortgeschrittene
Anleitung zur Übung
- Rufe
create_sequences()
auf und übergib das Training-DataFrame und eine Sequenzlänge von24*4
. Weise das ErgebnisX_train, y_train
zu. - Definiere
dataset_train
, indem duTensorDataset
aufrufst und zwei Argumente übergibst: die Inputs und die Ziele, die voncreate_sequences()
erstellt wurden, beide von NumPy-Arrays in Float-Tensoren konvertiert.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
import torch
from torch.utils.data import TensorDataset
# Use create_sequences to create inputs and targets
X_train, y_train = ____
print(X_train.shape, y_train.shape)
# Create TensorDataset
dataset_train = ____(
____,
____,
)
print(len(dataset_train))