Fractionnement du chargeur de données pytorch en tableaux numpy
En principe, j'aimerais faire le contraire de ce qui a été fait ici https://datascience.stackexchange.com/questions/45916/loading-own-train-data-and-labels-in-dataloader-using-pytorch.
J'ai un chargeur de données Pytorch train_dataloader
avec shape (2000,3)
. Je souhaite stocker les 3 colonnes du chargeur de données dans 3 tableaux numpy distincts. (La première colonne du chargeur de données contient les données, la deuxième colonne contient les étiquettes.)
J'ai réussi à le faire pour le dernier lot du train_dataloader
(voir ci-dessous), mais malheureusement je n'ai pas pu le faire fonctionner pour l'ensemble train_dataloader
.
for X, y, ind in train_dataloader:
pass
train_X = np.asarray(X, dtype=np.float32)
train_y = np.asarray(y, dtype=np.float32)
Toute aide sera la bienvenue!
Solution du problème
Vous pouvez collecter toutes les données :
all_X = []
all_y = []
for X, y, ind in train_dataloader:
all_X.append(X)
all_y.append(y)
train_X = torch.cat(all_X, dim=0).numpy()
train_y = torch.cat(all_y, dim=0).numpy()
Commentaires
Enregistrer un commentaire