如何使用 Conda Python 在本地机器上安装和使用 mmlspark?
How to install and use mmlspark on a local machine with Conda Python?
如何在装有 Intel Python 3.6 的本地计算机上安装和使用 MMLSpark?
import numpy as np
import pandas as pd
import pyspark
spark = pyspark.sql.SparkSession.builder.appName("MyApp") \
.config("spark.jars.packages", "Azure:mmlspark:0.13") \
.getOrCreate()
import mmlspark
from mmlspark import TrainClassifier
from pyspark.ml.classification import LogisticRegression
from mmlspark import ComputeModelStatistics, TrainedClassifierModel
dataFilePath = "AdultCensusIncome.csv"
import os, urllib
if not os.path.isfile(dataFilePath):
urllib.request.urlretrieve("https://mmlspark.azureedge.net/datasets/" + dataFilePath, dataFilePath)
data = spark.createDataFrame(pd.read_csv(dataFilePath, dtype={" hours-per-week": np.float64}))
data = data.select([" education", " marital-status", " hours-per-week", " income"])
train, test = data.randomSplit([0.75, 0.25], seed=123)
train.limit(10).toPandas()
model = TrainClassifier(model=LogisticRegression(), labelCol=" income", numFeatures=256).fit(train)
prediction = model.transform(test)
metrics = ComputeModelStatistics().transform(prediction)
metrics.limit(10).toPandas()
MMLSpark 不工作。有人可以帮助解决这个问题吗?
你的问题没有正确描述问题,但如果你正在寻找安装命令。那么请看下面,
先安装pyspark。
pip install pyspark
要在现有的 HDInsight Spark 群集上安装 MMLSpark,您可以在群集头节点和工作节点上执行脚本操作。有关 运行ning 脚本操作的说明,请参阅本指南。
脚本操作 url 是:https://mmlspark.azureedge.net/buildartifacts/0.13/install-mmlspark.sh.
如果您使用 Azure 门户 运行 脚本操作,请转到脚本操作 → 在群集边栏选项卡的概述部分中提交新的。在 Bash 脚本 URI 字段中,输入上面提供的脚本操作 URL。标记其余选项,如右侧屏幕截图所示。
提交,集群应该会在10分钟左右完成配置。
来自原始文档:-
https://github.com/Azure/mmlspark
尽管这是一个老问题(顺便提一下,这个问题很不恰当),但有些人可能仍然会受益。
为了使本地 Spark 环境与 mmlspark 一起工作,您必须设置环境变量 PYSPARK_SUBMIT_ARGS
。由于我使用的是 Jupyter,我发现通过脚本 ~/.jupyter/jupyter-env.sh
(如果您在 AWS EC2 实例中,则为 /etc/profile.d/jupyter-env.sh
)设置环境变量很有用。环境变量本身应该是:
PYSPARK_SUBMIT_ARGS='--packages com.microsoft.ml.spark:mmlspark_2.11:1.0.0-rc3,org.apache.spark:spark-avro_2.12:2.4.5 --repositories https://mmlspark.azureedge.net/maven pyspark-shell'
请注意,我们还必须将 org.apache.spark:spark-avro_2.12:2.4.5
冻结为可与 mmlspark 一起使用的版本。欢迎与其他人一起测试。
适合我的完整 jupyter-env.sh
脚本是:
export SPARK_HOME=/home/ec2-user/SageMaker/spark
export PATH=$SPARK_HOME/bin:$PATH
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS='notebook'
export PYSPARK_SUBMIT_ARGS='--packages org.apache.hadoop:hadoop-aws:3.2.2,com.microsoft.ml.spark:mmlspark_2.11:1.0.0-rc3,org.apache.spark:spark-avro_2.12:2.4.5 --repositories https://mmlspark.azureedge.net/maven pyspark-shell'
很明显,您必须更改 SPARK_HOME
(第 1 行)以指向您的 spark 目录所在的位置。另请注意,我选择在 PYSPARK_SUBMIT_ARGS
中设置我的 hadoop 版本,你应该检查你安装的是哪个版本。
我希望它能帮助其他人,因为我花了一段时间才弄明白。
干杯
如何在装有 Intel Python 3.6 的本地计算机上安装和使用 MMLSpark?
import numpy as np
import pandas as pd
import pyspark
spark = pyspark.sql.SparkSession.builder.appName("MyApp") \
.config("spark.jars.packages", "Azure:mmlspark:0.13") \
.getOrCreate()
import mmlspark
from mmlspark import TrainClassifier
from pyspark.ml.classification import LogisticRegression
from mmlspark import ComputeModelStatistics, TrainedClassifierModel
dataFilePath = "AdultCensusIncome.csv"
import os, urllib
if not os.path.isfile(dataFilePath):
urllib.request.urlretrieve("https://mmlspark.azureedge.net/datasets/" + dataFilePath, dataFilePath)
data = spark.createDataFrame(pd.read_csv(dataFilePath, dtype={" hours-per-week": np.float64}))
data = data.select([" education", " marital-status", " hours-per-week", " income"])
train, test = data.randomSplit([0.75, 0.25], seed=123)
train.limit(10).toPandas()
model = TrainClassifier(model=LogisticRegression(), labelCol=" income", numFeatures=256).fit(train)
prediction = model.transform(test)
metrics = ComputeModelStatistics().transform(prediction)
metrics.limit(10).toPandas()
MMLSpark 不工作。有人可以帮助解决这个问题吗?
你的问题没有正确描述问题,但如果你正在寻找安装命令。那么请看下面,
先安装pyspark。
pip install pyspark
要在现有的 HDInsight Spark 群集上安装 MMLSpark,您可以在群集头节点和工作节点上执行脚本操作。有关 运行ning 脚本操作的说明,请参阅本指南。
脚本操作 url 是:https://mmlspark.azureedge.net/buildartifacts/0.13/install-mmlspark.sh.
如果您使用 Azure 门户 运行 脚本操作,请转到脚本操作 → 在群集边栏选项卡的概述部分中提交新的。在 Bash 脚本 URI 字段中,输入上面提供的脚本操作 URL。标记其余选项,如右侧屏幕截图所示。
提交,集群应该会在10分钟左右完成配置。
来自原始文档:- https://github.com/Azure/mmlspark
尽管这是一个老问题(顺便提一下,这个问题很不恰当),但有些人可能仍然会受益。
为了使本地 Spark 环境与 mmlspark 一起工作,您必须设置环境变量 PYSPARK_SUBMIT_ARGS
。由于我使用的是 Jupyter,我发现通过脚本 ~/.jupyter/jupyter-env.sh
(如果您在 AWS EC2 实例中,则为 /etc/profile.d/jupyter-env.sh
)设置环境变量很有用。环境变量本身应该是:
PYSPARK_SUBMIT_ARGS='--packages com.microsoft.ml.spark:mmlspark_2.11:1.0.0-rc3,org.apache.spark:spark-avro_2.12:2.4.5 --repositories https://mmlspark.azureedge.net/maven pyspark-shell'
请注意,我们还必须将 org.apache.spark:spark-avro_2.12:2.4.5
冻结为可与 mmlspark 一起使用的版本。欢迎与其他人一起测试。
适合我的完整 jupyter-env.sh
脚本是:
export SPARK_HOME=/home/ec2-user/SageMaker/spark
export PATH=$SPARK_HOME/bin:$PATH
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS='notebook'
export PYSPARK_SUBMIT_ARGS='--packages org.apache.hadoop:hadoop-aws:3.2.2,com.microsoft.ml.spark:mmlspark_2.11:1.0.0-rc3,org.apache.spark:spark-avro_2.12:2.4.5 --repositories https://mmlspark.azureedge.net/maven pyspark-shell'
很明显,您必须更改 SPARK_HOME
(第 1 行)以指向您的 spark 目录所在的位置。另请注意,我选择在 PYSPARK_SUBMIT_ARGS
中设置我的 hadoop 版本,你应该检查你安装的是哪个版本。
我希望它能帮助其他人,因为我花了一段时间才弄明白。 干杯