- 投稿日:2020-02-28T23:58:28+09:00
AWS EC2でMemoryErrorとNo space left on deviceで詰まった話
対処
MemoryError →
--no-cache-dir
をつければ通る。
No space left on device → ファイル容量を減らせ!以下余談
MemoryErrorの対処
AWSのEC2でpipからtensorflowを入れようとしたところ。。。
pip install tensorflow ~ 真っ赤なエラー... ~ MemoryError
MemoryErrorで入れることができない。。。
そんな時は--no-cache-dir
を付けてキャッシュを無効化すればいい!ということで再度実行。pip install tensorflow --no-cache-dir ~ やっぱりエラー... ~ ERROR: Could not install packages due to an EnvironmentError: [Errno 28] No space left on deviceエラーが
[Errno 28] No space left on device
に変わった。こいつの原因はなんだ?No space left on deviceの対処
容量を確認してみる
どうやら容量が足りないらしい。そこで
df -h
で確認してみる。ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 475M 0 475M 0% /dev tmpfs 492M 0 492M 0% /dev/shm tmpfs 492M 412K 492M 1% /run tmpfs 492M 0 492M 0% /sys/fs/cgroup /dev/xvda1 8.0G 5.0G 3.1G 63% / tmpfs 99M 0 99M 0% /run/user/1000そんなに圧迫してるんか...?他に原因がないらしいのでとりあえず使用率30%くらいまで減らしてみる。
find . -xdev -type f | cut -d "/" -f 2 | sort | uniq -c | sort -nr
余談:このコマンド叩けば各ファイルの容量がわかる。
とりあえずcloneしたレポジトリと、pipの中身を消して容量を無理やり減らして再実行!したら通りました。めでたしめでたし
- 投稿日:2020-02-28T20:48:41+09:00
'tensorflow' has no attribute 'get_default_graph'との奮闘記
背景
kaggleで話題のmodel を実機で回そうと思ったらこのエラーが出てきて詰まってしまった。
ネットで調べたところ解決策は色々試したので将来また同じとこで詰まりそうな自分用にまとめてきます。
環境
Ubuntu 18.04.4 LTS tensorflow 2.1.0 keras 2.2.4解決策1
keras.something.somethingを
tensorflow.keras.somethingに変える
解決策2
from keras import backendを
from tensorflow.keras import backendに変える
解決策3
from keras import backend as kを
from tensorflow.keras import backend as kに変える
解決策4
tensorflow のversionを下げる
pip install tensorflow==1.4解決策5
keras のversionを上げる
pip uninstall keras pip install keras==2.3.1結果
1-3は私の環境では全然効果がなかった。
4は他のmodule でエラーが出て使えなかったため使えず。
5をやって初めてちゃんと動いた!やったね
参考にさせてもらったサイト様
https://github.com/keras-team/keras/issues/12379
https://stackoverflow.com/questions/51159010/how-do-i-upgrade-keras-from-1-2-0-to-2-0-0