0

我对 Unity 有点陌生,所以我可能做错了什么。但我确实从头到尾遵循了安装指南,可以在 mlagents GitHub 安装指南中找到。我的猜测是我在部分 python 包安装中做错了,尽管我也遵循了这一点。但是,当我尝试mlagents-learn config/ppo/3DBall.yaml --run-id=first3DBallRun在 cmd 中运行 mlagents-learn 命令时,出现以下错误。

Traceback (most recent call last):
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\pywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\pywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "c:\users\emiln\appdata\local\programs\python\python37\lib\imp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "c:\users\emiln\appdata\local\programs\python\python37\lib\imp.py", line 342, in load_dynamic
return _load(spec)
ImportError: DLL load failed: Cannot find the assigned module.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Users\EmilN\AppData\Local\Programs\Python\Python37\Scripts\mlagents-learn-script.py", line 11, in <module>
load_entry_point('mlagents', 'console_scripts', 'mlagents-learn')()
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\pkg_resources\__init__.py", line 489, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\pkg_resources\__init__.py", line 2852, in load_entry_point
return ep.load()
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\pkg_resources\__init__.py", line 2443, in load
return self.resolve()
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\pkg_resources\__init__.py", line 2449, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "d:\unity stuff\ml-agents-master\ml-agents-master\ml-agents\mlagents\trainers\learn.py", line 13, in <module>
from mlagents import tf_utils
File "d:\unity stuff\ml-agents-master\ml-agents-master\ml-agents\mlagents\tf_utils\__init__.py", line 1, in <module>
from mlagents.tf_utils.tf import tf as tf # noqa
File "d:\unity stuff\ml-agents-master\ml-agents-master\ml-agents\mlagents\tf_utils\tf.py", line 3, in <module>
import tensorflow as tf # noqa I201
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow\__init__.py", line 101, in <module>
from tensorflow_core import *
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\__init__.py", line 40, in <module>
from tensorflow.python.tools import module_util as _module_util
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow\__init__.py", line 50, in __getattr__
module = self._load()
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow\__init__.py", line 44, in _load
module = _importlib.import_module(self.__name__)
File "c:\users\emiln\appdata\local\programs\python\python37\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\__init__.py", line 49, in <module>
from tensorflow.python import pywrap_tensorflow
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\pywrap_tensorflow.py", line 74, in <module>
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\pywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\pywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "c:\users\emiln\appdata\local\programs\python\python37\lib\site-packages\tensorflow_core\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "c:\users\emiln\appdata\local\programs\python\python37\lib\imp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "c:\users\emiln\appdata\local\programs\python\python37\lib\imp.py", line 342, in load_dynamic
return _load(spec)
ImportError: DLL load failed: Cannot find the assigned module.

鉴于错误消息,我假设问题出在 Python 上。还有快速笔记,我不在虚拟环境中,不确定这是否重要。我只是想为一个论文项目做一些简单的测试。还有一种方法可以从培训课程中提取图表吗?

4

1 回答 1

0

您确定已安装所有依赖项吗?我会尝试使用 anaconda(或其他虚拟环境)安装mlagents并检查是否遇到相同的错误。

我通过 Immersive Limit 的 Unity Hummingbird 教程学习了 Unity ML-agents 的基础知识,https: //learn.unity.com/course/ml-agents-hummingbirds ,其中他还以一种很好的方式解释了安装选项。我真的可以推荐那门课程。

在同一课程中,他们介绍了如何使用 Tensorboard 可视化您的训练。或者在文档中阅读它。

于 2020-08-26T12:23:13.950 回答