Spark加载PMML进行预测

本文介绍了如何在CDH 5.8.0环境中,利用Spark 1.6.0加载PMML模型进行预测。首先,详细说明了所需的软件版本。接着,目标设定为在Spark on YARN模式下,加载HDFS上的PMML文件并使用其预测数据。内容分为具体步骤,包括准备原始数据、下载并修改jpmml-spark工程代码以确保数据列名正确匹配,然后将数据和模型上传到HDFS并执行预测。最后,展示了如何直接读取HDFS上的数据进行预测,代码示例给出,预测结果显示正确。
摘要由CSDN通过智能技术生成

软件版本:

CDH:5.8.0 , CDH-hadoop :2.6.0 ; CDH-spark :1.6.0 

目标:

使用Spark 加载PMML文件到模型,并使用Spark平台进行预测(这里测试使用的是Spark on YARN的方式)。

具体小目标:

1. 参考https://github.com/jpmml/jpmml-spark 实现,能运行简单例子;

2. 直接读取HDFS上面的输入数据文件,使用PMML生成的模型进行预测;

(第1点和第2点的不一样的地方体现在输入数据的构造上,可以参看下面的代码)

具体步骤:

1. 准备原始数据,原始数据包括PMML文件,以及测试数据;分别如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<PMML version="4.2" xmlns="http://www.dmg.org/PMML-4_2">
    <Header description="linear SVM">
        <Application name="Apache Spark MLlib"/>
        <Timestamp>2016-11-16T22:17:47</Timestamp>
    </Header>
    <DataDictionary numberOfFields="4">
        <DataField name="field_0" optype="continuous" dataType="double"/>
        <DataField name="field_1" optype="continuous" dataType="double"/>
        <DataField name="field_2" optype="continuous" dataType="double"/>
        <DataField name="target" optype="categorical" dataType="string"/>
    </DataDictionary>
    <RegressionModel modelName="linear SVM" functionName="classification" normalizationMethod="none">
        <MiningSchema>
            <MiningField name="field_0" usageType="active"/>
            <MiningField name="field_1" usageType="active"/>
            <MiningField name="field_2" usageType="active"/>
            <MiningField name="target" usageType="target"/>
        </MiningSchema>
        <RegressionTable intercept="0.0" targetCategory="1">
            <NumericPredictor name="field_0" coefficient="-0.36682158807862086"/>
            <NumericPredi
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值