deepjavalibrary/djl

An Engine-Agnostic Deep Learning Framework in Java

What it solves

Deep Java Library (DJL) 为深度学习提供原生的 Java 开发体验,允许 Java 开发者在无需成为机器学习专家或依赖以 Python 为中心的工具的情况下,构建、训练和部署模型。它消除了将深度学习模型集成到 Java 应用中的摩擦力。

How it works

DJL 是一个与引擎无关的框架。这意味着它提供了一个高层 API,允许开发者在不更改 Java 代码的情况下,在不同的深度学习引擎(如 PyTorch、TensorFlow 或 MXNet)之间进行切换。它还自动处理硬件加速,根据系统配置在 CPU 和 GPU 之间进行选择。

Who it’s for

想要将深度学习能力集成到其 Java 应用中的 Java 开发者,以及那些希望利用现有的 Java IDE 和专业知识来学习和训练神经网络的开发者。

Highlights

  • Engine Agnostic: 无需重写代码即可在不同的深度学习后端之间切换。
  • Native Java Experience: 作为常规的 Java 库,融入标准的 Java 工作流程和 IDE。
  • CUPU/GPU Auto-selection: 根据可用硬件自动优化性能。
  • Model Zoo Integration: 简化了加载预训练模型以执行任务(如目标检测)。
  • Comprehensive Training API: 包含用于构建神经网络的内置块,以及用于训练和保存模型的工具。