安装#

pytorch-forecasting 目前支持:

  • Python 版本 3.8、3.9、3.10、3.11 和 3.12。

  • 操作系统:Linux、macOS 和 Windows

安装 pytorch-forecasting#

pytorch-forecasting 是一个建立在流行的深度学习框架 pytorch 之上的库,并且大量使用了 Pytorch Lightning 库 lightning 以便于训练和多 GPU 使用。

你需要安装pytorch,或者在此之前安装pytorch-forecasting,以便成功安装这个库。

如果您在Windows上工作,您可以使用以下命令安装PyTorch

pip install torch -f https://download.pytorch.org/whl/torch_stable.html

注意

建议访问Pytorch官方页面https://pytorch.org/get-started/locally/#start-locally,以确定哪个版本的pytorch最适合您的机器,如果您对该库不熟悉。

否则,您可以继续:

pip install pytorch-forecasting --extra-index-url https://download.pytorch.org/whl/cpu

或者,通过 conda 安装包:

conda install pytorch-forecasting pytorch>=2.0.0 -c pytorch -c conda-forge

PyTorch Forecasting 现在从 conda-forge 频道安装,而 PyTorch 则从 pytorch 频道安装。

要安装使用MQF2损失(多元分位数损失)的pytorch-forecasting,请运行:

pip install pytorch-forecasting[mqf2]

要安装Pytorch Lightning库,请访问他们的官方页面或运行:

pip install lightning

获取最新版本的pytorch-forecasting#

这种类型的安装获取存储库的最新静态快照,包含未在发布中发布的各种功能。它主要面向希望使用包含所有最新或当前更新的存储库版本来构建或测试代码的开发人员。

pip install git+https://github.com/sktime/pytorch-forecasting.git

要从特定分支安装,请使用以下命令:

pip install git+https://github.com/sktime/pytorch-forecasting.git@<branch_name>

pytorch-forecasting# 做贡献

非常欢迎对PyTorch Forecasting做出贡献!你不需要是深度学习专家才能贡献。如果你发现了一个错误 - 修复它!如果你缺少一个功能 - 提出它!

要获取可编辑版本的 pytorch-forecasting 用于开发或贡献,您需要设置:

  • 一个本地克隆的 pytorch-forecasting 仓库。

  • 一个带有可编辑安装的pytorch-forecasting和开发者依赖项的虚拟环境。

以下步骤将引导您完成该过程:

创建分支并克隆仓库#

  1. 点击页面右上角的“Fork”按钮来项目仓库。这将在您的GitHub用户账户下创建代码的副本。有关如何fork仓库的更多详细信息,请参阅此指南

  2. Clone 将你 GitHub 账户中的 pytorch-forecasting 仓库的分支克隆到本地磁盘:

    git clone git@github.com:<username>/sktime/pytorch-forecasting.git
    cd pytorch-forecasting
    

    其中 是你的 GitHub 用户名。

  3. 配置并将你的分叉的远程链接到上游仓库:

    git remote -v
    git remote add upstream https://github.com/sktime/pytorch-forecasting.git
    
  4. 验证您为您的分支指定的新上游仓库:

    git remote -v
    > origin    https://github.com/<username>/sktime/pytorch-forecasting.git (fetch)
    > origin    https://github.com/<username>/sktime/pytorch-forecasting.git (push)
    > upstream  https://github.com/sktime/pytorch-forecasting.git (fetch)
    > upstream  https://github.com/sktime/pytorch-forecasting.git (push)
    

设置可编辑的虚拟环境#

1. 设置一个新的虚拟环境。我们的说明将介绍设置conda环境的命令,该环境推荐用于pytorch-forecasting开发。 对于venv或其他虚拟环境管理器,过程将类似。

警告

通过诸如Anaconda等商业发行版使用conda通常不适用于商业用途,可能会产生显著的成本或责任。考虑使用免费的发行版和渠道进行包管理,并注意适用的条款和条件。

conda终端中:

  1. 导航到本地的pytorch-forecasting文件夹,cd pytorch-forecasting 或类似操作

  2. 使用支持的Python版本创建一个新环境:conda create -n pytorch-forecasting-dev python=3.11(或python=3.12等)

    警告

    如果你已经有一个名为pytorch-forecasting-dev的环境,你需要先删除它。

  3. 激活环境: conda activate pytorch-forecasting-dev

5. 构建一个可编辑版本的pytorch-forecasting。 为了仅安装开发依赖项,pip install -e ".[dev]" 如果你还想安装软依赖项,在上述操作之后单独安装它们, 或者使用:pip install -e ".[all_extras,dev]" 来安装所有依赖项。

贡献指南和建议#

提交拉取请求的最佳实践#

为了确保维护者和其他开发者能够帮助您解决问题或审查您的贡献/拉取请求,请阅读以下指南。

  • 在开始拉取请求之前,打开问题以讨论您提出的更改。这确保其他开发者或维护者对您未来的贡献有足够的背景/知识,以便可以迅速将其集成到代码库中。

  • 在PR标题中添加上下文标签。 这将极大地帮助分类不同类型的拉取请求,而无需查看完整的标题。通常标签以[ENH] - 增强:添加功能或改进代码,[BUG] - 错误修复,[MNT] - CI:测试框架,[DOC] - 文档:编写或改进文档或文档字符串开始。

  • 添加对其他链接或拉取请求的引用。 这有助于添加上下文,关于与您的贡献相关的先前或当前问题/拉取请求。通常通过包含完整链接或哈希标签‘#1234’来完成。

技术设计原则#

在为你的新功能编写代码时,建议遵循这些技术设计原则,以确保功能与库之间的兼容性。

  • 如果可能,使用向后兼容的API以防止破坏代码。

  • 强大的抽象能力,以支持快速实验。同时,这些抽象应该允许用户仍然完全掌控。

  • 直观的默认值,在大多数情况下不需要更改。

  • 专注于预测与时间相关的数据——特别是时间序列回归和分类。 与此主题不直接相关的贡献可能不会被合并。我们希望保持库尽可能简洁。

  • 安装 pre-commit 并使其在您对功能分支进行的每次提交时运行。 该库要求严格的编码和开发最佳实践,以确保最高的代码质量。 不符合这些标准的贡献或拉取请求在修复之前不太可能被合并。 有关 pre-commit 的更多信息,您可以访问 此页面

  • 始终为新功能添加测试和文档。