java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第1张图片

DeeplearningforJava简单介绍:

deeplearning4j是一个Apache 2.0-licensed,开源的,分布式神经网络库编写的java和Scala。

主要模块:

datavec(数据载体)

用于将图像、文本和CSV数据转换成适合于深入学习的格式的库

nn(结构)

神经网络结构设计的核心神经网络结构多层网络和计算图

core

附加的功能建立在deeplearning4j NN

modelimport (模型导入)

加入Keras框架功能

nlp(自然语言处理)

包括vectorizers,模型的自然语言处理组件,样本数据集和渲染

scaleout(拓展功能)

spark  、parallel-wraper 、aws

ui

可视化界面

准备好jdk环境,maven环境,git环境,开发工具

开发工具

IntelliJ IDEA (建议)或 Eclipse

JDK

1.8 (仅支持64位版本)

MAVEN

最低不低于3.3.1

GIT

最新即可

通过cmd输入git命令下载dl4j-examples项目并进行编译

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第2张图片

进入dl4j-examples目录

cd dl4j-examples/

maven编译项目 有可能需要执行多次

mvn clean install

如果需要编译所有的项目。我在百度云上传了一份代码及文件(不包含maven库)

链接: https://pan.baidu.com/s/1bfqiNDfxkX4eUQH7ZpjDPQ 密码: 897e

为了方便测试快速搭建。先注释了CUDA模块的加载。

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第3张图片

全部下载完如下图所示。下图是在家里自己的电脑上操作的(家里网速快些)

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第4张图片

编译完成导入到Intellij里面-9个截图

选择导入一个项目

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第5张图片

找到项目径

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第6张图片

下一步默认选项

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第7张图片

选中maven

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第8张图片

默认不选中jfx下一步

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第9张图片

添加一个JDK

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第10张图片

找到1.8安装目录并选中

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第11张图片

选中项目

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第12张图片

给一个项目名称 默认即可

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第13张图片

后来是重新导入最后一步弹出窗可以忽略

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第14张图片

运行一个例子看看

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第15张图片

官网入门指南:https://deeplearning4j.org/cn/quickstart

示例绘画蒙娜丽莎画像

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第16张图片

结束语:

至此搭建dl4j,并跑一个demo完成。开发工具的jdk环境maven环境这里不做配置说明。这个百度经验可以看到很多教程的。入门指南并不难。后续训练自己的人脸检测,NLP,OCR这个就需要大家自己去细心研究了。鄙人也会试着训练相关数据。

个人小程序有关于百度人脸检测和腾讯优图人脸检测的功能,可以扫码看看哦。

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第17张图片

Deeplearning4j 例子示例

需要了解的名词:

Precision:精确率

Recall:召回率

Accuracy:准确率

F1 Score:F1分数

计算公式:

precision = TP / (TP + FP)

recall = TP / (TP + FN)

accuracy = (TP + TN) / (TP + FP + TN + FN)

F1 Score = P*R/2(P+R),其中P和R分别为 precision 和 recall

需要知道的TP、FP、TN、FN

- TP,True Positive

- FP,False Positive

- TN,True Negative

- FN,False Negative

大概意思是 真正 假正 真负 假负

例如:

举个简单的二元分类问题 例子:

假设,我们要对某一封邮件做出一个判定,判定这封邮件是垃圾邮件、还是这封邮件不是垃圾邮件?

如果判定是垃圾邮件,那就是做出(Positive)的判定;

如果判定不是垃圾邮件,那就做出(Negative)的判定。

True Positive(TP)意思表示做出Positive的判定,而且判定是正确的。因此,TP的数值表示正确的Positive判定的个数。

同理,False Positive(TP)数值表示错误的Positive判定的个数。

依此,True Negative(TN)数值表示正确的Negative判定个数。

False Negative(FN)数值表示错误的Negative判定个数。

原文链接:http://blog.csdn.net/simplelovecs/article/details/50520602

训练seed不同。精准,准确,召回的分数如下

有可能需要训练数据。不知道怎么找的。在我的百度云下载吧

链接: http://pan.baidu.com/s/1geNrvGn 密码: 8bkw

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第18张图片12345

java神经网络库_Java分布式神经网络库Deeplearning4j 环境搭建和运行一个例子_第19张图片123

你可能感兴趣的:(java神经网络库)