-1
64ビットwind10でpython 2.7でanaconda2を使用し、4GのRAMを使用しています。私のコードは次の通りです:Python:配列を生成する際にMemoryErrorが発生する
number_of_documents = 21578
document_max_num_words = 100
num_features = 500
X = np.zeros(shape=(number_of_documents, document_max_num_words, num_features)).astype('float32')
xを生成すると、メモリエラーが発生します。
しかし、64ビットのPythonビルドを使用していますか? –
また、 'numpy.zeros'の呼び出しの結果に' astype'を使用しているので、デフォルトのfloat型の浮動小数点数の配列を作成します。これは 'np.float64'かもしれません。約1578 * 100 * 500 * 8 * 1e-9 == 8.6312ギガバイトのメモリ。その後、コピーを作成する必要がありますので、コピーには約8ギガプラス約4ギグが必要になります。もしあなたが8ギガバイト未満のメモリを持っているならば 'astype'ではなく' np.zeros'に 'dtype'引数を使います。 –
'import sysの結果は何ですか? print(sys.version) '? –