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. JAVA API about HTTP 2

    import java.io.IOException; import java.nio.charset.Charset; import java.security.KeyManagementExcep ...

  2. vim 底行模式 操作命令

    1. 当前设置行号: set nonu    取消行号显示:                    2.   :set number 显示行号     (下次使用就没有了,要设置脚本 vim ~/ . ...

  3. django 项目分析

    项目要点 一.功能制定 1.用户功能 #.登陆 #.权限组功能 2.数据展示功能 #.列表展示 #.详细信息展示 #.图标展示 3.资源管理功能 #远程管理 #对远程服务器上的进程具有 #开启 #关闭 ...

  4. 数据库MySQL--联合查询

    应用场景:当要查询的结果来自多个表,且多个表没有直接的连接关系,但查询的信息一致时 语法: 查询语句1 union(all) 查询语句2 union(all) ..... 注:多条查询语句的查询列数要 ...

  5. 数据库MySQL--分组查询

    事例使用文件:https://files.cnblogs.com/files/Vera-y/myemployees.zip 分组数据:group by 子句 分组查询语法: select 分组函数,列 ...

  6. Android开发 AndroidStudio解决Error:moudle not specified

    问题描述 在使用Android Studio 进行Builder APKs的时候,如果发现无法degub, 进行配置的时候 没有module可以进行指定 问题原因 项目未与Grade Files 文件 ...

  7. CSIC_716_20191029【人脸打分系统】

    今日内容: 1.调用百度的AI接口,完成人脸图像打分( 敷衍) 2.完成系统内置时间的打印 3.将上述两段代码生成可执行文件 ------------------------------------- ...

  8. thinkphp 异常处理

    和PHP默认的异常处理不同,ThinkPHP抛出的不是单纯的错误信息,而是一个人性化的错误页面,如下图所示: 只有在调试模式下面才能显示具体的错误信息,如果在部署模式下面,你可能看到的是一个简单的提示 ...

  9. (转)Android中RelativeLayout各个属性的含义

    转:http://blog.csdn.net/softkexin/article/details/5933589 android:layout_above="@id/xxx"  - ...

  10. webstorm 初次上传代码到 远程gitlab中

    1. 在 公司搭建的gitlab网站,创建project,然后生成了 git的地址. 2.在 本地电脑上,打开 webstorm,要将已有的代码上传到 git网站,那么需要在webstrom编辑器的t ...