SASPredictive Modeling Use SAS EM考试主要考察深度学习和机器学习理论知识的理解,以及对SAS代码和软件的掌握程度。我从前期准备、需要学习的内容、现场考试这几个方面说下如何拿到EM认证。
目录
1、前期准备
1.1 确定考点大纲
到官网找最新的考试大纲。大纲分为4个部分,分别是对数据源的操作、建模、模型评估和模式分析。
During the testing of these objectives; you will be expected to perform common tasks, such as:
Create a new project in Enterprise Miner
Open an existing project in Enterprise Miner
Add diagrams to projects in Enterprise Miner
Create libraries within Enterprise Miner
Add nodes to diagrams in Enterprise Miner
Copy nodes within Enterprise Miner
Connect nodes to create process flows in Enterprise Miner
Change interactive sampling methods for data exploration
Work with the Help functionality within Enterprise Miner
1)Data Sources - 20-25%
Create data sources from SAS tables in Enterprise Miner
Use the Basic Metadata Advisor
Use the Advanced Metadata Advisor
Customize the Advanced Metadata Advisor
Set Role and Level meta data for data source variables
Set the Role of the table (raw, scoring, transactional, etc)
Explore and assess data sources
Create and interpret plots, including Histograms, Pie charts, Scatter plot, Time series, Box plot
Identify distributions
Find outlying observations
Find number (or percent) of missing observations
Find levels of nominal variables
Explore associations between variables using plots by highlighting and selecting data
Compare balanced and actual response rates when oversampling has been performed
Explore data with the STAT EXPLORER node.
Explore input variable sample statistics
Browse data set observations (cases)
Modify source data
Replace zero values with missing indicators using the REPLACEMENT node
Use the TRANFORMATION node to be able to correct problems with input data sources, such as variable distribution or outliers.
Use the IMPUTE node to impute missing values and create missing value indicators
Reduce the levels of a categorical variable
Use the FILTER node to remove cases
Prepare data to be submitted to a predictive model
Select a portion of a data set using the SAMPLE node
Partition data with the PARTITION Node
Use the VARIABLE SELECTION node to identify important variables to be included in a predictive model.
Use the PARTIAL LEAST SQUARES node to identify important variables to be included in a predictive model.
Use a DECISION TREE or REGRESSION nodes to identify important variables to be included in a predictive model.
2)Building Predictive Models - 35-40%
Describe key predictive modeling terms and concepts
Data partitioning: training, validation, test data sets
Observations (cases), independent (input) variables, dependent (target) variables
Measurement scales: Interval, ordinal, nominal (categorical), binary variables
Prediction types: decisions, rankings, estimates
Dimensionality, redundancy, irrelevancy
Decision trees, neural networks, regression models
Model optimization, overfitting, underfitting, model selection
Describe ensemble models
Build predictive models using decision trees
Explain how decision trees identify split points
Build decision trees in interactive mode
Change splitting rules
Explain how missing values can be handled by decision trees
Assess probability using a decision tree
Prune decision trees
Adjust properties of the DECISION TREE node, including: subtree method, Number of Branches, Leaf Size, Significance Level, Surrogate Rules, Bonferroni Adjustment
Interpret results of the decision tree node, including: trees, leaf statistics, treemaps, score rankings overlay, fit statistics, output, variable importance, subtree assessment plots
Explore model output (exported) data sets
Build predictive models using regression
Explain the relationship between target variable and regression technique
Explain linear regression
Explain logistic regression (Logit link function, maximum likelihood)
Explain the impact of missing values on regression models
Select inputs for regression models using forward, backward, stepwise selection techniques
Adjust thresholds for including variables in a model
Interpret a logistic regression model using log odds
Interpret the results of a REGRESSION node (Output, Fit Statistics, Score Ranking Overlay charts)
Use fit statistics and iteration plots to select the optimum regression model for different decision types
Add polynomial regression terms to regression models.
Determine when to add polynomial terms to linear regression models.
Build predictive models using neural networks
Theory of neural networks (Hidden units, Tanh function, bias vs intercept, variable standardization)
Build a neural network model
Use regression models to select inputs for a neural network
Explain how neural networks optimize their model (stopped training)
Recognize overfit neural network models.
Interpret the results of a NEURAL NETWORK node, including: Output, Fit Statistics, Iteration Plots, and Score Rankings Overlay charts
3)Predictive Model Assessment and Implementation - 25-30%
Use the correct fit statistic for different prediction types
Misclassification
Average Square Error
Profit/Loss
Other standard model fit statistics
Use decision processing to adjust for oversampling (separate sampling)
Explain reasons for oversampling data
Adjust prior probabilities
Use profit/loss information to assess model performance
Build a profit/loss matrix
Add a profit/loss matrix to a predictive model
Determine an appropriate value to use for expected profit/loss for primary outcome
Optimize models based on expected profit/loss
Compare models with the MODEL COMPARISON node
Model assessment statistics
ROC Chart
Score Rankings Chart, including (cumulative) % response chart, (cumulative) Lift chart, gains chart.
Total expected profit
Effect of oversampling
Score data sets within Enterprise Miner
Configure a data set to be scored in Enterprise Miner
Use the SCORE node to score new data
Save scored data to an external location with the SAVE DATA node
Export SAS score code
4)Pattern Analysis - 10-15%
Identify clusters of similar data with the CLUSTER and SEGMENT PROFILE nodes
Select variables to use to define the clusters
Standardize variable scales
Explore clusters with results output and plots
Compare distribution of variables within clusters
Perform association and sequence analysis (market basket analysis)
Explain association concepts (Support, confidence, expected confidence, lift, difference between association and sequence rules)
Create a data set for association analysis
Interpret the results and graphs of the ASSOCIATION node.
1.2 考试样例
Sample Questions
The following sample questions are not inclusive and do not necessarily represent all of thetypes of questions that comprise the exams. The questions are not designed to assess an
individual's readiness to take a certification exam.
Predictive Modeling Using SAS Enterprise Miner
Question 1
Open the diagram labeled Practice A within the project labeled Practice A. Perform the following in SAS Enterprise Miner:
1. Set the Clustering method to Average.
2. Run the Cluster node.
Use this project to answer the next two questions:
What is the Importance statistic for MTGBal (Mortgage Balance)?
A. 0.32959
B. 0.42541
C. 0.42667
D. 1.000000
correct_answer = "C" You must change the clustering method to average and run the cluster node first.
Select view results and look in the output window and view the Variable Importance results.
What is the Cubic Clustering Criterion statistic for this clustering?
A. 5.00
B. 14.69
C. 5862.76
D. 67409.93
correct_answer = "B" Run the diagram flow and view the results. From the results window, select View
-> Summary Statistics -> CCC Plot and mouse over where the data point and the line intersect. This will
display the CCC statistic.
Question 2
1. Create a project named Insurance, with a diagram named Explore.
2. Create the data source, DEVELOP, in SAS Enterprise Miner. DEVELOP is in the directory
c:\workshop\Practice.
3. Set the role of all variables to Input, with the exception of the Target variable, Ins (1= has insurance,0= does not have insurance).
4. Set the measurement level for the Target variable, Ins, to Binary.
5. Ensure that Branch and Res are the only variables with the measurement level of Nominal.
6. All other variables should be set to Interval or Binary.
7. Make sure that the default sampling method is random and that the seed is 12345.
Use this project to answer the next questions. (Note: only 2 of 7 questions are displayed for this example)
The variable Branch has how many levels?
A. 8
B. 12
C. 19
D. 47
correct_answer = "C" This information can be obtained by viewing the PROC FREQ output.
What is the mean credit card balance (CCBal) of the customers with a variable annuity?
A. $0.00
B. $8,711.65
C. $9,586.55
D. $11,142.45
correct_answer = "D" You can use a Stat Explore Node and view the output for the Descriptive
Statistics for CCBal by level of the target variable
2、学习内容
定义分析主题,选择分析场景,并提取、验证、修正分析数据。
转换数据,生成部署方法,将部署方法集成到部署环境中,评估分析的结果并细化分析到下一个迭代中。
EM在数据挖掘领域中的强项,他有大量的分析方法,分为两大类:模式发现和预测建模。
2.1 获取和分析原始数据
2.1.1 创建项目
了解功能区的SEMMA功能,基本的操作几乎都含在SEMMA中。
Sample Explore Modify Model Assess
创建EM项目、逻辑库、和流程图。
2.1.2 定义数据源
选择数据表、定义变量角色、定义表角色。
定义表数据源中有基础、高级和自定义选项,三者的区别是基础只能根据变量名称的描述确定变量的角色,高级可以比基本更准备,自定义可以定义缺失值等条件限制。
2.1.3 探索数据源
数据探索过程中,应该探索数据错误,数值类型错误,以及潜在的变量之间关系。
数值类型错误时,用Modify中的替换,将源数据集中数据进行替换。
2.2 决策树模型
预测是从历史事件聚类中创建模型,用来预测未来的行为。
由于以下客观事实的存在,不能过于夸大模型的效果。
首先,模型依赖于统计学上被称为平稳性的特性,这意味着它的统计特性不会随时间而改变。不幸的是,许多产生研究事件的过程都不够稳定,无法进行有意义的预测。
其次,预测模型通常是针对预测很少发生的事件,总体来看,这些事件看起来往往是随机的。即使是最好的预测模型也只能从这些固有的嘈杂过程中提取出大致的趋势。
预测建模的应用程度取决于你的想象力,简单的将模型应用在以下场景:
- 数据库营销应用包括提供响应、追加销售、交叉销售和消耗模型
- 金融风险管理模型,预测信贷违约、贷款还款和保险索赔
- 欺诈检测方法,尝试找出或阻止非法的涉及金融交易的活动
- 过程监控应用程序检测偏离标准的生产、财务和安全过程
- 模式检测模型用于从笔迹分析到医学诊断的各种应用
建模之前需要知道一些标准术语:
- 训练集,训练集中有输入和目标变量。输入可以是连续型变量也可以是离散型变量。
- 预测建模,也称监督预测或监督学习,从一个训练集开始。预测模型是输入和目标关联的简洁表示
- 预测值:给定一组输入测量值,预测模型的输出。预测模型的输出被称为预测。预测表示给定一组输入测量值后对目标的最佳猜测。这些预测是基于预测模型从训练数据中学习到的关联。
预测模型得到了广泛的应用,并用于很多领域,任何模型必须完成三个要点,预测新数据、选择有用输入变量、优化模型复杂性:
①将输入变量转换为预测,预测可以分为3类,决策、分级和估计。
决策是预测模型使用输入测量来为每种情况做出最佳决策。最简单的预测就是决策。决策通常与某种类型的行动相联系
(例如将案件归类为捐赠者或非捐赠者)。由于这个原因,决策也被称为分类。决策预测的例子包括手写识别、欺诈检测和直接邮件征集。决策预测通常与分类目标变量有关。由于这个原因,它们被确定为初级、二级和三级,与目标的级别相对应。
分级是预测模型使用输入测量值对每种情况进行最优排序,通过对高于某一阈值的情况进行主要决策,而对低于相应较低阈值的情况进行二级和三级决策,排名预测可以转化为决策预测。在信用评分方面,信用评分在700分以上的称为良好风险;得分在600到700之间的人属于中度风险;而低于600则被认为是低风险。
估计是预测模型使用输入测量值来最佳估计目标值。
②从潜在的大量候选变量中选择有用的输入
输入选择,也就是减少输入的数量,显然是消除维数爆炸的方法。不幸的是,缩小维度也容易忽视重要信息。消除变量的两个主要原因是冗余和不相关性。
对于决策树模型,建模算法会自动忽略不相关的输入。其他的建模方法必须被修改或者依赖额外的工具来正确地处理不相关的输入。
③能够调整其复杂性以使用于一般数据集
最后考虑优化模型复杂度的任务,正确估计模型复杂性非常困难。在预测建模中,诚实评估模型性能的标准策略是数据分割。一部分用于拟合模型,即训练数据集,其余数据分离进行实证验证。根据Ockham的剃刀理论,最好的模型就是具有最高验证性能的最简单的模型。
2.2.1 创建训练集和测试集
在Sample中将数据分为训练集和测试集。结果中可以看到训练集和测试集中目标变量的占比。
2.2.2 创建决策树
EM中的模型大致分为三类:主要的、专业的和多种模式。
- 主要工具与三种最常用的预测建模方法相结合,如:决策树、回归和神经网络。
- 专用工具要么是主要工具的专门化,要么是为解决特定问题类型而设计的工具。如:
- 多个模型工具用于组合或生成多个预测模型。
创建决策树的条件:预测规则、分割点、剪枝。
决策树为预测建模提供了一个很好的介绍。决策树,类似于本课程中描述的所有建模方法,解决了在介绍中描述的每一个建模要点。使用预测规则对案例进行预测评分。分割搜索算法简化了输入选择。
模型的复杂性通过剪枝来解决。
2.2.3 优化决策树
子树中选择对应的方法对最大数进行剪枝。
2.3 回归模型
回归模型不同于决策树,回归模型假设输入变量和因变量之间有关联关系,而决策树没有这个要求。回归模型通过预测公式表示预测变量之间关系,并采用启发式探索的方法选择有用的输入变量
2.3.1 预测公式
线性回归和逻辑回归公式
除了公式以为,我们还应该考虑一下5个问题:
- 缺失值处理
- 模型的解释
- 极值和异常值处的理
- 非数字输入的处理
- 考虑非线性情况
对回归模型中缺失值的处理分为三种:
- 什么都不做
- 缺失值替换策略(主要补救措施)
- 创建缺失值标记
缺失的价值替换策略可分为两大类:
综合分布法:使用一种通用的方法来处理缺失的值。在任何缺少输入度量的情况下,缺少的值将被替换为一个固定的数字。最终的效果是修改输入的分布,使其包括在选定的固定数值上的点质量。
在综合分布法中,点质量的位置不是任意的。理想情况下,它应该被选择为对输入与目标关联的大小影响最小。在许多建模方法中,这可以通过将质点定位在输入的平均值来实现。
估计法:避免一刀切的方法,为每一个缺失值的案例提供定制的估算。这是通过将缺失值问题视为预测问题来实现的。也就是说,您可以训练一个模型来根据其他输入预测输入的值。
然后,当输入值未知时,可以使用该模型来预测或估计未知的缺失值。这种方法最适合由于缺乏知识而导致的缺失值,即不匹配或不披露,但不适用于不适用的缺失值
创建缺失值标记
为数据集中的每个输入创建一个缺失指示符,如果丢失值的原因在某种程度上与目标变量有关,则会丢失有用的预测信息。当对应的输入缺失时,缺失指示灯为1,否则为0。每个缺失的指示器都成为模型的输入。
2.3.2 参数调整
选择模型中可以选择模型优化的方法:向前迭代、向后迭代、逐步迭代,并且可以确定选择模型的准则。
2.3.3 对极值的处理
经典的回归分析对输入的分布不做任何假设。唯一的假设是目标(或其某个函数)的期望值是固定输入测量值的线性组合。
首先,在大多数实际应用中,预期目标值和输入值之间的关系不会无限制地增加。相反,它典型地逐渐走向某种水平渐近线。标准的回归模型不能适应这样的关系。
其次,当一个点从分布的总体均值扩展时,这个点对模型拟合有更大的影响或杠杆作用。建立在极端分布输入上的模型试图以牺牲大量数据(通常接近输入平均值)的拟合为代价来优化最极端点的拟合。这可能导致夸大或低估输入与目标的联系。
一种更简单且更有效的方法可以转换或正则化违规输入,从而消除极值。
2.4 神经网络模型
神经网络可以看作是一组派生输入(称为隐单元)上的回归模型。
隐藏的单位可以被认为是原始输入的回归。隐藏的单位“回归”包括一个默认的链接函数(在神经网络语言中,是一个激活函数)、双曲正切。
与逻辑回归一样,权重估计过程从最小二乘变化到最大似然。
尽管模型可能很简单,但模型的解释却绝对不简单。
这种缺乏可解释性经常被认为是神经网络的一个主要缺点。当然,无论使用什么技术来建模,复杂的输入或目标关联都很难解释。假设神经网络正确地模拟了这种关联,那么它就不应该有错。
神经网络与回归同类有一些相同的预测复杂性。最普遍的问题是价值观的缺失。与回归分析一样,神经网络需要一个完整的评估和评分记录。
极端值或异常值也会给神经网络带来问题。隐藏单元中的双曲切线激活函数在一定程度上缓解了这一问题。
与线性回归不同,神经网络很容易适应输入和目标之间的非线性和非加性关联。事实上,主要的挑战是过度适应,即错误地发现非线性和相互作用。
解释神经网络模型可能很困难。虽然这是一个问题,但没有简单的解决方案。
2.3.2 模型更新的方式
复杂性优化是神经网络建模不可分割的一部分。其他建模方法从一系列可能的模型中选择一个最优模型。神经网络模型只有一个模型,该如何优化?
神经网络将每一个优化过程作为一个单独的模型。选取拟合统计量最小的迭代值作为最终模型。这种模型优化方法称为停止训练。
训练通过更新参数估计以减少目标函数值的方式进行。
2.5 模型评估
2.5.1 模型拟合统计量
对于分类变量,模型统计量有:精度/错误分类、利润/亏损、逆前阈值
对于分级变量,模型统计量有ROC和基尼系数
对于估计变量,模型统计量MSE、Likehood
2.5.2 统计图
2.5.3 抽样方法
样本不均衡时的处理方法,
一个常见的预测建模实践是,从一个主要结果比例不同于真实总体比例的样本构建模型。当主要结局病例与次要结局病例的比例很小时,通常会这样做,单独抽样的名称来源于用于生成建模数据的技术,即根据目标结果单独抽取样本。对于罕见的原发性结局病例,通常选择所有原发性结局病例。
2.5.4 收益矩阵
2.6 模型应用
将训练出的模型应用到数据集上。
通过连接评估菜单中评分节点,可以得出新数据在已训练模型上的情况。
此时需要创建预测数据集,并将预测数据集标记为评分。
除此之外,还可以在评分窗口中看到sas代码,当部署到外部环境中,还可以生成java代码和C语言代码。
2.7 模式探索
许多人认为数据挖掘(尤其是模式发现)意味着神奇地发现隐藏的信息,而不必制定问题,也不必考虑数据的结构或内容。这是一个不幸的误解。我们要意识到模式发现的局限性,并就这些分析如何失败提供指导。这些缺点通常可以分为以下六类:
数据质量差,假设许多形式:错误(测量或记录错误),失踪,不完整或过时的价值观,和不一致(定义)的变化。在虚假数据中发现的模式是幻想。
时机,将可能的转化为可感知的。汉德把这个问题称为多重数问题,或真正的大数定律。这样的例子比比皆是。在美国,一个人中彩票的几率非常小,而这个人中两次奖的几率却出奇的高。然而,美国人(在某一年)两次获得该奖项的几率实际上比偶数还要高。另一个例子,你可以搜索圆周率的数字“预言”字符串,如你的生日或历史上的重要日期,通常会找到它们。
阻碍,对生成一组数据的过程采取行动,可能会破坏或扭曲检测到的模式。例如,欺诈检测技术导致预防措施,但欺诈行为往往演变为响应这种干预。
可分离,根据数据集中发现的信息,有趣的东西与普通的东西并不总是可能分离的。尽管有许多安全措施,但据估计,信用卡公司在网上交易中每100美元损失0.18美元至0.24美元
2.7.1 聚类分析
2.7.2 购物篮分析
2.8 专题分析