微软开源的Apache Spark的机器学习包MMLSpark

微软开源的Apache Spark的机器学习包MMLSpark

  • 开源协议:MIT
  • 操作系统: Linux
  • 开发语言:Scala
  • 项目所有者:Azure
  • 所属公司:微软
  • 收录时间:2017-06-12
  • 分享:
编辑评级
4

项目详细介绍

微软机器学习

MMLSpark为Apache Spark提供了大量深入学习和数据科学工具,包括将Spark Machine Learning管道与Microsoft Cognitive Toolkit(CNTK)OpenCV进行无缝集成,使您能够快速创建功能强大,高度可扩展的大型图像预测和分析模型和文本数据集。

MMLSpark需要Scala 2.11,Spark 2.1+,以及Python 2.7或Python 3.5+。请参阅Scala和 PySpark的API 文档

显着特点

  • 从HDFS轻松摄取图像到Spark DataFrame示例:301
  • 使用OpenCV进行转换的预处理图像数据(示例:302
  • 使用CNTK进行预训练的深层神经网络(示例:301
  • 在Azure上的N系列GPU虚拟机上训练基于DNN的图像分类模型
  • 通过单个变换器在SparkML中的基元上方使用方便的API实现自由格式的文本数据(示例:201
  • 列车分类和回归模型容易通过数据的隐式特征化(示例:101
  • 计算一组丰富的评估指标,包括每个实例的指标(示例:102

查看我们的笔记本电脑的所有例子。

一个简单的例子

以下是使用预先训练的CNN在CIFAR-10数据集中分类图像的简单示例的摘录。查看整个源代码作为示例笔记本

...
import mmlspark as mml
# Initialize CNTKModel and define input and output columns
cntkModel = mml.CNTKModel().setInputCol("images").setOutputCol("output").setModelLocation(modelFile)
# Train on dataset with internal spark pipeline
scoredImages = cntkModel.transform(imagesWithLabels)
...

请参阅其他示例笔记本以及Scala 和PySpark的MMLSpark文档

安装和安装

搬运工人

评估MMLSpark的最简单方法是通过我们预先构建的Docker容器。为此,请运行以下命令:

docker run -it -p 8888:8888 -e ACCEPT_EULA=yes microsoft/mmlspark

浏览您的网页浏览器中的http:// localhost:8888以运行示例笔记本。有关 Docker使用的更多信息,请参阅 文档

要阅读EULA使用码头图像,请运行docker run -it -p 8888:8888 microsoft / mmlspark eula

火花包

MMLSpark可以通过--packages选项方便地安装在现有的Spark群集上 ,例如:

spark-shell --packages com.microsoft.ml.spark:mmlspark_2.11:0.5 \
            --repositories=https://mmlspark.azureedge.net/maven

pyspark --packages com.microsoft.ml.spark:mmlspark_2.11:0.5 \
        --repositories=https://mmlspark.azureedge.net/maven

spark-submit --packages com.microsoft.ml.spark:mmlspark_2.11:0.5 \
             --repositories=https://mmlspark.azureedge.net/maven \
             MyApp.jar

HDInsight

要在现有的HDInsight Spark Cluster上安装MMLSpark ,可以在集群头和工作节点上执行脚本操作。有关运行脚本操作的说明,请参阅本指南

脚本

操作网址是:https: //mmlspark.azureedge.net/buildartifacts/0.5/install-mmlspark.sh

如果您使用Azure Portal运行脚本操作,请转到群集刀片中的Script actions⇒ 。在该 字段中,输入上面提供的脚本操作URL。标记其余的选项,如右侧的屏幕截图所示。Submit newOverviewBash script URI

提交,集群应在10分钟内完成配置。

数据库云

要在Databricks云上安装MMLSpark ,请在工作空间中从Maven坐标创建一个新  。

对于坐标使用:com.microsoft.ml.spark:mmlspark:0.5。然后,在高级选项下,https://mmlspark.azureedge.net/maven用于存储库。确保此库附加到您创建的所有集群。

最后,确保您的Spark群集至少具有Spark 2.1和Scala 2.11。

您可以在Scala和PySpark笔记本中使用MMLSpark。

SBT

如果您正在构建Scala中的一个星火应用,下面几行添加到您的build.sbt

resolvers += "MMLSpark Repo" at "https://mmlspark.azureedge.net/maven"
libraryDependencies += "com.microsoft.ml.spark" %% "mmlspark" % "0.5"

从源码编译

您还可以通过克隆此repo并使用主构建脚本轻松创建自己的构建:./runme。运行一次以安装所需的依赖项,再次执行构建。有关详细信息,请参阅本指南

贡献与反馈

该项目采用了Microsoft开源行为准则。有关更多信息,请参阅行为准则常见问题或联系 opencode@microsoft.com与任何其他问题或意见。

CONTRIBUTING.md的贡献准则。

要提供反馈和/或报告问题,请打开GitHub问题

其他有关项目

标签:机器学习  微软

相关教程