机器/深度学习Mask_RCNN、OpenNE、Horovod、MMLSpark介绍

以下为你介绍的机器学习/深度学习软件都可用在Linux系统上:Mask_RCNN(Keras 和 TensorFlow 上的对象检测和实例分割)、OpenNE(用于网络嵌入的开源工具包)、Horovod(TensorFlow 分布式深度学习框架)、MMLSpark(用于 Apache Spark 的深度学习库)。

1、Mask_RCNN(Keras 和 TensorFlow 上的对象检测和实例分割)

机器/深度学习Mask_RCNN、OpenNE、Horovod、MMLSpark介绍

Mask_RCNN 是对 Python 3,Keras和TensorFlow的Mask R-CNN 的实现。该模型为图像中每个对象的实例生成边界框和分割蒙版。它基于 Feature Pyramid Network(FPN)和 ResNet101 backbone。

该存储库包括:

基于FPN和ResNet101构建的Mask R-CNN的源代码。

MS COCO的培训代码。

MS COCO的预训练砝码。

Jupyter笔记本电脑可在每个步骤可视化检测管线。

用于多GPU训练的ParallelModel类。

评估MS COCO指标(AP)。

自己的数据集训练示例。

下载地址:https://github.com/matterport/Mask_RCNN

2、OpenNE(用于网络嵌入的开源工具包)

OpenNE 是清华大学开源的 NE/NRL 训练和测试框架,统一了不同 NE 模型输入和输出接口,并为每个模型提供可扩展选项。此外,还用 TensorFlow 实现了经典 NE 模型,使这些模型可以用 GPU 训练。

OpenNE 实现和修改的模型包括 DeepWalk、LINE、node2vec、GraRep、TADW 和 GCN,后续还将根据已公布的 NRL 论文持续实现更多有代表性的 NE 模型。

要求:

numpy==1.13.1

networkx==2.0

scipy==0.19.1

tensorflow==1.3.0

gensim==3.0.1

scikit-learn==0.19.0

与其他实现对比:

运行环境:CPU:Intel(R)Xeon(R)CPU E5-2620 v3 @ 2.40GHz

BlogCatalog: 10312 nodes, 333983 edges, 39 labels, 非定向:

data/blogCatalog/bc_adjlist.txt

data/blogCatalog/bc_edgelist.txt

data/blogCatalog/bc_labels.txt

机器/深度学习Mask_RCNN、OpenNE、Horovod、MMLSpark介绍

Wiki: 2405 nodes, 17981 edges, 19 labels, 定向:

data/wiki/Wiki_edgelist.txt

data/wiki/Wiki_category.txt

机器/深度学习Mask_RCNN、OpenNE、Horovod、MMLSpark介绍

cora: 2708 nodes, 5429 edges, 7 labels, 定向:

data/cora/cora_edgelist.txt

data/cora/cora.features

data/cora/cora_labels.txt

机器/深度学习Mask_RCNN、OpenNE、Horovod、MMLSpark介绍

下载地址:https://github.com/thunlp/OpenNE

3、Horovod(TensorFlow 分布式深度学习框架)

Horovod 是 Uber 开源的针对 TensorFlow 的分布式深度学习框架,旨在使分布式深度学习更快速,更易于使用。

Horovod 吸取了 Facebook 的 Training ImageNet in 1 Hour(一小时训练 ImageNet) 论文与百度 Ring Allreduce 的优点,为用户实现分布式训练提供帮助。该项目主要是想能够轻松采用单个 GPU TensorFlow 程序,同时也能更快地在多个 GPU 上成功地对其进行训练。使用 Horovod 我们可以不需要再去担心或学习很多东西,如 tf.Server()、tf.ClusterSpec()、tf.train.SyncReplicasOptimizer()、tf.train.replicas_device_setter()等等。

除了易于使用,Horovod 的速度也很快。下图为 Inception V3 和 ResNet-101 TensorFlow 模型在 25GbE TCP 上使用不同数量的 NVIDIA Pascal GPU 时,使用标准分布式 TensorFlow 和 Horovod 运行分布式训练工作每秒处理的图像数量对比。

机器/深度学习Mask_RCNN、OpenNE、Horovod、MMLSpark介绍

安装命令:

$ pip install horovod

下载地址:https://github.com/horovod/horovod

4、MMLSpark(用于 Apache Spark 的深度学习库)

MMLSpark,即 Microsoft Machine Learning for Apache Spark,是微软开源的一个针对 Apache Spark 的深度学习和数据可学工具,为大型映像和文本数据库快速创建强大、可缩放性能优越的预测和分析模型。

MMLSpark 可与 Microsoft Cognitive Toolkit (CNTK,微软认知工具包) 和 OpenCV (计算机视觉库)无缝集成,允许:

流入和预处理图像数据。

使用预先定型的深度学习模型特征化图像和文本。

使用隐式特征化对分类和回归模型进行定型和评分。

示例:

...

import mmlspark

# Initialize CNTKModel and define input and output columns

cntkModel = mmlspark.CNTKModel() \

 .setInputCol("images").setOutputCol("output") \

 .setModelLocation(modelFile)

# Train on dataset with internal spark pipeline

scoredImages = cntkModel.transform(imagesWithLabels)

...

下载地址:https://github.com/Azure/mmlspark

注明

以上就是机器/深度学习Mask_RCNN、OpenNE、Horovod、MMLSpark的介绍内容,这些机器学习/深度学习软件都能使用在Linux操作系统中。

栏目相关文章