基本的 deeplearning4j 分类示例

Posted

技术标签:

【中文标题】基本的 deeplearning4j 分类示例【英文标题】:Basic deeplearning4j classification example 【发布时间】:2020-05-12 08:51:53 【问题描述】:

我需要一个非常基本的分类或 deeplearning4j 框架的类似示例。

我有一对已经标准化的双数组 [0.01, 0.45, 0.0, ....] -> [0.0, 0.1, 0.0, 0.0, ...] 形式的经典训练集,并且需要:

    构建和训练具有 N 个隐藏层的简单前馈神经网络 将一组未分类的双精度数组馈送到经过训练的网络并获得一组输出向量

有人可以分享一个基本的简短示例吗?

UPD: 像 this 这样的东西,但对于 deeplearning4j 真的很有帮助。

【问题讨论】:

嗨,你可以在这里找到足够多的东西:github.com/eclipse/deeplearning4j-examples/blob/master/… 并在父文件夹中:github.com/eclipse/deeplearning4j-examples/tree/master/… 你没有提供足够的细节(比如什么样的规范化)来给你更多的帮助那。请记住,在进行过多介绍之前,您应该具备一些基本知识。 嗨,亚当!我正在从 Encog 迁移,像这样的一些示例将有助于 github.com/jeffheaton/encog-java-examples/blob/master/src/main/… 这不是一个分类示例,但它清楚地展示了如何在快速启动模式下快速创建工作前馈原型。因此,如果您能提出类似的建议,那就太好了。 感谢您的建议!我已经看过这些官方示例,但看起来他们都“太花哨”了,没有发现任何以旧的普通数字开头的东西:)。当然,它们也会有所帮助,所以如果我找不到其他任何东西,我会从这些样本开始。 嗯,一般来说,这些示例针对的是普通的现实世界用例,例如:从外部源加载数据,放入模型。通常,人们不会创建双数组和训练模型。 【参考方案1】:

查看this 示例,该示例展示了如何在 XOR 关系上训练 nn。首先,您必须将双打转换为 ndarray。为此,请使用 Nd4j.create(...) 方法。然后你需要设置一个像here这样的数据集。

【讨论】:

请问有没有一种快速的方法可以将 INDArray 输出 (INDArray output = net.output(input);) 转换回双数组? 使用 output.toDoubleMatrix() 或 output.toDoubleVector() 官方存储库中不再存在链接。你可以使用wmeddie的仓库:Xor example

以上是关于基本的 deeplearning4j 分类示例的主要内容,如果未能解决你的问题,请参考以下文章

Deeplearning4j 实战 (13-2):基于Embedding+CNN的文本分类实现

Deeplearning4j 实战 (13-2):基于Embedding+CNN的文本分类实现

第02课:DeepLearning4j 开发的基本流程

第02课:DeepLearning4j 开发的基本流程

Deeplearning4j 实战:Deeplearning4j 手写体数字识别Spark实现

deeplearning4j 和 Maven 的错误