SAS® Model Studio功能调研
基本概念
SAS Viya中包含的Model Studio是一个集成的可视化环境,它提供了一套分析数据挖掘工具,以促进端到端的数据挖掘分析。Model Studio中支持的数据挖掘工具旨在利用SAS Viya编程和云处理环境来交付和分发冠军模型、打分代码和结果。
Model Studio提供的功能视图如下所示:
在Model Studio中创建的模型的应用如下所示:
Model Studio包括如下三个SAS解决方案:
- SAS Visual Forecasting
- SAS Visual Data Mining and Machine Learning
- SAS Visual Text Analytics
在XXX SAS环境中仅提供了SAS Visual Data Mining and Machine Learning。
模型构建
在Model Studio中,由节点组成管道,管道类似于工作流,可以将数据和节点组成有序的执行逻辑。一个管道中可以包括多个模型,可以在一个管道内的模型中选出冠军模型,也可以在不同管道的所有模型之间进行比较,选出冠军模型。
如下所示即为一个管道,其有数据和节点组成。
1 数据
在一个项目中只能使用一个数据表,且“数据”节点是必需的节点,它是任何管道的起点。它提供给管道有关项目数据源的信息以及有关变量的元数据。
被引用的数据会自动添加到管道中。数据可以替换。
用户必须为数据中的各个列指定角色,可使用的角色如下所示:
序号 |
角色名称 |
1 |
残差 |
2 |
分段 |
3 |
分类 |
4 |
分区 |
5 |
过滤器 |
6 |
键 |
7 |
目标 |
8 |
偏移值 |
9 |
评估 |
10 |
时间ID |
11 |
输入 |
12 |
已拒绝 |
13 |
预测 |
14 |
ID |
2节点
类似于的分析模块,在SAS Visual Data Mining and Machine Learning类项目下,可以使用如下所示的节点:
类型 |
节点 |
说明 |
数据挖掘预处理 |
变量聚类 |
执行变量聚类以减少输入数。 |
变量选择 |
在选择变量时执行无监督方法和一些有监督方法以减少输入数。 |
|
补缺 |
使用指定方法为分类和区间型输入的缺失值补缺。 |
|
管理变量 |
修改变量的元数据。 |
|
过滤 |
根据指定准则从分析中排除观测。 |
|
聚类 |
执行基于观测的聚类以对数据分段。 |
|
特征提取 |
基于PCA、稳健PCA、SVD或自动编码器生成用作输入的特征。PCA、SVD和PRCA仅使用区间型输入。 |
|
替换 |
用指定值替换诸如离群值等数据值和未知分类水平的值。 |
|
文本挖掘 |
解析并执行主题发现以准备用于建模的文本数据。 |
|
异常检测 |
使用支持向量数据描述算法识别和排除异常值(观测)。 |
|
转换 |
对输入变量应用数值型转换或分箱转换。 |
|
有监督学习 |
分位数回归 |
为区间型目标拟合分位数回归模型。 (系统会自动在模型类算子后添加模型比较算子) |
决策树 |
为分类目标拟合分类树或为区间型目标集合回归树。 |
|
决策树_1 |
为区间型目标拟合分位数回归模型。 |
|
批处理代码 |
运行SAS批处理代码。 |
|
评分代码导入 |
导入SAS评分代码。 |
|
森林 |
拟合森林模型,其中包含多个基于不同数据样本和不同输入子集的决策树。 |
|
神经网络 |
拟合全互连神经网络模型。 |
|
梯度提升 |
拟合梯度提升模型,用于生成一系列连续的决策树。 |
|
线性回归 |
为区间型目标拟合普通最小二乘回归模型。 |
|
Bayesian网络 |
为分类目标拟合Bayesian网络模型。 |
|
GLM |
为具有指定目标分别和管理函数的区间型目标拟合广义线性模型。 |
|
Logistics回归 |
为二值型或列名型目标拟合Logistics回归模型。 |
|
SVM |
采用内点优化方法为二值型目标拟合支持向量机。 |
|
后处理 |
集成 |
通过使用来自多个模型的后验概率(对于分类目标)或预测值(对于区间型目标)函数创建新模型。 |
杂项 |
保存数据 |
将由管道中的节点导出的数据保存到CAS逻辑库。 |
开放源代码 |
运行Python或R代码。该代码不在CAS中执行,会创建并下载数据样本(默认10,000个观测)已避免移动大量数据。 |
|
数据探索 |
显示数据表中变量的汇总统计量和图。该节点选择变量子集来创建数据具有代表性的快照。可以选择变量来显示最重要的输入或指出具有异常统计量的“可疑变量” |
|
SAS代码 |
运行SAS代码。允许将SAS代码合并到Model Studio管道。 |
3管道
Model Studio项目可以包括一个或多个管道,而一个管道由一个数据集和多个节点组成。
一个管道中可以包括多个机器学习节点,从而通过一个管道即可训练得到多个机器学习模型。
Model Studio提供了管道模板。
4管道比较
管道比较可以在不同管道的模型之间进行比较,从而选出冠军模型。只有运行完的管道才可以参与比较。
在管道比较页面,除可以查看参与比较的模型外,也可以查看冠军模型的多项统计指标。
5注册模型
在管道中训练得到的模型需要“注册”后才可以被管理,即模型注册后,可以在“模型管理器”中管理模型。模型管理器是进行存储和管理模型的公共仓库,它可以用于模型治理和模型修改控制。
注册操作不需要配置,仅是一个“动作”。
6发布模型
模型发布后才可以在各种运行时引擎中执行。模型发布时需要指定发布目标,发布目标包括三种类型:CAS、Hadoop以及Teradata,发布目标需要先配置再使用(可以在SAS® Environment Manager中创建发布目标,可以参考http://documentation.sas.com/?docsetId=calpubdest&docsetTarget=p02scrqf37kexwn1gi60khpshifz.htm&docsetVersion=3.4&locale=zh-CN&showBanner=walkup)。
在Model Studio中可以下载模型的评分API,如下所示
类型 |
下载文件类型 |
Python |
.py |
REST |
.txt |
SAS |
.sas |
并且在下载界面提供了各类型API的示例
下载的评分代码为包含.sas程序的zip压缩包。评分代码包含了监督学习节点以及其前面的数据挖掘预处理节点。
下载得到的模型可以在Model Manager中进行导入。
在Model Manager中进行模型的评分、发布测试必须要有评分代码。
使用训练得到的模型对预留数据进行评分。