跳转到主要内容
ToolPotion

Shumai

Shumai 是一个为 JavaScript 和 TypeScript 构建的快速、可微分的张量库,基于 Bun 和 Flashlight。它使软件工程师和研究人员能够高效地在 JavaScript 生态系统中创建数据集、训练小型模型和实现高级训练逻辑。它利用原生类型数组和 JIT 编译器来提高性能。

访问URL

描述

Shumai 是一个专为 JavaScript 和 TypeScript 设计的可微分张量库,它利用 Bun 的速度和 Flashlight 的强大功能。它旨在使数据操作、模型训练和高级推理逻辑在 JavaScript 生态系统中的开发人员更加易于访问和高效。通过利用原生类型数组和 Bun 的即时编译 (JIT) 编译器,Shumai 为从数据集创建到训练小型机器学习模型的任务提供了高性能的解决方案。

该库提供了核心张量操作、用于梯度计算的自动微分,以及与 JavaScript 原生数组的无缝转换。这使得开发人员可以直接在 JavaScript 中处理数据,将其准备成 GPU 兼容的数组,然后在不离开环境的情况下训练模型。Shumai 的架构旨在最大限度地减少开销,使 JavaScript 在训练和推理过程中(尤其是在小型模型上)能够高效运行。

主要功能包括标准的数组实用程序、张量创建、数学运算和梯度跟踪。用户可以为需要梯度计算的张量启用梯度,执行操作,然后访问计算出的梯度。该库还提供了内存管理调优功能,允许用户调整垃圾回收参数,以根据硬件能力优化性能。此外,Shumai 还包含一个统计信息收集系统,可以将操作性能记录到控制台或通过 HTTP,并提供作用域分析和堆栈跟踪收集选项。

Shumai 对那些已经在 JavaScript 生态系统中工作并希望集成机器学习功能而无需面对其他语言或框架陡峭学习曲线的软件工程师和研究人员尤其有益。其性能基准显示,在各种操作中,尤其是在 Apple M1 Pro 和 Nvidia GPU 上,它比 TensorFlow.js 等库具有显著优势。该项目是实验性的,欢迎贡献以改进其功能和稳定性。

Shumai的核心功能

  • 为 JavaScript 和 TypeScript 构建的快速、可微分的张量库

  • 基于 Bun 和 Flashlight 构建,实现高性能

  • 支持自动微分以进行梯度计算

  • 张量与 JavaScript 原生数组之间的无缝转换

  • 针对训练小型模型和高级推理逻辑进行了优化

  • 利用原生类型数组和 JIT 编译

  • 内存使用调优以优化性能

  • 内置统计信息收集,用于操作分析

  • 作用域统计信息收集,用于隔离分析

  • 实验性软件,积极开发中

  • 通过 ArrayFire 后端支持 GPU 计算(Linux 上的 CUDA,macOS 上的 CPU)

  • 可扩展的统计信息日志记录,提供控制台和 HTTP 选项

Shumai入门

  1. 安装 Bun 和 ArrayFire:遵循 macOS 和 Linux 的平台特定说明。

  2. 安装 Shumai:运行 `bun install @shumai/shumai`。

  3. 导入 Shumai:在您的 TypeScript/JavaScript 代码中使用 `import * as sm from '@shumai/shumai'`。

  4. 创建张量:使用 `sm.randn()` 或 `sm.tensor()` 等函数创建张量。

  5. 执行操作:应用数学运算,如 `matmul()`、`mul()` 和 `sum()`。

  6. 启用梯度:为需要梯度跟踪的张量设置 `tensor.requires_grad = true`。

  7. 计算梯度:在损失张量上调用 `.backward()` 来填充梯度。

  8. 调优内存:使用 `util.memoryOptions()` 调整内存选项以优化性能。

Shumai的使用案例

  • 数据集创建
  • 模型训练
  • 推理逻辑
  • 数据预处理
  • 研究原型开发
  • 应用程序开发

Shumai的常见问题

Shumai 评价

加载中...

与 Shumai 类似的热门AI工具

TensorFlow 是一个为所有人设计的开源机器学习框架。它提供了一个全面的生态系统,用于构建和部署机器学习模型,使开发者和研究人员都能轻松使用。

精选机器学习平台

AI 框架

TensorFlow 是一个面向所有人的端到端开源机器学习平台。它提供了灵活的工具、库和社区资源生态系统,使得创建和部署机器学习模型变得简单。

精选机器学习平台

Keras是一个开源深度学习库,旨在为人类服务。它简化了构建神经网络的过程,并允许开发者在GitHub上为其开发做出贡献。

精选机器学习平台

AI GitHub 仓库

nanoGPT 是一个极简、高性能的 GitHub 仓库,用于训练和微调中等规模的 GPT 模型。它提供了一个简单易读的代码库,供研究人员和开发人员试验 GPT 架构、复现 GPT-2 结果并构建自定义语言模型。

精选机器学习平台

🤗 Transformers 是一个模型定义框架,旨在支持文本、视觉、音频和多模态领域的最先进机器学习模型,促进推理和训练过程。

精选机器学习平台

AI GitHub 仓库

Ray是一个旨在加速机器学习工作负载的AI计算引擎。它具有核心分布式运行时和一套AI库,使其适用于各种机器学习应用,并提高计算效率。

精选机器学习平台

LocalAI 是一个开源人工智能引擎,允许用户在任何硬件上运行各种模型,包括大型语言模型(LLMs)、视觉、语音、图像和视频,而无需 GPU。这种灵活性使其适用于多种应用。

精选机器学习平台