安装#
sktime
目前支持:
Python 版本 3.8, 3.9, 3.10, 3.11, 和 3.12。
操作系统 Mac OS X、类Unix操作系统、Windows 8.1 及以上版本
请参阅此处获取 PyPI 上可用的预编译轮的完整列表。
对于安装过程中常见的问题,请参阅 `发布版本 - 故障排除`_ 部分。
有三种不同的安装类型:
安装 sktime 版本
安装最新的 sktime 开发版本
对于 sktime 和第三方扩展的开发者:开发者设置
下面解释了这三种设置中的每一种。
发布版本#
从 PyPI 安装 sktime#
sktime
的发布版本可以通过 PyPI 获取。要通过 pip
安装 sktime
及其核心依赖项,排除软依赖项,请输入:
pip install sktime
要安装包含所有软依赖项的 sktime
,请使用 all_extras
修饰符进行安装:
pip install sktime[all_extras]
sktime
还提供了针对学习任务的特定依赖集,即估计器科学类型。这些是针对各自学习任务精心挑选的最常见软依赖项。可用的依赖集名称与各自模块的名称相同:forecasting
、transformations
、classification
、regression
、clustering
、param_est
、networks
、annotation
、alignment
。
警告
all_extras
和精选的软依赖集包含的一些软依赖在基于 ARM 的 Mac 处理器(如 M1、M2、M1Pro、M1Max 或 M1Ultra)上无法工作。这可能会导致安装过程中出现错误。更多详情可以在下面的 故障排除部分 中找到。
警告
与 all_extras
的软依赖仅在需要所有估计器可用或运行所有测试时才需要。然而,这会减慢下载速度,并增加测试时间。对于大多数用户或开发者场景,下载 all_extras
将不是必要的。如果你不确定,请使用核心依赖安装 sktime
,并根据需要安装软依赖。或者,安装特定于学习任务的依赖集,见上文。
从 conda 安装 sktime#
sktime
发布版本可以通过 conda
从 conda-forge
获取。要通过 conda
安装 sktime
及其核心依赖项,排除软依赖项,请输入:
conda install -c conda-forge sktime
要安装包含所有软依赖项的 sktime
,请使用 all-extras
配方进行安装:
conda install -c conda-forge sktime-all-extras
注意:并非 sktime
的所有软依赖项在 conda-forge
上都可用,sktime-all-extras
仅包含在 conda-forge
上可用的软依赖项。其他软依赖项可以通过 pip
安装,在 conda install pip
之后。
开发版本#
要安装 sktime
的最新开发版本或更早版本,步骤如下:
git
克隆 sktime
仓库,可以是最新版本或之前的版本。editable
参数从 git
克隆中通过 pip
安装包。以下给出了所有步骤的详细说明。为了简洁起见,我们先讨论步骤1和步骤3;步骤2将在最后讨论,因为它将取决于操作系统。
步骤 1 - 克隆 git 仓库#
sktime
仓库应通过图形用户界面或命令行克隆到本地目录。
使用 git
命令行,安装最新版本的命令序列如下:
git clone https://github.com/sktime/sktime.git
cd sktime
git checkout main
git pull
要构建先前版本,请将第3行替换为:
git checkout <VERSION>
这将检出版本 <VERSION>
的代码,其中 <VERSION>
是一个有效的版本字符串。有效的版本字符串是仓库的 git
标签,可以通过运行 git tag
来查看。
你也可以从GitHub 下载 版本的zip存档。
步骤 3 - 从源代码构建 sktime#
要从源代码构建并安装 sktime
,请导航到本地克隆的根目录并输入:
pip install .
或者,。
可以用根目录的完整路径或相对路径替换。
对于每次本地源代码更改时更新包的开发者安装,可以通过以下方式以可编辑模式安装 sktime
:
pip install --editable '.[dev]'
这允许就地编辑和扩展代码。另请参阅 pip 关于可编辑安装的参考。
备注
您需要重新运行:
pip install --editable .
每次编译扩展的源代码发生更改时(例如在切换分支或从上游拉取更改时)。
步骤 2 - 构建二进制包和安装程序#
可以使用以下命令构建 .whl
包和 .exe
安装程序:
pip install build
python -m build --wheel
生成的包位于 dist/
文件夹中。
贡献者或第三方扩展开发者设置#
遵循 Git 工作流程:按照 [Git 和 GitHub 工作流程](https://www.sktime.net/en/stable/developer_guide/git_workflow.html) 中的描述,分叉并克隆仓库。
2. Set up a new virtual environment. Our instructions will go through the commands to set up a conda
environment which is recommended for sktime development.
This relies on an anaconda installation. The process will be similar for venv
or other virtual environment managers.
在 anaconda prompt
终端中:
导航到您的本地 sktime 文件夹,
cd sktime
或类似操作使用支持的 Python 版本创建新环境:
conda create -n sktime-dev python=3.8
(或python=3.11
等)警告
如果你已经有一个名为“sktime-dev”的环境,这是之前尝试的结果,你首先需要移除这个环境。
激活环境:
conda activate sktime-dev
6. Build an editable version of sktime.
In order to install only the dev dependencies, pip install -e .[dev]
If you also want to install soft dependencies, install them individually, after the above,
or instead use: pip install -e .[all_extras,dev]
to install all of them.
备注
如果此步骤导致出现“未找到匹配项”错误,可能是因为您的 shell 处理特殊字符的方式。
可能的解决方案:使用引号:
pip install -e ."[dev]"
如果一切顺利,你应该会看到消息“成功安装了sktime”
一些用户在安装NumPy时遇到了问题,特别是版本1.19.4。
备注
在Windows下的另一个选项是按照 `类Unix操作系统`_ 的说明,使用Windows Subsystem for Linux (WSL)。要安装WSL,请按照 这里 的说明进行操作。
故障排除#
找不到模块#
导致 模块未找到 错误的最常见原因是使用最小依赖项安装了 sktime
,并使用了与环境中未安装的包接口的估计器。要解决此问题,请安装缺失的包,或使用最大依赖项安装 ``sktime``(见上文)。
ImportError#
导入错误通常由虚拟环境链接不当引起。请确保您的环境已激活并链接到您正在使用的任何IDE。如果您使用的是Jupyter Notebook,请按照 这些说明 将您的虚拟环境添加为笔记本的新内核。
在带有ARM处理器的Mac上安装 all_extras
#
如果你使用的是搭载ARM处理器的Mac,在安装 sktime[all_extras]
时可能会遇到错误。这是因为 all_extras
中包含的一些库与基于ARM的处理器不兼容。
解决方法是不要安装 all_extras
中的某些包,并为其他包安装 ARM 兼容的替代品:
- 不要安装以下软件包:
esig
prophet
tsfresh
tslearn
- 将
tensorflow
包替换为以下包: tensorflow-macos
tensorflow-metal
(可选)
- 将
此外,基于ARM的处理器在安装以源代码分发的软件包而不是Python轮子时会遇到问题。为了避免在安装软件包时出现此问题,您可以尝试通过conda安装它,或者使用以前以轮子形式分发的软件包版本。
其他启动资源#
虚拟环境#
两个不错的虚拟环境管理器选项是:
确保将你的新虚拟环境链接到你所使用的任何IDE中的Python内核。你可以在VScode中找到相关操作的说明,链接在 这里。
参考文献#
安装说明改编自 scikit-learn 的高级 安装说明。