DL框架之DL4J/Deeplearning4j:深度学习框架DL4J/Deeplearning4j的简介、安装、使用方法之详细攻略

目录

深度学习框架Deeplearning4j的简介

1、Deeplearning4j特点

2、DL4J的几个模块

深度学习框架Deeplearning4j的安装

深度学习框架Deeplearning4j的简使用方法

1、Deeplearning4J 定义LeNet卷积神经网络


深度学习框架Deeplearning4j的简介

Eclipse Deeplearning4J (DL4J)生态系统是一组旨在支持基于JVM的深度学习应用程序的所有需求的项目。这意味着从原始数据开始,从任何地方和任何格式加载和预处理数据,构建和调整各种各样的简单和复杂的深度学习网络。
       Deeplearning4j是为Java和Java虚拟机编写的开源深度学习库,是广泛支持各种深度学习算法的运算框架。Deeplearning4j可以实施的技术包括受限玻尔兹曼机、深度置信网络、深度自动编码器、堆叠式降噪自动编码器、循环神经张量网络,以及word2vec、doc2vec和GloVe。这些算法全部包括分布式并行版本,与Hadoop和Spark集成。Skymind是Deeplearning4j的商业支持机构。
       Deeplearning4j是开源项目,主要由位于旧金山的一支机器学习团队开发,团队由Adam Gibson领导。Deeplearning4j是谷歌Word2vec页面上列出的唯一一个在Java环境下实施Word2vec的开源项目。
       Java虚拟机中的科学计算。Deeplearning4j包括使用ND4J的N维数组类,可在Java和Scala中进行科学计算,类似于Numpy为Python提供的功能。其基础是线性代数库,可有效支持生产环境中的矩阵操作。
       Deeplearning4j已经用于多项商业和科研应用。其代码由GitHub托管,并在谷歌小组上设有支持论坛。DL4J 生态系统中的所有项目都支持 Windows、Linux 和 macOS。硬件支持包括 CUDA GPU(10.0、10.1、10.2,OSX 除外)、x86 CPU(x86_64、avx2、avx512)、ARM CPU(arm、arm64、armhf)和 PowerPC(ppc64le)。

GitHub:https://github.com/deeplearning4j

GitHub地址:https://github.com/deeplearning4j/deeplearning4j

官方文档:Deeplearning4j Suite Overview - Deeplearning4j

1、Deeplearning4j特点

基于JVM语言特性:因为Deeplearning4J运行在JVM上,所以除了Java之外,您还可以将它与各种基于JVM的语言一起使用,比如Scala、Kotlin、Clojure等等。Deeplearning4j基于广泛使用的编程语言Java——但同时也兼容Clojure,并且包括Scala的API。它由自有的开源数值计算库ND4J驱动,可使用CPU或GPU运行。
可组合的:这一框架是可组合的,即受限玻尔兹曼机、卷积网络、自动编码器、递归网络等浅层神经网络可以相互叠加,组合成不同类型的深度网络。
集群式的:Deeplearning4j的定型以集群进行。神经网络通过迭代化简平行定型,可以在Hadoop/YARN以及Spark上运行。Deeplearning4j还与Cuda内核集成,进行纯GPU操作,可使用分布式GPU运行。
用于机器学习的Canova向量化库:Canova可将各类文件格式和数据类型向量化,所用的输入/输出格式系统近似于Hadoop的MapReduce。Canova目前仍在开发中,设计目标是实现CSV、图像、声音、文本和视频的向量化。Canova可以从命令行使用。 版本0.4.0之后,Canova库已合并到 DataVec当中。

2、DL4J的几个模块

DL4J:用于构建具有各种层(包括自定义层)的多层网络和计算图的高级 API。支持从 h5 导入 Keras 模型,包括 tf.keras 模型(截至 1.0.0-beta7),还支持在 Apache Spark 上进行分布式训练;
ND4J:通用线性代数库,包含超过 500 种数学、线性代数和深度学习运算。 ND4J 基于高度优化的 C++ 代码库 LibND4J,通过 OpenBLAS、OneDNN (MKL-DNN)、cuDNN、cuBLAS 等库提供 CPU (AVX2/512) 和 GPU (CUDA) 支持和加速;
SameDiff : 作为ND4J 库的一部分,SameDiff 是我们的自动微分/深度学习框架。 SameDiff 使用基于图形(定义然后运行)的方法,类似于 TensorFlow 图形模式。 Eager graph (TensorFlow 2.x eager/PyTorch) 图执行计划。 SameDiff 支持导入 TensorFlow 冻结模型格式 .pb (protobuf) 模型。计划导入 ONNX、TensorFlow SavedModel 和 Keras 模型。 Deeplearning4j 还具有完整的 SameDiff 支持,可以轻松编写自定义层和损失函数;
DataVec:用于各种格式和文件(HDFS、Spark、图像、视频、音频、CSV、Excel 等)的机器学习数据的 ETL;
LibND4J:支撑一切的 C++ 库。有关 JVM 如何访问本机数组和操作的更多信息,请参阅 JavaCPP;

深度学习框架Deeplearning4j的安装

git clone https://github.com/eclipse/deeplearning4j

硬件要求
Java(开发者版7或更新版本(仅支持64位版本)
Apache Maven
IntelliJ IDEA(建议)或Eclipse
Git

深度学习框架Deeplearning4j的简使用方法

1、Deeplearning4J 定义LeNet卷积神经网络

MultiLayerConfiguration conf = new NeuralNetConfiguration.Builder().seed(seed).l2(0.0005).weightInit(WeightInit.XAVIER).updater(new Adam(1e-3)).list().layer(new ConvolutionLayer.Builder(5, 5).stride(1,1).nOut(20).activation(Activation.IDENTITY).build()).layer(new SubsamplingLayer.Builder(PoolingType.MAX).kernelSize(2,2).stride(2,2).build()).layer(new ConvolutionLayer.Builder(5, 5).stride(1,1).nOut(50).activation(Activation.IDENTITY).build()).layer(new SubsamplingLayer.Builder(PoolingType.MAX).kernelSize(2,2).stride(2,2).build()).layer(new DenseLayer.Builder().activation(Activation.RELU).nOut(500).build()).layer(new OutputLayer.Builder(LossFunctions.LossFunction.NEGATIVELOGLIKELIHOOD).nOut(outputNum).activation(Activation.SOFTMAX).build()).setInputType(InputType.convolutionalFlat(28,28,1)).build();

DL框架之DL4J/Deeplearning4j:深度学习框架DL4J/Deeplearning4j的简介、安装、使用方法之详细攻略相关推荐

  1. Python编程语言学习:包导入和模块搜索路径简介、使用方法之详细攻略

    Python编程语言学习:包导入和模块搜索路径简介.使用方法之详细攻略 目录 包导入和模块搜索路径简介 1.Pyhon搜索模块路径的机制 2.自定义配置搜索路径

  2. Python语言学习:Python常用自带库(imageio、pickle)简介、使用方法之详细攻略

    Python语言学习:Python常用自带库(imageio.pickle)简介.使用方法之详细攻略 目录 imageio简介及其常见使用方法 pickle简介及其常见使用方法 简介 使用方法 简介及 ...

  3. DL框架之Tensorflow:深度学习框架Tensorflow的简介、安装、使用方法之详细攻略

    DL框架之Tensorflow:深度学习框架Tensorflow的简介.安装.使用方法之详细攻略 目录 Tensorflow的简介 1.描述 2.TensorFlow的六大特征 3.了解Tensorf ...

  4. 从TensorFlow到DL4J——主流深度学习框架对比分析

    从TensorFlow到DL4J--主流深度学习框架对比分析 2022年2月22日 极链AI云 官网地址 点击注册 更多AI小知识,关注<极链AI云>公众号 文章目录 从TensorFlo ...

  5. DL之Keras: Keras深度学习框架的注意事项(默认下载存放路径等)、使用方法之详细攻略

    DL之Keras: Keras深度学习框架的注意事项(自动下载存放路径等).使用方法之详细攻略 目录 Keras深度学习框架的注意事项 1.Keras自动下载默认数据集/模型存放位置 Windows系 ...

  6. DL框架之TensorFlow:深度学习框架TensorFlow Core(低级别TensorFlow API)的简介、安装、使用方法之详细攻略

    DL框架之TensorFlow:TensorFlow Core(低级别TensorFlow API)的简介.安装.使用方法之详细DL框架之TensorFlow:深度学习框架TensorFlow Cor ...

  7. DL之paddlepaddle:百度深度学习框架paddlepaddle飞桨的简介、安装、使用方法之详细攻略

    DL之paddlepaddle:百度深度学习框架paddlepaddle飞桨的简介.安装.使用方法之详细攻略 目录 paddlepaddle百度深度学习框架的简介 1.飞桨全景图与四大领先技术 2.丰 ...

  8. DL框架之Caffe:深度学习框架之Caffe的简介、安装、使用方法详细攻略

    DL框架之Caffe:深度学习框架之Caffe的简介.安装.使用方法详细攻略 目录 Caffe的简介 Caffe的安装 Caffe的使用方法 1.基本函数 ​ Caffe的简介 全称Convoluti ...

  9. DL框架之PyTorch:深度学习框架PyTorch的简介、安装、使用方法之详细攻略

    DL框架之PyTorch:PyTorch的简介.安装.使用方法之详细攻略 DL框架之PyTorch:深度学习框架PyTorch的简介.安装.使用方法之详细攻略 目录 PyTorch的简介 1.pyto ...

最新文章

  1. DecimalFormat 的使用
  2. [python]两种编程思维--面向过程和面向对象
  3. JS判断数字/字母/中文
  4. 【GDB调试学习笔记】Makefile多级目录生成多个可执行文件
  5. ERWIN中表结构导出到doc文件中
  6. 信息收集-目录扫描(7kbscan御剑版)下载及使用
  7. 红外红外传感器电路图及工作原理
  8. 关于librdkafka编译错误问题解决
  9. [渝粤教育] 天津科技大学 化工原理A 参考 资料
  10. 美国和欧洲5G最新进展—全球5G发展洞察2022(下)
  11. matlab plot bo,Matlab的plot~各种颜色和线形
  12. 广域网加速方案--Riverbed
  13. Unity游戏安卓和苹果游戏中植入广告增加收入
  14. 2022-2028年全球与中国智能纺织品产业市场前瞻与投资战略规划分析
  15. 3.15 study 简单移动动画js实现
  16. windows桌面上自由添加自定义文字软件--BgInfo
  17. 大数据面试重点之hive(五)
  18. RFID基本理论与操作实验
  19. 计算机应用实验3实验报告,计算机应用实验报告样本.doc
  20. 机器视觉检测设备能否取代质检员工作

热门文章

  1. 解决模板套用出现乱码问题的方法
  2. 常见软路由 NAS 低功耗处理器的对比 截至2020-12 英特尔
  3. 直播APP开发时需要注意的问题!
  4. 智源承认论文抄袭,相关责任人已离职!
  5. 安徽专升本计算机基础【柳青版】书后全部名词解释习题+部分课后答案
  6. Java zxing生成vcard二维码名片
  7. mpu6500-gnss组合导航代码分析
  8. Bluetooth CSR部分笔记
  9. 图论相关题-pta-个人整理-含有解析
  10. Android课程设计--网上购物商城