Person deep under water with several small fish

尼菲 + DJL.AI – 快乐深度学习圣诞节

快乐的嗯…弗拉克日!

我一直在试验真棒新的Apache2.0许可Java深度学习库,DJL。在 NiFi 中,我试图找出一个快速用例和演示。因此,我使用我的 Web 相机处理器从我的 Powerbook 网络摄像头抓取静止镜头,并将其发送到处理器。结果将发送到松弛。

由于是假期,我想到我最喜欢的节日电影:矩阵和刀片亚军。所以我觉得沃伊特-坎普夫测试会很有趣。由于我还没有建立一个深度学习QA件,让我们开始看看你是否看起来像人类。我们会叫他们”人”。我正在测试,看看我是不是复制人。有时候很难说。让我们看看DJL是否认为我是人。

参见http://nautil.us/blog/-the-science-behind-blade-runners-voight_kampff-test

好吧,至少它认为我是一个人。圣诞树的分类是模糊的准确。因此,我们可以看到深度学习在 Java 中是多么简单和强大,将其添加到 NiFi 中会使其更加简单。

它没有识别我的巨型法国面包。

您可能还有兴趣:
使用 Apache Spark 和 Apache NiFi 运行张力流

构建用于深度学习的新自定义处理器

最难的部分是一个良好的NiFi集成测试。DJL 团队提供了一些很好的例子,而且很容易插入他们的模型。

Java

xxxxxxxxx
1
1
ZooModel<缓冲图像检测到的对象>模型|
2

3
MxModelZoo. .SSD.负载模型标准进度栏())
4

5
预测变量<缓冲图像检测到的对象>预测变量+模型.新预测器()
6

7
检测到的对象检测=预测变量预测img);

所有源都在 GitHub 上,并引用以下 DJL 站点和存储库。

使用新的自定义处理器作为实时假日流的一部分

我们首先将深度学习处理器添加到画布png”数据-新=”假”数据大小=”112942″数据大小格式化”112.9 kB”数据类型=”temp”数据 url=”/存储/临时/12864908-添加 深度学习处理器.png”src=”宽度:745px;2019/12/12/12864908-添加深度学习处理器.png”宽度:745px;显示:块;垂直对齐:顶部;边距:5px自动;文本对齐:中心;”/>

示例流:

  • GetWebCamera处理器:从附加的网络相机抓取图像
  • 更新属性:为图像添加媒体类型
  • 深度学习处理器: 从动物园运行我们的 DJL 深度学习模型
  • 放置 Slack: 将 DJL 结果放在文本窗口中以松弛
  • 帖子slack: 发送我们的DJL改变的图像松弛
  • 漏斗: 将所有故障发送到瓦尔哈拉

如果我们举例说,起源,我们可以看到它花了多长时间运行和其他一些有趣的属性。

我们将图像分析的结果放在属性中,同时返回在找到的对象上具有边界框的新图像。

我们现在有一个完整的分类工作流程,用于对图像进行实时深度学习分析,可用于圣诞老人观看、安全、Memes和其他重要业务目的。

初始版本可在此处获取:https://github.com/tspannhw/nifi-djl-processor/releases/tag/v1.0

使用深Java库(https://djl.ai/)中的库和示例代码。

com/awslabs/djl/blob/master/示例/src/main/java/ai/djl/示例/推理/BertQaInference.java”rel=”无开路者”目标=”_blank”\https://github.com/awslabs/djl/blob/master/src/src/src/j/s.s

源代码:https://github.com/tspannhw/nifi-djl-processor/

进一步阅读

探索 Apache NiFi 1.10:参数和无状态引擎

阿帕奇尼菲概述

Comments are closed.