自动sklearn安装错误
Posted
技术标签:
【中文标题】自动sklearn安装错误【英文标题】:Auto-sklearn installation error 【发布时间】:2017-11-23 10:31:20 【问题描述】:我正在尝试使用 pip install auto-sklearn
安装 auto-sklearn,但它会引发错误:
Command "/usr/bin/python3.5 -u -c "
import setuptools, tokenize;
__file__='/tmp/pip-build-tl8y2tfg/psutil/setup.py';
f=getattr(tokenize, 'open', open)(__file__);
code=f.read().replace('\r\n', '\n');
f.close();
exec(compile(code, __file__, 'exec'))
"install
--record /tmp/pip-7t8rbku0-record/install-record.txt
--single-version-externally-managed --compile"
failed with error code 1 in /tmp/pip-build-tl8y2tfg/psutil/
我的/tmp/
目录中没有以“pip-”开头的任何内容。
我按照manual中的所有步骤完成了所有步骤,但仍然出现此错误。
我也尝试使用来自this question 的命令,但在这两种情况下都出现了相同的错误。
我的操作系统是 Ubuntu 16.04.2。
如何安装 auto-sklearn?
【问题讨论】:
automl.github.io/auto-sklearn/stable/installation.html 我从这里完成了所有步骤。 您可以将您的操作系统添加到问题中吗? 我将此添加到问题中。 你可以用 -v 或 --verbose 或类似的东西运行你的命令来查看更多数据吗? 【参考方案1】:auto-sklearn
安装需要 python 3.5 或更高版本。另外对这里提到的包也有依赖:https://raw.githubusercontent.com/automl/auto-sklearn/master/requirements.txt
根据错误,您似乎在psutil
安装时遇到了问题。
更好的方法是拥有一个 python 3.5+ 环境。然后使用pip install auto-sklearn
。
which python
、which pip
如果您还没有安装 python 3.5 或更高版本:steps to follow
安装正确版本的python后,设置python3.5的虚拟环境。 Follow设置虚拟环境的代码:
python3 -m pip install --user virtualenv
source env/bin/activate
pip install auto-sklearn
更新:
如果您使用 anaconda,以下命令将启动您的虚拟环境:
conda update conda
#更新你当前的conda版本
conda create --name py35 python=3.5
#为 python 3.5 创建一个虚拟环境
source activate py35
#激活环境
在此处再次发布您的查询,以防您不确定步骤。
【讨论】:
【参考方案2】:对于任何提出这个问题的人,我在尝试在 OSX 上安装时遇到了这个问题。作者可能遗漏了她的一些堆栈跟踪。即:
Installing collected packages: pyrfr
Running setup.py install for pyrfr ... error
Complete output from command /Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7 -u -c "import setuptools, tokenize;__file__='/private/var/folders/g5/vdl1tlwd333d5vzfw4qfc86c0000gp/T/pip-install-zy5yrmfh/pyrfr/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /private/var/folders/g5/vdl1tlwd333d5vzfw4qfc86c0000gp/T/pip-record-iuj3muyd/install-record.txt --single-version-externally-managed --compile --user --prefix=:
running install
running build_ext
building 'pyrfr._regression' extension
swigging pyrfr/regression.i to pyrfr/regression_wrap.cpp
swig -python -c++ -modern -features nondynamic -I./include -o pyrfr/regression_wrap.cpp pyrfr/regression.i
unable to execute 'swig': No such file or directory
error: command 'swig' failed with exit status 1
您的安装错误可能是由于没有安装 swig 造成的。
Swig 是一个 C/C++ 代码生成器,python 使用 C 库的接口。
您可以按照此处项目网站上的说明进行安装: http://www.swig.org/Doc4.0/SWIGDocumentation.pdf
基本上,从网站下载最新的 tarball 存档。提取它。 cd 到解压的文件夹并运行:
./configure
make
make install
curl https://raw.githubusercontent.com/automl/auto-sklearn/master/requirements.txt | xargs -n 1 -L 1 pip3 install
而且你应该很好地运行 auto-sklearn。
【讨论】:
【参考方案3】:使用sudo
写入系统库往往会带来麻烦,因为PATH等重要变量在不同的id下运行时会有所不同。相反,请按照 manual 中的建议,在 virtualenv 中安装,以普通用户身份运行。
【讨论】:
以上是关于自动sklearn安装错误的主要内容,如果未能解决你的问题,请参考以下文章