SPSS与Streams的集成实现实时预测

SPSS Modeler 是一个数据挖掘工作台,提供了一个可了解数据并生成预测模型的最先进的环境。Streams
提供了一个可伸缩的高性能环境,对不断变化的数据进行实时分析,这些数据中包括传统结构的数据和半结构化到非结构化数据类型。

在实时处理需要高级分析时,使用Streams和SPSS集成,实现实时评分预测。实时应用预测分析的用例的示例包括网络安全、银行和信用卡欺诈检测、预测性维护,以及实时营销产品。

Streams SPSS Analytics Toolkit 的特点

利用Streams实现高吞吐量、低延迟的评分

利用SPSS Modeler开发和建立评分模型

通过SPSSScoring Operator将模型部署到Streams

模型更新而无需暂停Streams

通过SPSS Collaboration and Deployment Services管理模型的生命周期

SPSS Analytics Toolkit for Streams

SPSSScoring operator

SPSSScoring
operator实现在Streams应用中使用预定义的SPSS的预测模型进行评分预测,它假设预测模型已经在SPSS
Moduler定义好并通过SPSS Solution Publisher导出这三个文件:

model.pim

model.par

model.xml

SPSSScoring 代码例子

stream scorer = com.ibm.spss.streams.analytics::SPSSScoring(data)
{parampimfile: getThisToolkitDir() "/etc/PimParXml/model.pim";
parfile: getThisToolkitDir() "/etc/PimParXml/model.par"; xmlfile:
getThisToolkitDir() "/etc/PimParXml/model.xml";
modelFields:"sex","income"; streamAttributes: s_sex, baseSalary
bonusSalary; output scorer: income = fromModel("income"), predLabel
= fromModel("$C-beer_beans_pizza"), confidence =
fromModel("$CC-beer_beans_pizza"); }

SPSSPublish operator

SPSSPublish operator
自动“发布”的一个模型文件的评分分支并总结所生成的文件,以便下游的Operator可以通过“分布”操作所创建或更新的PIM、PAR和XML文件,刷新他们的评分标准实施。通常情况下,SPSSPublish
operator配合上游的DirectoryScan 或 SPSSRepository
operator,及下游的SPSSScoring operator,即:

DirecoryScan/SPSSRepository -> SPSSPublish
-> SPSSScoring

其中DirectoryScan 或 SPSSRepository
operator检测到有新的模型文件可用,就将新模型的文件名发生个SPSSPublish
operator。SPSSPublish的下游通常是SPSSSoring。当SPSSPublish获取到新模型,它就会生成SPSSSoring所需的PIM、PAR和XML文件,然后发生通知给SPSSSoring,通知也新的模型可用了。SPSSScoring收到通知后会刷新内部模型。

SPSSPublish代码例子:

stream strFile = DirectoryScan(){

      
param

        
directory : "/tmp";

        
pattern : "newmodel.str";

        
ignoreExistingFilesAtStartup : true;

      
config placement : host(P1);

    
}



    stream
notifier =
com.ibm.spss.streams.analytics::SPSSPublish(strFile){

    
param

      
sourceFile: "newmodel.str";

      
targetPath: "/tmp";

    
config placement : host(P1);

  }



    stream
scorer = com.ibm.spss.streams.analytics::SPSSScoring(data;notifier)
{

    param

     
pimfile: getThisToolkitDir() "/etc/PimParXml/model.pim";

     
parfile: getThisToolkitDir() "/etc/PimParXml/model.par";

     
xmlfile: getThisToolkitDir() "/etc/PimParXml/model.xml";

     
modelFields: "sex","income";

     
streamAttributes: s_sex, baseSalary bonusSalary;



    output

     
scorer:

       
income = fromModel("income"),

       
predLabel = fromModel("$C-beer_beans_pizza"),

       
confidence = fromModel("$CC-beer_beans_pizza");

    config
placement : host(P1);

  }

SPSSRepository operator

SPSSRepository operator监视部署在SPSS Collaboration and Deployment
Services库的对象的变化。当被监控的对象发生变化,相关通知则会发给所有的Listener。收到通知,SPSSRepostory会从Repostory下载该对象的新版本文件并将文件写到目标目录,这步操作成功之后,SPSSRepostory再提交描述文件已更新的事件给下游Operator。

Streams  SPSS 的参考架构

根据前面对SPSS Analytics Toolkit的功能描述,Streams SPSS的参考架构可以由下图表示:

小结

本文通过对SPSS Analytics
Toolkit和这些Toolkit与Streams集成参考架构的描述,为读者呈现了如何使用业界最好的数据挖掘工具SPSS和流数据分析平台Streams进行实时评分和预测。数据分析师培训

SPSS与Streams的集成实现实时预测的更多相关文章

  1. Solr与MongoDB集成,实时增量索引

    Solr与MongoDB集成,实时增量索引 一. 概述 大量的数据存储在MongoDB上,需要快速搜索出目标内容,于是搭建Solr服务. 另外一点,用Solr索引数据后,可以把数据用在不同的项目当中, ...

  2. [Solr] (源) Solr与MongoDB集成,实时增量索引

    一. 概述 大量的数据存储在MongoDB上,需要快速搜索出目标内容,于是搭建Solr服务. 另外一点,用Solr索引数据后,可以把数据用在不同的项目当中,直接向Solr服务发送请求,返回xml.js ...

  3. Spring Boot 入门(十一):集成 WebSocket, 实时显示系统日志

    以前面的博客为基础,最近一篇为Spring Boot 入门(十):集成Redis哨兵模式,实现Mybatis二级缓存.本篇博客主要介绍了Spring Boot集成 Web Socket进行日志的推送, ...

  4. spark与kafka集成进行实时 nginx代理 这种sdk埋点 原生日志实时解析 处理

    日志格式202.108.16.254^A1546795482.600^A/cntv.gif?appId=3&areaId=8213&srcContId=2535575&area ...

  5. 矩池云 | 利用LSTM框架实时预测比特币价格

    温馨提示:本案例只作为学习研究用途,不构成投资建议. 比特币的价格数据是基于时间序列的,因此比特币的价格预测大多采用LSTM模型来实现. 长期短期记忆(LSTM)是一种特别适用于时间序列数据(或具有时 ...

  6. Spark集成Kafka实时流计算Java案例

    package com.test; import java.util.*; import org.apache.spark.SparkConf; import org.apache.spark.Tas ...

  7. Kafka ETL 之后,我们将如何定义新一代实时数据集成解决方案?

    上一个十年,以 Hadoop 为代表的大数据技术发展如火如荼,各种数据平台.数据湖.数据中台等产品和解决方案层出不穷,这些方案最常用的场景包括统一汇聚企业数据,并对这些离线数据进行分析洞察,来达到辅助 ...

  8. Kafka Streams | 流,实时处理和功能

    1.目标 在我们之前的Kafka教程中,我们讨论了Kafka中的ZooKeeper.今天,在这个Kafka Streams教程中,我们将学习Kafka中Streams的实际含义.此外,我们将看到Kaf ...

  9. SAP S4 Finance6个支持企业实时财务管理的主要创新领域

    本文将讲述下 SAP Simple Finance里面6个支持企业实时财务管理的主要创新领域. Simple Finance 在以下几个方面具有自己独特的优势: ● 更加简洁的用户体验,可以让用户在任 ...

随机推荐

  1. 【Wikioi】P1401 逆序统计 代码

    题目链接:http://wikioi.com/solution/list/1401/ 题解链接:http://user.qzone.qq.com/619943612/blog/1377265690 代 ...

  2. 基于第三方开源库的OPC服务器开发指南(1)——OPC与DCOM

    事儿太多,好多事情并不以我的意志为转移,原想沉下心好好研究.学习图像识别,继续丰富我的机器视觉库,并继续<机器视觉及图像处理系列>博文的更新,但计划没有变化快,好多项目要完成,只好耽搁下来 ...

  3. C++之指针与数组区别

    C++/C程序中,数组要么在静态存储区被创建(如全局数组),要么在栈上被创建.数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组的内容可以改变.指针可以随时指向任意类型的内存 ...

  4. PHP算法之盛最多水的容器

    给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0).找出其中的两条线, ...

  5. 双十一HostGator独立服务器方案

    一年一度的“双十一”购物狂欢节到来,各大电商平台线上消费的各种“吸金”开启了“双十一”模式,一年一度的“双十一”网购狂欢又开始以“巨大的价格优势”来勾起消费者的购买欲望. 此次双十一期间,HostGa ...

  6. session_unset和session_distory

    关于session_unset()和session_destroy()的函数使用进行介绍. session_unset() 释放当前在内存中已经创建的所有$_SESSION变量, 但不删除sessio ...

  7. thinkphp 默认值输出

    我们可以给变量输出提供默认值,例如: 大理石平台厂家 {$user.nickname|default="这家伙很懒,什么也没留下"} 对系统变量依然可以支持默认值输出,例如: {$ ...

  8. Map按键排序(sort by key)

    1.需求:已知有如下map,要求按照key倒序排列遍历. Map<String, Integer> map = new HashMap<>(); map.put("1 ...

  9. 請問各位大大,我要將listview顯示的縮圖加入到listview2,請問該如何做呢

    請問各位大大,我要將listview顯示的縮圖加入到listview2,請問該如何做呢?下面的function可以將listview的縮圖加到listview2但是全都顯示listview1第一張的圖 ...

  10. layui点击按钮自动刷新页面问题

    问题 <button class="layui-btn layui-btn-primary" onclick="findData()">查询< ...