大規模なデータセットを初めて使用しているので、私が問題に読んでいる説明とチュートリアルを外挿するのに問題があります。h5pyを使用してHDF5に大きな4D numpy配列を圧縮します。Killed:9
37019個の画像(それぞれ450x600x3)をnumpyの配列に保存し、それをトレーニング用のファイルに圧縮します。 37019x450x600x3のゼロ配列をインスタンス化し、後で修正するか、450x600x3配列を1つずつ追加する方が良いでしょうか?
今私はh5pyを使用していますが、それは殺し、その結果: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)
はその後、約5分かかります:
Killed: 9
画像の数が少ないようになっているときに、この仕事をします37019ではなく3700となります。3700では、30MBの.h5ファイルが作成されます。
これは、配列がh5dyの1つのデータセットに対して大きすぎることを意味しますか?これを小さな塊、別々のデータセット、または別のものに保存する必要がありますか?あなたは後で簡単にアクセスしたり修正したりするために何をお勧めしますか?
助けてくれてありがとう!