Skip to main content

moai:加速、灵活、模块化、可重复、有洞察力的人工智能

项目描述

moai - 加速现代数据驱动的工作流程

文件状态 PyTorch 闪电 火炬服务

概述

moai基于PyTorch的 AI 模型开发工具包 (MDK),旨在改进数据驱动的模型工作流程、设计和理解。由于它基于已建立的开源包,因此可以很容易地用于改进大多数 AI 工作流程。要探索moai,只需安装软件包并按照示例进行操作,请记住它处于早期开发alpha版本,因此很快就会提供新功能。

概述 概述

功能和设计目标

  • 通过 Monads 实现模块化:使用moai现有的模块化模型构建块池。
  • 通过配置实现可重复性moai通过其内置的基于配置的设计管理超参数敏感的 AI 研发工作流程。
  • 通过最小化编码提高生产力moai提供了一种数据驱动的领域建模语言(DML),可以促进快速简单的模型设计。
  • 通过插件的可扩展性:使用moai的内置元编程和外部代码集成轻松集成外部代码。
  • 通过分析理解moai支持模型间性能和设计聚合 操作,以整合模型之间的知识和查询差异。

行动

moai通过特定的集成操作提供了一组数据驱动的工作流功能。这些使用描述每个动作的执行上下文的moai 配置文件。由于moai是围绕这些定义其上下文并描述每个模型的详细信息的配置文件构建的,它提供的操作支持具有模型间分析、知识提取和细致再现的大量数据驱动的工作流。

每个操作的详细信息如下:

  • moai play CONFIG_PATH

播放动作 播放动作

使用该play动作,moai开始播放数据集的train\val\test拆分。moai的导出器可用于提取数据集特定的统计信息。moai的可视化引擎可用于展示数据集。可选地,可以定义单子处理图来转换数据。

  • moai train CONFIG_PATH

训练动作 训练动作

train操作使用一个配置文件,该文件定义将要训练的模型、将用于训练和验证模型的数据,以及围绕训练过程配置引擎。结果包括训练和日志中的模型状态,包括验证指标和损失。

  • moai evaluate CONFIG_PATH

评估行动 评估行动

evaluate操作使用一个配置文件,该文件定义将要测试的训练模型、测试数据,以及围绕测试过程配置引擎。结果包括模型聚合和/或详细指标,以及推理样本。

  • moai plot PATH_TO_EXPERIMENTS

剧情动作 剧情动作

plot操作使用各种配置文件 - 通常来自同一模型的不同版本 - 并生成可视化整合和聚合模型间性能,为分析不同超参数或模型配置的行为提供必要的手段。

  • moai diff lhs=PATH_TO_CONFIG_A rhs=PATH_TO_CONFIG_B

差异操作 差异操作

diff操作使用两个不同的配置文件——通常来自同一模型的不同版本——并报告它们与超参数化、处理图变化等相关的差异。

  • moai reprod PATH_TO_RESOLVED_CONFIG

再生产行动 再生产行动

reprod操作使用先前记录和解析的配置文件,并通过在适应开发环境差异的同时重新执行它来促进其复制。

依赖项

moai站在巨人的肩膀上,依赖于各种大型开源项目:

  1. PyTorch > 1.7.0需要在您的系统/环境中自定义安装。

  2. 闪电 > 1.0.0是当前支持的训练后端。

  3. Hydra > 1.0驱动moai的 DML,它设置模型配置,并额外管理现代 AI 模型的超参数复杂性。

  4. 火炬服务 > 0.5.3需要将模型部署为服务。

  5. ONNX > 1.11.0需要以可交换格式导出模型。

  6. Visdom是当前支持的可视化引擎。

  7. HiPlot推动moai的模型间分析。

  8. 各种 PyTorch 开源项目

    • Kornia用于一组集成为moai monad 的计算机视觉操作。
    • Albumentations作为当前支持的数据增强框架。
  9. 更广泛的开源社区,进行可访问的研发并推动moai的大部分功能。

  10. 一组很棒的 Python 库

安装

包裹

要安装最新发布的 moai包,请运行:

pip install moai-mdk

资源

下载主分支源并通过在源目录上打开命令行并运行来安装它:

pip install .pip install -e .(以可编辑的形式)

入门

访问文档站点以了解moai的 DML 以及整体 MDK 设计和使用。

示例可以在conf/examples中找到。

执照

moai已获得 Apache 2.0 许可,可在相应的LICENSE文件中找到。

但是,从外部项目集成的一些代码可能带有自己的许可证。

2021 年 PyTorch 开发者日

PTDD21 PTDD21

引文

如果您在研发工作流程中使用moai或发现其代码有用,请考虑引用:

@misc{moai,
    key = {moai: PyTorch Model Development Kit},
    title = {{\textit{moai}: Accelerating modern data-driven workflows}},
    year = {2021},
    publisher = {GitHub},
    journal = {GitHub repository},
    howpublished = {\url{https://github.com/ai-in-motion/moai}},
}

接触

要么使用:

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布