Pythonでメモリーエラー

Pythonで重い画像解析や自然言語処理などを行っていると、メモリー不足でエラーが出ることがあります。Pythonコードを見直すか、メモリを増設するかで対処します。

メモリーは有限だった

100万件の文書比較をPython3+BERTで処理していました。1週間くらい動かしていたら、8割くらい完了したところで、コマンドプロントに「Buy new RAM!」というエラーが表示されています。

「新しいメモリを買え!」

分かりやすいエラーで、助かります。メモリ不足ですね。

私はメモリー16GBのノートパソコンを使っています。

16Gを使いきることはないだろうと、限度を気にせずコードを書いていました。

メモリーを増やせるなら増やす

デスクトップ型パソコンや、カスタマイズ可能なノートパソコンであれば、32GBに増設してしまうのが簡単な対処法です。

私のノートパソコンは、メモリー増設で保証外になってしまうので、Pythonコードを見直します。

内部ストレージを使う

Pythonの配列に大量のデータを記録したりすると、メモリー不足が起こります。

その場合は、配列をJSONで書き出し、内部ストレージ(ローカル)に保存して、メモリーの使用量を減らす方法が考えられます。

ストレージに保存していれば、途中で処理が止まってもデータは消えません。途中再開もできるので安心です。

根本的にはスキルアップで対処

メモリー不足が起こる原因は、自分のスキル不足だと思います。とても無駄なメモリーの使い方をしている気がして・・・。

Pythonなどのプログラミングスキルを上げることが、メモリー不足の根本的な解決になると思われます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)