リモートサーバー、機械学習ともに初心者です。強化学習のコードをGoogle Cloud Engine(Ubuntu 10) で一から学習させようとしているのですが、worldmodels.data.sample_policyでサンプルを集めようとすると以下のエラーが起きます。調べましたが、内容の専門性が高すぎて理解できません。問題とできれば解決策を噛み砕いて説明していただけないでしょうか?
(python-project-3.6.12) server_name:~/world-models$ xvfb-run -a -s "-screen 0 1400x900x24 +ext ension RANDR" -- python3 -m worldmodels.data.sample_policy --num_process 8 --policy random Track generation: 1195..1498 -> 303-tiles track Track generation: 1176..1474 -> 298-tiles track Track generation: 1105..1385 -> 280-tiles track Track generation: 1199..1503 -> 304-tiles track Track generation: 1205..1517 -> 312-tiles track Track generation: 1242..1557 -> 315-tiles track Track generation: 1185..1495 -> 310-tiles track Track generation: 1135..1423 -> 288-tiles track libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast Traceback (most recent call last): File "/home/server/.pyenv/versions/3.6.12/lib/python3.6/runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "/home/server/.pyenv/versions/3.6.12/lib/python3.6/runpy.py", line 85, in _run_code exec(code, run_globals) File "/home/kumikonakajima_2021/world-models/worldmodels/data/sample_policy.py", line 209, in <module> range(num_process) File "/home/server/.pyenv/versions/python-project-3.6.12/lib/python3.6/site-packages/pathos/multiproce ssing.py", line 137, in map return _pool.map(star(f), zip(*args)) # chunksize File "/home/server/.pyenv/versions/python-project-3.6.12/lib/python3.6/site-packages/multiprocess/pool .py", line 266, in map return self._map_async(func, iterable, mapstar, chunksize).get() File "/home/server/.pyenv/versions/python-project-3.6.12/lib/python3.6/site-packages/multiprocess/pool .py", line 644, in get raise self._value multiprocess.pool.MaybeEncodingError: Error sending result: '<multiprocess.pool.ExceptionWithTraceback object at 0x7f a5b01f75f8>'. Reason: 'NameError("name 'base' is not defined",)'
元のソースコード(worldmodels.data.sample_policy)には以下の変更を加えました(PicklingErrorを直すため。参照:https://stackoverflow.com/questions/8804830/python-multiprocessing-picklingerror-cant-pickle-type-function)
from multiprocessing import Pool
から
from pathos.multiprocessing import ProcessingPool as Pool
ライブラリ等
requirement.txt
gym pyvirtualdisplay
xvfb python-opengl ffmpeg
pathos
マシーンタイプ
e2-standard-2 (2 vCPUs, 8 GB memory)
CPU platform: AMD Rome
あなたの回答
tips
プレビュー