deeplearning4j/deeplearning4j-examples

Deeplearning4j Examples (DL4J, DL4J Spark, DataVec)

本仓库简介

deeplearning4j-examples 是一系列可直接运行的 Java 程序集合,展示了如何使用 Eclipse Deeplearning4J (DL4J) 生态系统。这些示例被组织成小型 Maven 项目,每个项目专注于堆栈的特定部分——高级神经网络 API、数据流水线工具、基于 Spark 的分布式训练、GPU 加速训练、底层 SameDiff 自动微分库、强化学习(RL4J),甚至包含一个 Android 演示。

适合人群

  • 希望不切换语言即可入门深度学习的 Java 开发者
  • 寻找从原始数据到训练模型的完整端到端代码的 学生或爱好者
  • 需要参考代码处理高级场景(如基于 Spark 的分布式训练或 GPU 数据并行)的 实践者

项目内容概览

子文件夹 重点 典型内容
dl4j-examples 高级 DL4J API 从原始数据开始构建并训练多层感知机、CNN、RNN 等。
tensorflow-keras-import-examples 模型导入 将 Keras 的 .h5 或 TensorFlow 冻结的 .pb 模型加载到 DL4J 中,进行微调或推理。
dl4j-distributed-training-examples Spark 集成 展示如何使用 DL4J 的混合异步 SGD 在 Spark 集群上运行训练、推理和评估。
cuda-specific-examples 多 GPU 训练 展示在一台或多台 CUDA GPU 上进行数据并行训练以提升速度。
samediff-examples 低级图 API 使用 SameDiff(DL4J 对应 TensorFlow 图模式的实现)构建计算图。
data-pipeline-examples DataVec 的 ETL 加载、分割并预处理图像、CSV、视频等数据,构建可复现的流水线。
nd4j-ndarray-examples NDArray 操作 使用 ND4J 的 INDArray 类展示类似 NumPy 的操作。
rl4j-examples 强化学习 使用 RL4J 库构建的简单强化学习代理。
android-examples 移动端部署 一个最小的 Android 应用,可在设备上运行 DL4J 模型。

每个子项目都包含一个 README,列出各个示例类,并建议探索顺序(从快速入门开始,再到高级内容)。所有示例均为 Maven 项目;为希望从零开始的新项目用户提供了模板 pom.xml

如何开始

  1. 克隆仓库,并选择您感兴趣的子项目。
  2. 使用 Maven 构建mvn clean compile exec:java 或使用您的 IDE)。README 会指向要运行的精确类。
  3. 运行代码——大多数示例会下载一个小的公开数据集,进行预处理,训练模型,并打印基本指标。
  4. 进行实验——修改超参数、更换数据集或替换层,观察结果如何变化。

获取帮助的途径

  • 官方 DL4J 社区论坛https://community.konstitut.ai
  • 本仓库的 GitHub 问题(但维护者表示不频繁监控)。
  • 更广泛的 DL4J 文档网站,用于深入探索每个库组件。

为何重要

DL4J 是在 JVM 上原生运行的最成熟的深度学习框架。对于已有 Java/Scala 代码库的组织,或偏好 Java 工具链(Maven/Gradle、IDE 支持、静态类型)的开发者而言,此仓库提供了在不离开 Java 生态系统的情况下,构建生产级 AI 模型所需的实用“操作指南”。


  • 上述所有信息均直接取自仓库的 README;未推断任何额外功能。*

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目