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的集成实现实时预测的更多相关文章
- Solr与MongoDB集成,实时增量索引
Solr与MongoDB集成,实时增量索引 一. 概述 大量的数据存储在MongoDB上,需要快速搜索出目标内容,于是搭建Solr服务. 另外一点,用Solr索引数据后,可以把数据用在不同的项目当中, ...
- [Solr] (源) Solr与MongoDB集成,实时增量索引
一. 概述 大量的数据存储在MongoDB上,需要快速搜索出目标内容,于是搭建Solr服务. 另外一点,用Solr索引数据后,可以把数据用在不同的项目当中,直接向Solr服务发送请求,返回xml.js ...
- Spring Boot 入门(十一):集成 WebSocket, 实时显示系统日志
以前面的博客为基础,最近一篇为Spring Boot 入门(十):集成Redis哨兵模式,实现Mybatis二级缓存.本篇博客主要介绍了Spring Boot集成 Web Socket进行日志的推送, ...
- spark与kafka集成进行实时 nginx代理 这种sdk埋点 原生日志实时解析 处理
日志格式202.108.16.254^A1546795482.600^A/cntv.gif?appId=3&areaId=8213&srcContId=2535575&area ...
- 矩池云 | 利用LSTM框架实时预测比特币价格
温馨提示:本案例只作为学习研究用途,不构成投资建议. 比特币的价格数据是基于时间序列的,因此比特币的价格预测大多采用LSTM模型来实现. 长期短期记忆(LSTM)是一种特别适用于时间序列数据(或具有时 ...
- Spark集成Kafka实时流计算Java案例
package com.test; import java.util.*; import org.apache.spark.SparkConf; import org.apache.spark.Tas ...
- Kafka ETL 之后,我们将如何定义新一代实时数据集成解决方案?
上一个十年,以 Hadoop 为代表的大数据技术发展如火如荼,各种数据平台.数据湖.数据中台等产品和解决方案层出不穷,这些方案最常用的场景包括统一汇聚企业数据,并对这些离线数据进行分析洞察,来达到辅助 ...
- Kafka Streams | 流,实时处理和功能
1.目标 在我们之前的Kafka教程中,我们讨论了Kafka中的ZooKeeper.今天,在这个Kafka Streams教程中,我们将学习Kafka中Streams的实际含义.此外,我们将看到Kaf ...
- SAP S4 Finance6个支持企业实时财务管理的主要创新领域
本文将讲述下 SAP Simple Finance里面6个支持企业实时财务管理的主要创新领域. Simple Finance 在以下几个方面具有自己独特的优势: ● 更加简洁的用户体验,可以让用户在任 ...
随机推荐
- JAVA API about HTTP 2
import java.io.IOException; import java.nio.charset.Charset; import java.security.KeyManagementExcep ...
- vim 底行模式 操作命令
1. 当前设置行号: set nonu 取消行号显示: 2. :set number 显示行号 (下次使用就没有了,要设置脚本 vim ~/ . ...
- django 项目分析
项目要点 一.功能制定 1.用户功能 #.登陆 #.权限组功能 2.数据展示功能 #.列表展示 #.详细信息展示 #.图标展示 3.资源管理功能 #远程管理 #对远程服务器上的进程具有 #开启 #关闭 ...
- 数据库MySQL--联合查询
应用场景:当要查询的结果来自多个表,且多个表没有直接的连接关系,但查询的信息一致时 语法: 查询语句1 union(all) 查询语句2 union(all) ..... 注:多条查询语句的查询列数要 ...
- 数据库MySQL--分组查询
事例使用文件:https://files.cnblogs.com/files/Vera-y/myemployees.zip 分组数据:group by 子句 分组查询语法: select 分组函数,列 ...
- Android开发 AndroidStudio解决Error:moudle not specified
问题描述 在使用Android Studio 进行Builder APKs的时候,如果发现无法degub, 进行配置的时候 没有module可以进行指定 问题原因 项目未与Grade Files 文件 ...
- CSIC_716_20191029【人脸打分系统】
今日内容: 1.调用百度的AI接口,完成人脸图像打分( 敷衍) 2.完成系统内置时间的打印 3.将上述两段代码生成可执行文件 ------------------------------------- ...
- thinkphp 异常处理
和PHP默认的异常处理不同,ThinkPHP抛出的不是单纯的错误信息,而是一个人性化的错误页面,如下图所示: 只有在调试模式下面才能显示具体的错误信息,如果在部署模式下面,你可能看到的是一个简单的提示 ...
- (转)Android中RelativeLayout各个属性的含义
转:http://blog.csdn.net/softkexin/article/details/5933589 android:layout_above="@id/xxx" - ...
- webstorm 初次上传代码到 远程gitlab中
1. 在 公司搭建的gitlab网站,创建project,然后生成了 git的地址. 2.在 本地电脑上,打开 webstorm,要将已有的代码上传到 git网站,那么需要在webstrom编辑器的t ...