Ich bin neu in großen Datasets und Probleme bei der Extrapolation der Erklärungen und Tutorials, die ich zu meinem Problem lese.Komprimieren von großen 4D numpy Arrays zu HDF5 mit h5py Getötet: 9
Ich möchte 37019 Bilder (je 450x600x3) in einem numply-Array speichern und dieses in eine Datei für das Training komprimieren. Ist es besser, ein 37019x450x600x3-Array von Nullen zu instanziieren und später zu modifizieren oder 450x600x3-Arrays einzeln anzufügen?
Im Moment bin ich mit h5py aber es ergibt sich ein getötet: 9
import numpy as np
import h5py
imgarray = np.zeros((37019,450, 600, 3))
with h5py.File('deleteme.h5', 'a') as FOB:
FOB.create_dataset("imgarray",data=imgarray,compression="gzip",compression_opts=9)
dauert ca. 5 Minuten, dann:
Killed: 9
Dies funktioniert, wenn die Anzahl der Bilder, die kleiner solcher ist wie 3700 statt 37019. 3700 ergibt eine .h5-Datei, die 30 MB ist.
Bedeutet dies, dass mein Array für einen Datensatz in h5dy zu groß ist? Muss ich das in kleineren Blöcken, separaten Datensätzen oder etwas anderem speichern? Welche Methode empfehlen Sie für einen einfachen Zugriff und eine spätere Modifikation?
danke für die Hilfe!