Next Page: 10000

          物联网技术周报第 146 期: 自己动手制作 NASA 开源火星漫游者      Cache   Translate Page   Web Page Cache   

自己动手制作 NASA 开源火星漫游;使用 Kindle 制作文学闹钟;使用 Hass.io 和 Raspberry Pi 制作智能家居助手;Tensorflow 官方支持 Raspberry Pi;20 多万台 MikroTik 路由器被黑,用户被迫扛起锄头挖矿;阿里云 IoT 发布生活物联网平台 2.0,智能硬件开发效率提高 5 倍;腾讯云加入 LoRa 联盟成为发起成员,推动物联网到智联网进化;ARM 继续加码物联网领域,或将以 6 亿美元收购数据分析公司 Treasure Data。

By 黄峰达
          GPU accelerated Image Processing Plugin      Cache   Translate Page   Web Page Cache   
I am a Colour Scientist and for the past two years have been developing OFX plugins for Colour Grading software Davinci Resolve. We have developed several plugins and brought them to the market to a great success... (Budget: min $50 USD, Jobs: C++ Programming, CUDA, Matlab and Mathematica, OpenCL, Tensorflow)
          [译] 如何通过深度学习轻松实现自动化监控?      Cache   Translate Page   Web Page Cache   

作者 | Bharath Raj

译者 | 孤鸿

编辑 | Jane

出品 | AI 科技大本营(rgznai100

【导读】这是一篇关于使用基于深度学习的目标检测来实现监控系统的快速教程。在教程中通过使用 GPU 多处理器来比较不同目标检测模型在行人检测上的性能。

监控是安保和巡逻的一个组成部分,大多数情况下,这项工作都是在长时间去观察发现那些我们不愿意发生的事情。然而突发事件发生的低概率性无法掩盖监控这一平凡工作的重要性,这个工作甚至是至关重要的。

如果有能够代替我们去做“等待和监视”突发事件的工具那就再好不过了。幸运的是,这些年随着技术的进步,我们已经可以编写一些脚本来自动执行监控这一项任务。在深入探究之前,需要我们先考虑两个问题。

机器是否已经达到人类的水平?

任何熟悉深度学习的人都知道图像分类器的准确度已经赶超人类。图1显示了近几年来对于人类、传统计算机视觉 (CV) 和深度学习在 ImageNet 数据集上的分类错误率。

image

图 1 人类、深度学习和 CV 在 ImageNet 上分类错误率

与人类相比,机器可以更好地监视目标,使用机器进行监视效率更高,其优点可总结如下:

  • 重复的任务会导致人类注意力的下降,而使用机器进行监视时并无这一烦恼,我们可以把更多的精力放在处理出现的突发事件上面。

  • 当要监视的范围较大时,需要大量的人员,固定相机的视野也很有限。但是通过移动监控机器人 (如微型无人机) 就能解决这一问题。

此外,同样的技术可用于各种不受限于安全性的应用程序,如婴儿监视器或自动化产品交付。

我们该如何实现自动化?

在我们讨论复杂的理论之前,先让我们看一下监控的正常运作方式。我们在观看即时影像时,如果发现异常就采会取行动。因此我们的技术也应该通过仔细阅读视频的每一帧来发现异常的事物,并判断这一过程是否需要报警。

大家可能已经知道了,这个过程实现的本质是通过目标检测定位,它与分类不同,我们需要知道目标的确切位置,而且在单个图像中可能有多个目标。为了更好的区分我们举了一个简单形象的例子如图2所示。

image

图2 分类、定位、检测和分割的示例图

为了找到确切的位置,我们的算法应该检查图像的每个部分,以找到某类的存在。自2014年以来,深度学习的持续迭代研究引入了精心设计的神经网络,它能够实时检测目标。图3显示了近两年R-CNN、Fast R-CNN 和 Faster R-CNN 三种模型的检测性能。

image

图3 R-CNN、Fast R-CNN 和 Faster R-CNN 性能

这里有几种在内部使用的不同方法来执行相同任务的深度学习框架。其中最流行的是 Faster-RCNN、YOLO 和 SSD。图4展示了 Faster R-CNN、R-FCN 和 SSD 的检测性能。

image

图4 Faster R-CNN、R-FCN 和 SSD 的检测性能,速度与准确性的权衡,更高的 mpA 和更低的 GPU 时间是最佳的。

每个模型都依赖于基础分类器,这极大影响了最终的准确性和模型大小。此外,目标检测器的选择会严重影响计算复杂性和最终精度。在选择目标检测算法时,速度、精度和模型大小的权衡关系始终存在着。

在有了上面的学习了解后,接下来我们将学习如何使用目标检测构建一个简单而有效的监控系统。

我们先从由监视任务的性质而引起的限制约束开始讨论起。

深度学习在监控中的限制

在实现自动化监控之前,我们需要考虑以下几个因素:

1.即时影像

为了在大范围内进行观察,我们可能需要多个摄像头。而且,这些摄像头需要有可用来存储数据的地方 (本地或远程位置)。图5为典型的监控摄像头。

image

图5 典型的监控摄像头

高质量的视频比低质量的视频要占更多的内存。此外,RGB 输入流比 BW 输入流大3倍。由于我们只能存储有限数量的输入流,故通常情况下我们会选择降低质量来保证最大化存储。

因此,可推广的监控系统应该能够解析低质量的图像。同时我们的深度学习算法也必须在低质量的图像上进行训练。

2.处理能力

在哪里处理从相机源获得的数据是另一个大问题。通常有两种方法可以解决这一问题。

集中式服务器处理

来自摄像机的视频流在远程服务器或集群上逐帧处理。这种方法很强大,使我们能够从高精度的复杂模型中获益。但这种方法的缺点是有延迟。此外,如果不用商业 API,则服务器的设置和维护成本会很高。图6显示了三种模型随着推理时间的增长内存的消耗情况。

image

图6 内存消耗与推理时间(毫秒),大多数高性能模型都会占用大量内存

分散式边缘处理

通过附加一个微控制器来对相机本身进行实时处理。优点在于没有传输延迟,发现异常时还能更快地进行反馈,不会受到 WiFi 或蓝牙的限制 (如 microdrones)。缺点是微控制器没有 GPU 那么强大,因此只能使用精度较低的模型。使用板载 GPU 可以避免这一问题,但是太过于昂贵。图 7 展示了目标检测器 FPS 的性能。

image

图 7 各类目标检测器 FPS 的性能

训练监控系统

在接下来的内容里我们将会尝试如何使用目标检测进行行人识别。使用 TensorFlow 目标检测 API 来创建目标检测模块,我们还会简要的阐述如何设置 API 并训练它来执行监控任务。整个过程可归纳为三个阶段 (流程图如图8所示):

  • 数据准备

  • 训练模型

  • 推论

image

图8 目标检测模型的训练工作流程

第1阶段:数据准备

第一步:获取数据集

监控录像是获取最准确数据集的来源。但是,在大多数情况下,想要获取这样的监控录像并不容易。因此,我们需要训练我们的目标检测器使其能从普通图像中识别出目标。

image

图9 从数据集中提取出带标注的图像

正如前面所说,我们的图像质量可能较差,所以所训练的模型必须适应在这样的图像质量下进行工作。我们对数据集中的图像 (如图9所示) 添加一些噪声或者尝试模糊和腐蚀的手段,来降低数据集中的图片质量。

在目标检测任务中,我们使用了 TownCentre 数据集。使用视频的前3600帧进行训练,剩下的900帧用于测试。

第二步:图像标注

使用像 LabelImg 这样的工具进行标注,这项工作虽然乏味但也同样很重要。我们将标注完的图像保存为 XML 文件。

第三步:克隆存储库

运行以下命令以安装需求文件,编译一些 Protobuf 库并设置路径变量

pip install -r requirements.txt
sudo apt-get install protobuf-compiler
protoc object_detection/protos/*.proto --python_out=.
export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim

第四步:准备所需的输入

首先,我们需要给每个目标一个标签,并将文件中每个标签表示为如下所示的 label_map.pbtxt

item {
 id: 1
 name: ‘target’
}

接下来,创建一个包含 XML 和图像文件名称的文本文件。例如,如果数据集中有 img1.jpg, img2.jpg, 和 img1.xml, img2.xml ,则 trainval.txt 文件的表示应如下所示:

img1
img2

将数据集分为两个文件夹 (图像与标注)。将 label_map.pbtx 和 trainval.txt放在标注文件夹中,然后在标注文件夹中创建一个名为 xmls 的子文件夹,并将所有 XML 文件放入该子文件夹中。目录层次结构应如下所示:

-base_directory
|-images
|-annotations
||-xmls
||-label_map.pbtxt
||-trainval.txt

第五步:创建 TF 记录

API 接受 TPRecords 文件格式的输入。使用 creat_tf_record.py 文件将数据集转换为 TFRecords。我们应该在 base directory 中执行以下命令:

python create_tf_record.py \
    --data_dir=`pwd` \
    --output_dir=`pwd`

在该程序执行完后,我们可以获取 train.record 和 val.record 文件。

第2阶段:训练模型

第1步:模型选择

如前所述,速度与准确度两者不可得兼,从头开始创建和训练目标检测器是非常耗时的。因此, TensorFlow 目标检测 API 提供了一系列预先训练好的模型,我们可以根据自己的使用情况进行微调,该过程称为迁移学习,它可以大大提高我们的训练速度。

image

图10 MS COCO 数据集中一组预训练过的模型

从图 10 中下载一个模型,并将内容解压缩到 base directory 中。可获取模型检查点,固定推理图和 pipeline.config 文件。

第2步:定义训练工作

我们必须在 pipleline.config 文件中定义“训练工作”,并将该文件放到 base directory 中。该文件中最重要的是后几行——我们只需将突出显示的值放到各自的位置。

gradient_clipping_by_norm: 10.0
  fine_tune_checkpoint: "model.ckpt"
  from_detection_checkpoint: true
  num_steps: 200000
}
train_input_reader {
  label_map_path: "annotations/label_map.pbtxt"
  tf_record_input_reader {
    input_path: "train.record"
  }
}
eval_config {
  num_examples: 8000
  max_evals: 10
  use_moving_averages: false
}
eval_input_reader {
  label_map_path: "annotations/label_map.pbtxt"
  shuffle: false
  num_epochs: 1
  num_readers: 1
  tf_record_input_reader {
    input_path: "val.record"
  }
}

第3步:开始训练

执行以下命令以启动训练工作,建议使用具有足够大的 GPU 计算机,以便加快训练过程。

python object_detection/train.py \
--logtostderr \
--pipeline_config_path=pipeline.config \
--train_dir=train

第3阶段:推论

第1步:导出训练模型

在模型使用之前,需要将训练好的检查点文件导出到固定推理图上,实现这个过程并不困难,只需要执行以下代码 (用检查点替换“xxxxx”)

python object_detection/export_inference_graph.py \
--input_type=image_tensor \
--pipeline_config_path=pipeline.config \
--trained_checkpoint_prefix=train/model.ckpt-xxxxx \
--output_directory=output

该程序执行完后,我们可得到 frozen_inference_graph.pb 以及一堆检查点文件。

第2步:在视频流上使用

我们需要从视频源中提出每一帧,这可以使用 OpenCV 的 VideoCapture 方法完成,代码如下所示:

cap = cv2.VideoCapture()
flag = True
while(flag):
    flag, frame = cap.read()
    ## -- Object Detection Code --

第一阶段使用的数据提取代码会使我们的测试集图像自动创建“test_images”文件夹。我们的模型可以通过执行以下命令在测试集上进行工作:

python object_detection/inference.py \
--input_dir={PATH} \
--output_dir={PATH} \
--label_map={PATH} \
--frozen_graph={PATH} \
--num_output_classes=1 \
--n_jobs=1 \
--delay=0

实验

正如前面所讲到的,在选择目标检测模型时,速度与准确度不可得兼。对此我们进行了一些实验,测量使用三种不同的模型检测到人的 FPS 和数量精确度。此外,我们的实验是在不同的资源约束 (GPU并行约束) 条件下操作的。

设置

我们的实验选择了以下的模型,这些模型可以在 TensorFlow 目标检测API 的Zoo 模块中找到。

所有的模型都在 Google Colab 上进行了 10k 步训练,通过比较模型检测到的人数与实际人数之间的接近程度来衡量计数准确度。在一下约束条件下测试 FPS 的推理速度。

  • Single GPU

  • Two GPUs in parallel

  • Four GPUs in parallel

  • Eight GPUs in parallel

结果

下面的 GIF 是我们在测试集上使用 FasterRCNN 输出的片段。

image

训练时间

图11展示了以10 k步 (单位:小时) 训练每个模型所需的时间 (不包括参数搜索所需要的时间)

image

图11 各模型训练所需时间

速度 (每秒帧数)

在之前的实验中,我们测量了3种模型在5种不同资源约束下的 FPS 性能,其测量结果如图12所示:

image

图12 使用不同 GPU 数量下的 FPS 性能

当我们使用单个 GPU 时,SSD速度非常快,轻松超越 FasterRCNN 的速度。但是当 GPU 个数增加时,FasterRCNN 很快就会追上 SSD 。

为了证明我们的结论:视频处理系统的速度不能高于图像输入系统的速度,我们优先读取图像。图13展示了添加延迟后带有 NobileNet +SSD 的 FPS 改进状况,从图13中可看出当我们加入延迟后,FPS 迅速增加。

image

图13 增加不同延迟后模型的 FPS 改进状况

计数准确性

我们将计数准确度定义为目标检测系统正确识别出人脸的百分比。图14是我们每个模型精确度的表现,从图14中可看出 FasterRCNN 是准确度最高的模型,MobileNet 的性能优于 InceptionNet。

image

图 14 各模型计数精确度

Nanonets

看到这里相信大家都有一个共同的感受——步骤太多了吧!是的,如果是这样的一个模型在实际工作即繁重又昂贵。

为此,更好的解决方案就是使用已部署在服务器上的 API 服务。Nanonets 就提供了这样的一个 API,他们将 API 部署在带有 GPU 的高质量硬件上,以便开发者不用为性能而困扰。

Nanonets 可以减少工作的流程的方法在于:我将现有的 XML 注释转换成 JSON 格式并提供给 Nanonets API。所以当不想进行手动注释数据集时,可以直接请求 Nanonets API来为数据添加注释。

image

上图表示为减少后的工作流程

Nanonets 的训练时间大约花了 2 个小时,就训练时间而言,Nanonets 是明显的赢家,并且在准确性方面 Nanonets 也击败了 FasterRCNN。

FasterRCNN Count Accuracy = 88.77%
Nanonets Count Accuracy = 89.66%

下面的视频展现了我们的测试数据集中四个模型的性能。显然,两种 SSD 模型都有点不稳定并且精度较低。尽管 FasterRCNN 和 Nanonets 都有较高的精准度,但 Nanonets 具有更稳定的边界框。

自动监控的可信度有多高?

深度学习是一种令人惊叹的工具。但是我们在多大程度上可以信任我们的监控系统并自动采取行动?在以下几个情况下,自动化过程时需要引起注意。

可疑的结论

我们不知道深度学习算法是如何得出结论的。即使数据的馈送过程很完美,也可能存在大量虚假的成功例子。虽然引导反向传播在一定程度上可以解释决策,但是关于这方面的研究还有待我们进一步的研究。

对抗性攻击

深度学习系统很脆弱,对抗性攻击类似于图像的视错觉。计算出的不明显干扰会迫使深度学习模型分类失误。使用相同的原理,研究人员已经能够通过使用 adversarial glasses 来规避基于深度学习的监控系统。

误报

另一个问题是,如果出现误报我们该怎么做。该问题的严重程度取决于应用程序本身。例如边境巡逻系统的误报可能比花园监控系统更重要。

相似的面孔

外观并不像指纹一样独一无二,同卵双胞胎是最好的一个例子。这会带来恨大的干扰。

数据集缺乏多样性

深度学习算法的好坏和数据集有很大关联,Google 曾将一个黑人错误归类为大猩猩。

注:鉴于 GDPR 和以上原因,关于监控自动化的合法性和道德性问题是不可忽视的。此教程也是出于并仅用于学习分享目的。在教程中使用的公开数据集,所以在使用过程中有责任确保它的合法性。

原文链接

https://medium.com/nanonets/how-to-automate-surveillance-easily-with-deep-learning-4eb4fa0cd68d

——【完】——

在线公开课 知识图谱专场

精彩继续

时间:8月9日(本周四):20:00-21:00

添加微信csdnai,备注:公开课,加入课程交流群

参加公开课,向讲师提问,即有机会获得定制T恤或者技术书籍

image


          Machine Learning in Node.js With TensorFlow.js      Cache   Translate Page   Web Page Cache   

TensorFlow.js is a new version of the popular open-source library which brings deep learning to javascript. Developers can now define, train, and run machine learning models using the high-level library API .

Pre-trained models mean developers can now easily perform complex tasks like visual recognition , generating music or detecting human poses with just a few lines of JavaScript.

Having started as a front-end library for web browsers, recent updates added experimental support for Node.js. This allows TensorFlow.js to be used in backend JavaScript applications without having to use python.

Reading about the library, I wanted to test it out with a simple task…

Use TensorFlow.js to perform visual recognition on images using JavaScript from Node.js

Unfortunately, most of the documentation and example code provided uses the library in a browser. Project utilities provided to simplify loading and using pre-trained models have not yet been extended with Node.js support. Getting this working did end up with me spending a lot of time reading the Typescript source files for the library. :-1:

However, after a few days’ hacking, I managed to get this completed ! Hurrah!

Before we dive into the code, let’s start with an overview of the different TensorFlow libraries.


          Machine Learning leveraging NVIDIA GPUs with Bitfusion on VMware vSphere (Part 2 of 2)      Cache   Translate Page   Web Page Cache   

In Part 1 we described the solution components and the test cases. In this part we will look a the results from our testing. Benchmark: tf_cnn_benchmarks suite (TensorFlow)   The testing was done with tf_cnn_benchmarks, one of Tensorflow benchmark suites. This benchmark suite is designed for performance, since its models utilize the strategies employed in

The post Machine Learning leveraging NVIDIA GPUs with Bitfusion on VMware vSphere (Part 2 of 2) appeared first on Virtualize Applications.


          Principal Data Scientist - Rio Tinto - Montréal, QC      Cache   Translate Page   Web Page Cache   
Python (Sci-kit Learn, numpy, pandas, Tensorflow, Keras), R, Matlab, SQL. Scientifique principal des données — Montréal....
From Rio Tinto - Wed, 01 Aug 2018 11:02:26 GMT - View all Montréal, QC jobs
          Ingénieur en apprentissage automatique - Groom & Associates - Montréal, QC      Cache   Translate Page   Web Page Cache   
Expérience avec tensorflow ou d'autres backends, keras ou autres frameworks, scikit-learn, OpenCV, Pandas. Experience with tensorflow or other backends, keras...
From Groom & Associates - Thu, 07 Jun 2018 17:10:46 GMT - View all Montréal, QC jobs
          Machine Learning/AI Engineer - Groom & Associates - Montréal, QC      Cache   Translate Page   Web Page Cache   
Expérience avec tensorflow ou d'autres backends, keras ou autres frameworks, scikit-learn, OpenCV, Pandas. Experience with tensorflow or other backends, keras...
From Groom & Associates - Thu, 07 Jun 2018 14:58:16 GMT - View all Montréal, QC jobs
          Platform Developer, Machine Learning - Kinaxis - Ottawa, ON      Cache   Translate Page   Web Page Cache   
Experience with Machine Learning projects, familiarity with platforms or languages such as scikit-learn, Pandas, NumPy, SciPy, R, TensorFlow....
From Kinaxis - Wed, 08 Aug 2018 20:38:15 GMT - View all Ottawa, ON jobs
          Parallax: Automatic Data-Parallel Training of Deep Neural Networks. (arXiv:1808.02621v1 [cs.DC])      Cache   Translate Page   Web Page Cache   

Authors: Soojeong Kim, Gyeong-In Yu, Hojin Park, Sungwoo Cho, Eunji Jeong, Hyeonmin Ha, Sanha Lee, Joo Seong Jeong, Byung-Gon Chun

The employment of high-performance servers and GPU accelerators for training deep neural network models have greatly accelerated recent advances in machine learning (ML). ML frameworks, such as TensorFlow, MXNet, and Caffe2, have emerged to assist ML researchers to train their models in a distributed fashion. However, correctly and efficiently utilizing multiple machines and GPUs is still not a straightforward task for framework users due to the non-trivial correctness and performance challenges that arise in the distribution process. This paper introduces Parallax, a tool for automatic parallelization of deep learning training in distributed environments. Parallax not only handles the subtle correctness issues, but also leverages various optimizations to minimize the communication overhead caused by scaling out. Experiments show that Parallax built atop TensorFlow achieves scalable training throughput on multiple CNN and RNN models, while requiring little effort from its users.


          Deep learning anomalies with TensorFlow and Apache Spark      Cache   Translate Page   Web Page Cache   
Deep learning is always among the hottest topics and TensorFlow is one of the most popular frameworks out there. In this session, Khanderao Kand ...
          KI für den Raspberry Pi: Tensorflow macht’s möglich      Cache   Translate Page   Web Page Cache   
Das KI-Framework Tensorflow von Google unterstützt jetzt auch den Raspberry Pi. Machine Learning ist damit für den Einplatinen-Rechner kein Problem mehr. KI-Lösungen auf dem Einplatinen-Rechner Raspberry Pi: Das ist mit dem neuen Update 1.9 des Machine-Learning-Frameworks Tensorflow ohne Probleme möglich.

Was ist Tensorflow?

Tensorflow ist ein von Google entwickeltes Machine-Learning-Framework. Ursprünglich wurde Tensorflow für den internen Bedarf bei Google entwickelt. Später wurde das Framework jedoch unter einer Open-Source-Lizenz veröffentlicht. Genutzt wird Tensorflow hauptsächlich mit der Sprache Python. Denkbar sind aber auch Java, C oder Go.
Als Google Tensorflow veröffentlicht hat, sollte es auf so vielen Plattformen wie möglich laufen. Unterstützt wurden bislang Windows, macOS, Linux, iOS und Android. Die Entwicklung für den Einplatinen-Rechner war hingegen mit großem Aufwand verbunden, schreibt einer der Tensorflow-Developer auf Medium. Dank einer Zusammenarbeit mit der Raspberry-Pi-Foundation ist die Unterstützung jedoch ab der Version 1.9 geglückt.

Unglaubliche Raspberry-Pi-Projekte

Was alles mit dem Raspberry Pi möglich ist, zeigen euch bereits diese unglaublichen Projekte. Mit dem Open-Source-Framework erweitern sich die Möglichkeiten aber nochmal deutlich, da nun der Einsatz von KI und Machine Learning auf dem Minirechner denkbar einfach geworden ist. Wozu Tensorflow in der Lage ist, zeigen auch ein Großteil der Google-Lösungen. Denn bei vielen kommt das Framework bereits zum Einsatz. Etwa beim Google-Übersetzer oder der Bildersuche. [gallery booster="true" title="Magic Mirror: Spiegel zeigt Wetter und Nachrichten – dank Raspberry Pi" id="560292" ids="560301,560300,560302,560304,560305,560306,560303"] Um loszulegen, benötigt ihr lediglich das Betriebsystem Raspbian ab der Version 9 auf eurem Raspberry Pi. Für die Entwicklung kommt ihr außerdem nicht um Python herum. Benötigt wird entweder die Version 2.7 beziehungsweise 3.4 oder neuer. Installieren könnt ihr Tensorflow mit dem Verwaltungswerkzeug „pip“ für Python. Mehr Details zur Installation findet ihr hier. Auch spannend:
          Node Best Practices, Machine Learning in Node with TensorFlow.js and more      Cache   Translate Page   Web Page Cache   

#250 — August 9, 2018

Read on the Web

Node Weekly

Dumper.js: A Pretty Variable Inspector for Node — If you’re one for ‘print-style’ debugging, this could prove very handy for you. You can either dump out the object of your choice (including nested objects) and keep running or terminate the process.

Zeeshan Ahmed

A Curated Compilation of Node Best Practices — Curated from numerous popular articles, this in-development list of best practices covers topics from error handling to memory use and, most recently, security.

Yoni Goldberg

Move Fast and Fix Stuff. Over 500K Developers Fix Errors with Sentry — Relying on users to report errors? Use Sentry to resolve errors right in your workflow. Route alerts to the right person based on the commit and cut remediation time to 5 minutes. Sentry is open source and loved by 500K developers. Sign up for free.

Sentry sponsor

Got 9.0: A Powerful HTTP Request Library for Node.js — Got is a popular HTTP request library from one-man package powerhouse Sindre Sorhus. Version 9 is a significant release that uses the latest Node 8+ features and has a significantly smaller install size.

Sindre Sorhus

Machine Learning in Node with TensorFlow.js — TensorFlow.js brings TensorFlow’s machine learning capabilities to JavaScript, and while it’s been browser-focused so far, experimental support for Node has now been introduced. Here’s how it works.

James Thomas

Community Questions Following the ESLint Security Incident — Almost a month ago, there was an incident where a heavily used module was hijacked. This post answers a few outstanding questions about what happened and what measures are being taken to avoid similar incidents.

The npm Blog

💻 Jobs

NodeJS Development in Beautiful Norway — We are adding to our team building low latency back-ends for awesome developer experience and scalable software. Check us out.

Snowball Digital

Join Our Career Marketplace & Get Matched With a Job You Love — Through Hired, software engineers have transparency into salary offers, competing opportunities and job details.

Hired

📘 Tutorials

Deploying a Stateful Application on Azure Kubernetes Service — Guides you through the process of deploying a stateful, Dockerized Node app (the Ghost blogging platform) on the Azure Kubernetes Service.

Kristof Ivancza

How to Create a Serverless Twitter Bot on Google Cloud — Google Cloud Functions went GA last week, so why not take it for a spin?

William Saar

▶  An Introduction to Web Scraping with Node and CheerioCheerio provides jQuery-style DOM manipulation server-side.

Traversy Media

The Three Types of Node Profilers You Should Know About — A look at standard profilers, tracing profilers and APM tools.

Ben Putano

Squeeze Node Performance with Flame Graphs — Investigating and optimizing a Node API using flame graphs.

Alexandru Olaru

▶  How to Approach Security with Node.js — A conversation with Google Engineer Mike Samuel.

Node.js Foundation

Best in Class Video Infrastructure in Two API Requests

MUX sponsor

🔧 Code and Tools

PrettyError: See Node.js Errors with Less Clutter and Better Formatting

Aria Minaei

chromium-headless-remote: Dockerized Chromium in Headless Remote Debugging Mode — Ideal to use with Puppeteer.

Kir Belevich

Be the First to Try Powerful CI/CD Pipelines in Semaphore 2.0 — Model your workflow from commit to deploy the simple way with powerful pipelines. Get your invite to try it.

Semaphore sponsor

Camaro: A High Performance XML to JSON Converter — Uses bindings to pugixml, a fast C++ XML parser.

Tuan Anh Tran

Kakapo.js: A 'Next Gen' HTTP Mocking Framework

DevLucky

Fiora: A Chat App Powered by Socket.io, Koa, MongoDB and React

碎碎酱

fast-memoize: The 'Fastest Possible' JS Memoization Library

Caio Gondim


          Principal Data Scientist - Rio Tinto - Montréal, QC      Cache   Translate Page   Web Page Cache   
Python (Sci-kit Learn, numpy, pandas, Tensorflow, Keras), R, Matlab, SQL. Scientifique principal des données — Montréal....
From Rio Tinto - Wed, 01 Aug 2018 11:02:26 GMT - View all Montréal, QC jobs
          Ingénieur en apprentissage automatique - Groom & Associates - Montréal, QC      Cache   Translate Page   Web Page Cache   
Expérience avec tensorflow ou d'autres backends, keras ou autres frameworks, scikit-learn, OpenCV, Pandas. Experience with tensorflow or other backends, keras...
From Groom & Associates - Thu, 07 Jun 2018 17:10:46 GMT - View all Montréal, QC jobs
          Machine Learning/AI Engineer - Groom & Associates - Montréal, QC      Cache   Translate Page   Web Page Cache   
Expérience avec tensorflow ou d'autres backends, keras ou autres frameworks, scikit-learn, OpenCV, Pandas. Experience with tensorflow or other backends, keras...
From Groom & Associates - Thu, 07 Jun 2018 14:58:16 GMT - View all Montréal, QC jobs
          Platform Developer, Machine Learning - Kinaxis - Ottawa, ON      Cache   Translate Page   Web Page Cache   
Experience with Machine Learning projects, familiarity with platforms or languages such as scikit-learn, Pandas, NumPy, SciPy, R, TensorFlow....
From Kinaxis - Wed, 08 Aug 2018 20:38:15 GMT - View all Ottawa, ON jobs
          Getting Alexa to Respond to Sign Language Using Your Webcam and TensorFlow.js      Cache   Translate Page   Web Page Cache   
Comments
          Tensorflow age and sex detection in python      Cache   Translate Page   Web Page Cache   
Looking for a python master to build an age and sex script in Tensorflow which should be using a webcam and open cv. (Budget: €30 - €250 EUR, Jobs: Linux, Machine Learning, Python, Tensorflow)
          Startupxplore cierra la inversión en Triporate en una hora      Cache   Translate Page   Web Page Cache   

Startupxplore, comunidad de startups e inversores de España, vuelve a batir el récord en España de velocidad en plataformas de inversión y cierra la ronda de Triporate en solo una hora. La startup española, que usa inteligencia artificial para mejorar los procesos de petición y gestión de viajes de empresa, ha captado 266.000 euros a través de la plataforma, aunque el total de Triporate ha sido de 320.000 euros. En la ronda han participado 36 inversores de Startupxplore. Triporate, cuenta con el respaldo de Bankinter y Aurorial como inversores.

La operación ha alcanzado los 293.500 euros de inversión comprometida tan solo una hora después de ser abierta a los inversores registrados en Startupxplore. Así, ha superado con creces su objetivo inicial de 225.000 euros y ha generado listas de espera.

La startup destinará los fondos fundamentalmente a desarrollo de producto y seguirá con la implementación de diferentes capas de inteligencia artificial y la mejora de procesos. Reforzará además sus acciones comerciales y, a medida que siga cumpliendo hitos, redimensionará su equipo de operaciones.

Startupxplore ha batido su propio récord y ha superado en velocidad a la operación de Glassy que cerró en 2017 en solo dos horas. En palabras de Javier Megias, CEO de Startupxplore: "Estamos muy contentos de ver que a nuestros inversores les gustan las oportunidades que lanzamos, pero nuestro principal desafío es que aprendan a crear una cartera de inversión sana y bien balanceada. En Startupxplore primamos la calidad a la cantidad".

El crecimiento de esta joven startup y su foco tecnológico irán de la mano de Google en los próximos meses, ya que Triporate forma parte del programa Campus Residency, donde están trabajando en tres pilares fundamentales: Amp4email (que permite interactuar en el propio email, la gran apuesta de Google), Tensorflow (la tecnología de inteligencia artificial de Google para generar aprendizaje y mejor experiencia de usuario) y NLP (para interpretar el lenguaje natural y automatizar el proceso de la gestión de viaje, evitando fallos humanos).

Gracias a la aplicación de estas tecnologías, y a la mejora de procesos, Triporate realiza la gestión completa del viaje, entre 8 y 10 veces más eficiente y rápida que las agencias de viaje convencionales.

A pesar de su joven trayectoria, la agencia de viajes tecnológica tiene una tasa de crecimiento medio mensual del 88% en su facturación, fidelizando de momento al 100% de sus clientes, combinando la agilidad y la eficiencia de la Inteligencia Artificial con un servicio  personalizado para pequeña y mediana empresa.


          TensorFlow workshop by IAȘI AI, 25 August      Cache   Translate Page   Web Page Cache   
Interested in improving your #ML skills with TensorFlow? Join IAȘI AI first workshop on #TensorFlow that will take place on Saturday, August 25th at Fab Lab Iasi. Prerequisites: – Previous development experience with Python – TensorFlow and Jupyter installed on your laptop Registration is open until Tuesday, July 31st and selected participants will be announced […]
          Weekly Machine Learning Opensource Roundup – Aug. 9, 2018      Cache   Translate Page   Web Page Cache   
Examples 100 Days Of ML Code 100 Days of Machine Learning Coding Making Alexa respond to Sign Language using Tensorflow.js A project to make Amazon Echo respond to sign language using your webcam Deep Hive Using your audience as a hive mind for deep learning Toolsets gandiva A Vectorized processing toolset for compiling and evaluating … Continue reading Weekly Machine Learning Opensource Roundup – Aug. 9, 2018
          (IT) Machine Learning Backend Java Developer      Cache   Translate Page   Web Page Cache   

Location: New York City, NY   

Software Guidance & Assistance, Inc., (SGA), is searching for a Machine Learning Backend Java Developer for a contract to hire assignment with one of our premier financial services clients in New York, NY. Responsibilities : Common Services focus on providing multiple services, including: Common Software/Reuse Develop and maintain common components, micro-services, and frameworks across multiple technologies (eg, Java, data) Tooling Support tools across multiple disciplines (eg, developer, data, testing, PM) Foundational Services SharePoint, UI, data services (eg, ETL, data masking) Engineering, Platforms and COTS Services Standing-up first time and providing ongoing expertise (eg, Appian, SiteCore, Hadoop big data solutions, Natural language processing) Data Services team, which is subset of a Common Services team is seeking a developer to work on Java and machine learning projects using open source technologies. Primary responsibilities will include working with a team dedicated to the design, development, and delivery of Java applications using open source technologies for the organization's machine learning platform. This solution will eventually be providing services across multiple lines of business within the internal System. Will collaborate closely with J2EE and Data architects for design work and develop secure and scalable machine learning application solutions using Java and open source technologies. Required Skills : 7-8 years of experience working with Java as hands on developer architecting applications 2 to 3 years working with Artificial Intelligence, Machine Learning, or Natural Language Processing open source libraries such as TensorFlow, Theano, scikit-learn, spaCY, Word2Vec, Glove etc. Strong relational and NoSQL database skills Excellent written and communication Skills Experience with Spring framework development and scaling JVM-based systems and services Unit/Integration Testing Web security best practices Restful web communication (AJAX/JSON) Ability to work independently Strong knowledge of the software development life cycle and agile development methodology Experience with Docker and deploying containerized services SGA is a Certified Women's Business Enterprise (WBE) celebrating over thirty years of service to our national client base for both permanent placement and consulting opportunities.
 
Type: Unspecified
Location: New York City, NY
Country: United States of America
Contact: Jeff Higbee
Advertiser: Software Guidance & Assistance
Reference: NT18-02634



Next Page: 10000

Site Map 2018_01_14
Site Map 2018_01_15
Site Map 2018_01_16
Site Map 2018_01_17
Site Map 2018_01_18
Site Map 2018_01_19
Site Map 2018_01_20
Site Map 2018_01_21
Site Map 2018_01_22
Site Map 2018_01_23
Site Map 2018_01_24
Site Map 2018_01_25
Site Map 2018_01_26
Site Map 2018_01_27
Site Map 2018_01_28
Site Map 2018_01_29
Site Map 2018_01_30
Site Map 2018_01_31
Site Map 2018_02_01
Site Map 2018_02_02
Site Map 2018_02_03
Site Map 2018_02_04
Site Map 2018_02_05
Site Map 2018_02_06
Site Map 2018_02_07
Site Map 2018_02_08
Site Map 2018_02_09
Site Map 2018_02_10
Site Map 2018_02_11
Site Map 2018_02_12
Site Map 2018_02_13
Site Map 2018_02_14
Site Map 2018_02_15
Site Map 2018_02_15
Site Map 2018_02_16
Site Map 2018_02_17
Site Map 2018_02_18
Site Map 2018_02_19
Site Map 2018_02_20
Site Map 2018_02_21
Site Map 2018_02_22
Site Map 2018_02_23
Site Map 2018_02_24
Site Map 2018_02_25
Site Map 2018_02_26
Site Map 2018_02_27
Site Map 2018_02_28
Site Map 2018_03_01
Site Map 2018_03_02
Site Map 2018_03_03
Site Map 2018_03_04
Site Map 2018_03_05
Site Map 2018_03_06
Site Map 2018_03_07
Site Map 2018_03_08
Site Map 2018_03_09
Site Map 2018_03_10
Site Map 2018_03_11
Site Map 2018_03_12
Site Map 2018_03_13
Site Map 2018_03_14
Site Map 2018_03_15
Site Map 2018_03_16
Site Map 2018_03_17
Site Map 2018_03_18
Site Map 2018_03_19
Site Map 2018_03_20
Site Map 2018_03_21
Site Map 2018_03_22
Site Map 2018_03_23
Site Map 2018_03_24
Site Map 2018_03_25
Site Map 2018_03_26
Site Map 2018_03_27
Site Map 2018_03_28
Site Map 2018_03_29
Site Map 2018_03_30
Site Map 2018_03_31
Site Map 2018_04_01
Site Map 2018_04_02
Site Map 2018_04_03
Site Map 2018_04_04
Site Map 2018_04_05
Site Map 2018_04_06
Site Map 2018_04_07
Site Map 2018_04_08
Site Map 2018_04_09
Site Map 2018_04_10
Site Map 2018_04_11
Site Map 2018_04_12
Site Map 2018_04_13
Site Map 2018_04_14
Site Map 2018_04_15
Site Map 2018_04_16
Site Map 2018_04_17
Site Map 2018_04_18
Site Map 2018_04_19
Site Map 2018_04_20
Site Map 2018_04_21
Site Map 2018_04_22
Site Map 2018_04_23
Site Map 2018_04_24
Site Map 2018_04_25
Site Map 2018_04_26
Site Map 2018_04_27
Site Map 2018_04_28
Site Map 2018_04_29
Site Map 2018_04_30
Site Map 2018_05_01
Site Map 2018_05_02
Site Map 2018_05_03
Site Map 2018_05_04
Site Map 2018_05_05
Site Map 2018_05_06
Site Map 2018_05_07
Site Map 2018_05_08
Site Map 2018_05_09
Site Map 2018_05_15
Site Map 2018_05_16
Site Map 2018_05_17
Site Map 2018_05_18
Site Map 2018_05_19
Site Map 2018_05_20
Site Map 2018_05_21
Site Map 2018_05_22
Site Map 2018_05_23
Site Map 2018_05_24
Site Map 2018_05_25
Site Map 2018_05_26
Site Map 2018_05_27
Site Map 2018_05_28
Site Map 2018_05_29
Site Map 2018_05_30
Site Map 2018_05_31
Site Map 2018_06_01
Site Map 2018_06_02
Site Map 2018_06_03
Site Map 2018_06_04
Site Map 2018_06_05
Site Map 2018_06_06
Site Map 2018_06_07
Site Map 2018_06_08
Site Map 2018_06_09
Site Map 2018_06_10
Site Map 2018_06_11
Site Map 2018_06_12
Site Map 2018_06_13
Site Map 2018_06_14
Site Map 2018_06_15
Site Map 2018_06_16
Site Map 2018_06_17
Site Map 2018_06_18
Site Map 2018_06_19
Site Map 2018_06_20
Site Map 2018_06_21
Site Map 2018_06_22
Site Map 2018_06_23
Site Map 2018_06_24
Site Map 2018_06_25
Site Map 2018_06_26
Site Map 2018_06_27
Site Map 2018_06_28
Site Map 2018_06_29
Site Map 2018_06_30
Site Map 2018_07_01
Site Map 2018_07_02
Site Map 2018_07_03
Site Map 2018_07_04
Site Map 2018_07_05
Site Map 2018_07_06
Site Map 2018_07_07
Site Map 2018_07_08
Site Map 2018_07_09
Site Map 2018_07_10
Site Map 2018_07_11
Site Map 2018_07_12
Site Map 2018_07_13
Site Map 2018_07_14
Site Map 2018_07_15
Site Map 2018_07_16
Site Map 2018_07_17
Site Map 2018_07_18
Site Map 2018_07_19
Site Map 2018_07_20
Site Map 2018_07_21
Site Map 2018_07_22
Site Map 2018_07_23
Site Map 2018_07_24
Site Map 2018_07_25
Site Map 2018_07_26
Site Map 2018_07_27
Site Map 2018_07_28
Site Map 2018_07_29
Site Map 2018_07_30
Site Map 2018_07_31
Site Map 2018_08_01
Site Map 2018_08_02
Site Map 2018_08_03
Site Map 2018_08_04
Site Map 2018_08_05
Site Map 2018_08_06
Site Map 2018_08_07
Site Map 2018_08_08
Site Map 2018_08_09