17 天前
NeMo:一个用于构建基于 Neural Modules 的 AI 应用程序的工具包
Oleksii Kuchaiev, Jason Li, Huyen Nguyen, Oleksii Hrinchuk, Ryan Leary, Boris Ginsburg, Samuel Kriman, Stanislav Beliaev, Vitaly Lavrukhin, Jack Cook, Patrice Castonguay, Mariya Popova, Jocelyn Huang, Jonathan M. Cohen

摘要
NeMo(Neural Modules)是一个与具体框架无关的 Python 工具包,旨在通过模块复用、抽象封装与组合方式,构建人工智能应用。NeMo 以神经模块(neural modules)为核心,这些模块是神经网络的逻辑单元,具有类型化的输入与输出。典型的模块包括数据层、编码器、解码器、语言模型、损失函数,以及激活值的组合方法等。NeMo 通过其神经类型系统(neural type system)提供语义层面的正确性检查,使开发者能够便捷地组合与复用这些构建模块。该工具包内置了可扩展的预构建模块集合,涵盖自动语音识别(ASR)与自然语言处理(NLP)任务。此外,NeMo 原生支持在最新 NVIDIA GPU 上进行分布式训练与混合精度计算。NeMo 为开源项目,代码托管于 GitHub:https://github.com/NVIDIA/NeMo