Clementine决策树CHAID算法文档格式.docx
《Clementine决策树CHAID算法文档格式.docx》由会员分享,可在线阅读,更多相关《Clementine决策树CHAID算法文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
-如果目标变量是定类变量,则采用卡方检验
-如果目标变量为定距变量,则采用F检验
(统计学依据数据的计量尺度将数据划分为三大类,即定距型数据(Scale)、定序型数据(Ordinal)和定类型数据(Nominal)。
定距型数据通常指诸如身高、体重、血压等的连续性数据,也包括诸如人数、商品件数等离散型数据;
定序型数据具有在固有大小或高低顺序,但它又不同于定距型数据,一般可以数值或字符表示。
如职称变量可以有低级、中级和高级三个取值,可以分别用1、2、3等表示,年龄段变量可以有老、中、青三个取值,分别用A、B、C表示等。
这里无论是数值型的1、2、3还是字符型的A、B、C,都是有大小或高低顺序的,但数据之间却是不等距的。
因为低级和中级职称之间的差距与中级和高级职称之间的差距是不相等的;
定类型数据是指没有在固定大小或高低顺序,一般以数值或字符表示的分类数据。
)
F检验:
比较两组数据的方差
,
,假设检验两组数据没有显著差异,F<
F表,则接受原假设,两组数据没有显著差异;
F>
F表,拒绝原假设,两组数据存在显著差异。
属性变量预处理的具体策略
-如果仅有一个或两个分组,则不做合并处理
-根据卡方统计量(或似然比卡方)的P-值决定合并哪些组(
-如果用户指定在合并同时还考虑组拆分(Allowsplittingmergedcategories),则新近合并的组中如果包括三个以上的原始分组,应根据检验结果判断是否需再拆分成两组(P-值<
split-merge)
确定当前分支变量和分隔值
-计算经预处理后的各属性变量与目标变量的卡方检验统计量和P-值。
P-值最小的变量(与目标变量联系最紧密)作为当前的最佳分支变量,该变量的所有分组形成该分支下的子节点
对每个子节点重复上述处理,直到满足收敛条件为止
5.CHAID的适用围
当预测变量是分类变量时,CHAID方法最适宜。
对于连续型变量,CHAID在缺省状态下将连续变量自动分为10段处理,但是可能有遗漏。
当预测变量是人口统计变量时,研究者可以很快找出不同细分市场特征,免去对交叉分析表归并与检查之苦。
6.CHAID的预剪枝
基本参数:
1.决策树最大深度:
如果决策树的层数已经达到指定深度,则停止生长。
2.树中父节点和子节点所包含的最少样本量或比例:
对父节点是指,如果节点的样本量已低于最少样本量或比例,则不再分组;
对于子节点是指,如果分组后生成的子节点中的样本量低于最小样本或比例,则不必进行分组。
3.当输入变量与输出变量的相关性小于一个指定值,则不必进行分组。
7.CHAID模块的优点:
-不像CART和QUEST模块,CHAID可产生多分枝的决策树
-目标变量可以定距或定类的
-从统计显著性角度确定分支变量和分隔值,进而优化树的分枝过程
-CHAID是建立在因果关系的探讨中的,依据目标变量实现对输入变量众多水平的划分
例:
心脏数据综合诊断数据
现有数据OVERALL_DIAGNOSIS(综合诊断)
本案例是一个医学心脏病综合诊断报告案例,目的通过已知的22个变量F1~F22来预测每个病人是否正常。
0-正常,1-异常
卡方检验:
(1)零假设
:
心脏病检验结果与F13变量无关。
(F13变量对输出变量无影响)
卡方值越大,说明两者有关系可能性越大。
(2)确定自由度:
(行数-1)*(列数-1)=1
选择显著水平
=0.05,对应的卡方值K为3.841
(3)卡方值=
=37.35>
10.828>
3.481
拒绝原假设。
故心脏病检验结果与F13有关。
(卡方值为37.35时,对应的P值已趋于0,即“心脏病检验结果与F13有关”成立的概率趋于1-0=100%)
建立CHAID模型
-在“建模”中选择CHAID节点,将其加入数据流中
“TYPE”节点
-“Range”围:
用来描述数值,如0-100或0.75-1.25围。
一个围值可以是一个整数,实数,日期/时间。
-“Discrete”离散:
用于不同的字符串数值的确切数目是未知的。
这是一个未初始化的数据类型,即对数据的存储和使用的所有可能的信息尚不清楚。
一旦数据被读取,类型标志,集,或无类型的,取决于最大集大小属性对话框中指定的流。
-“Flag”标志:
用于具有两个不同值的数据,如Yes和No或1和2的数据。
可能是文本,整数,实数,日期/时间数据。
注:
日期/时间是指三种类型的存储时间,日期或时间戳
-“Set”集:
用来描述具有多个不同的值的数据,每个被视为一个集的成员,如小型/中型/大型数据。
在这个版本的Clementine,一套可以有任何存储数值---字符串或日期/时间。
请注意,设置类型设置不会自动改变字符串的值。
-“OrderedSet”有序集合:
用来描述具有多个不同的值的数据,有一种在的秩序。
例如,工资类别或满意度排名可以分为一组有序。
有序集的顺序是指通过其元素的自然排序顺序。
例如,1,3,5,是一组整数的默认排序顺序,而高,低,师大学(升序按字母顺序排列)是一组字符串的顺序。
有序的集合类型,可让您定义一组有序数据的可视化,建立模型(C5.0,C&
RTree,TwoStep),并扩展到其他应用程序,如SPSS,承认有序数据作为一个独特的类型。
此外,任何存储类型(真实的,整数,字符串,日期,时间,等等)的领域都可以被定义为一个有序的集合。
-“Typeless”无类型:
用于数据不符合任何上述类型的集合类型或包含太多值的集合类型。
它是有用于一个集合包含太多值(如)。
CHAID“字段”选项
目标。
对于需要一个或多个目标字段的模型,请选择目标字段。
此操作与在类型节点中将字段的方向设置为输出类似。
输入。
选择输入字段。
此操作与在类型节点中将字段的方向设置为输入类似。
分区字段。
该字段允许使用指定字段将数据分割为几个不同的样本,分别用于模型构建过程中的训练、检验和验证阶段。
通过用某个样本生成模型并用另一个样本对模型进行检验,可以预判出此模型对类似于当前数据的大型数据集的拟合优劣。
如果已使用类型或分区节点定义了多个分区字段,则必须在每个用于分区的建模节点的“字段”选项卡中选择一个分区字段。
(如果仅有一个分区字段,则将在启用分区后自动引入此字段。
)同时请注意,要在分析时应用选定分区,同样必须启用节点“模型选项”选项卡中的分区功能。
(取消此选项,则可以在不更改字段设置的条件下禁用分区功能。
使用频数字段。
此选项允许选择某个字段作为频数权重。
如果训练数据中的每条记录代表多个单元(例如,正在使用聚合的数据),则可采用此项。
字段值应为代表每条记录的单元数。
使用加权字段。
此选项允许选择某个字段作为案例权重。
案例权重将作为对输出字段各个水平上方差的差异的一种考量。
CHAID“模型”选项
-模型名称指定要产生模型的名称
-使用分区数据若用户定义了此选项,则模型会选择训练集作为建模数据集,并利用测试集对模型评价。
利用训练集建立模型,用测试集剪枝。
-方法该节点提供了CHAID和ExhaustiveCHAID两种方法,后者会花更多时间,但会得到更为可靠的结果
ExhaustiveCHAID算法是CHAID的改进算法。
它的改进主要集中在如何避免自由度的影响上。
在选择最佳分组变量时采用了“将分组进行到底“的策略。
也就是说,仍然保留输入变量预处理的结果,并将各分组作为决策树的各分枝。
但在计算检验统计量的概率P值时,将继续合并输入变量的分组,直到最终形成两个组或两个“超类”为止,进而确保所有输入变量的检验统计量的自由度都相同。
最后,再比较概率P值,取概率P值最小的输入变量为当前最佳分组变量。
-模式
生成模型:
计算机直接给出最终模型,自动建立和剪枝决策树。
启动交互回话:
可以逐层建立,修改和删除节点。
若同时勾选“使用树指令”,则可以指定任意层节点的分割方式或字节点数,所做设定也可以保存,以供下次建树使用。
-最大树状图深度:
用户可以自定义CHAID树的最大层数,避免过度拟合问题。
(完整的决策树能够准确反映训练样本集中数据的特征,但可能因其失去一般代表性而无法用于对新数据的分类预测,这种现象称为“过度拟合”现象)
CHAID“专家”选项
-模式
该节点提供简单和专家模式-
Alpha用于合并:
指定合并的显著水平。
若要避免合并,该值应设为1。
该选项对于ExhaustiveCHAID无效。
默认值为0.05,表示当P值>
0.05时,认为输入变量目前的分组水平对输出变量取值没有显著影响,可以合并;
否则不能合并。
(该值越大,合并的可能性越不容易,树就会越庞大)
-Alpha用于分割:
设定分割标准。
显著水平越低,则树的分叉越少。
默认值为0.05,表示当P值<
0.05时,认为输入变量目前的分组水平对输出变量取值有显著影响,可以分割;
否则不能分割。
-卡方用于类别目标:
当目标变量时分类变量时,CHAID模型可利用Pearson卡方值或者似然比方法来进行分类。
但小样本下不应该使用Pearson卡方值,似然比更为通用和稳健。
似然比检验LRT:
LR=2*(lnL1-lnL2),似然函数
-正在停止…:
节点终止选项。
这些选项控制树的构造,设置最小分支数目以避免分割出过小的子群
-父分支(%)中的最小记录数:
表示当父节点中的样本百分比(占总样本量的百分比)低于指定值(默认2%)时则不进行分组。
-子分支(%)中的最小记录数:
表示当分组后产生的子节点中的样本百分比低于指定值(默认1%)时则不进行分组。
-Epsilon(
)用于收敛:
当卡方值大于Epsilon值时,需进一步迭代;
否则停止迭代
-收敛的最大迭代次数:
指定收敛的最大迭代次数。
当实际迭代次数超过设定值时,终止计算。
-允许分割合并的类别:
选中表示,新近合并的组中如果包括三个以上的原始分组,允许将它再拆分成两个组。
例如,可以将[1,2,3]组拆分成[1,2]和[3]或是[1],[2,3]。
-使用Bonferroni调整:
对策略变量组合进行分类时,根据检验次数调整显著水平,以获得较稳健的分类树
CHAID“成本”选项----误判成本值,调整误判(clementine决策树之调整误判成本来优化模型)
-在某些情况下,特定类型的错误比其他类错误所引起的损失更大。
成本选项卡允许指定不同类型预测错误之间的相对重要性
-错误归类损失矩阵显示预测类和实际类每一种可能组合的损失。
所有错误归类都预设为1,要输入自定义损失值,选择“使用误分类损失”,然后把自定义值输入到损失矩阵中。
模型执行结果
模型的收益评价-
节点:
节点编号,与决策树图形展示中的节点编号相对应。
这个是CLEMENTINE自动分配的,每次运行时会不同。
n:
节点包含的样本个数。
例如:
7号测试节点,总个数为:
24.
节点(%):
节点包含的样本个数占总样本的百分比。
7号测试节点,24/85=28.24%
收益:
节点包含指定类别(这里为0类)样本的个数。
高收益的节点应包含尽可能多的指定类别的样本。
7号测试节点,“0“类个数为:
12
收益(%):
节点包含指定类别(这里为0类)的样本占相应类别总样本数的百分比。
同样,高收益的节点值应越高。
(匹配项)例如:
7号测试节点,12/20=60%.
响应(%):
节点包含指定类别(这里为0类)样本占本节点样本的比例。
7号测试节点,12/24=50%
指数(%):
节点包含指定类别(这里为0类)样本的比例(响应%)是所有同类别样本占总样本比例的百分比,这个值也称为提升度(lift).或:
收益(%)是本节点样本占总样本比例的百分比。
7号测试节点,50%/(20/85)=212.50%
提升度是数据挖掘中最重要且应用最广的模型评价指标,其定义为
其中,
表示在模型所限定的特定样本空间输出变量值为t类的概率;
表示在所有样本空间输出变量值为t类的概率。
可见,提升度本质是收益(%)和响应(%)综合的反应。
该值越大说明模型对t类样本所应具备的特征和“捕捉”能力越强,模型的收益越好。
制作模型评价图
通常按提升度(指数)降序重新排列,然后按百分比点的样本所在节点的累计收益评价数据。
Gains图
横坐标通常为分位点(按置信度降序),纵坐标是累计Gains,定义为:
分位累计命中率/总命中率*100%
Gains图纵坐标取值围为0%~100%。
理想的Gains图应在前期快速达到较高的累计Gains,很快趋于100%并平稳
Lift图(提升度,该值越大说明模型的收益越好)
横坐标通常为分位点(按置信度降序),纵坐标是累计Lift,定义为:
(分位累计命中率/分位样本数)/(总命中数/总样本数)
Lift图纵坐标一般从大于1开始逐渐减少至1
理想的Lift图应在较高的累计Lift上保持较长一段,然后迅速下降到1
Response图
横坐标通常为分位点(按置信度降序),纵坐标是累计Response,定义为:
(分位累计命中数/分位样本数)*100%
Response图与Lift图相似。
理想的Responset图应在较高的累计Response上保持较长一段,然后迅速下降
点击“风险”窗口得到错判矩阵
本例决策树的错判率为0.165,标准差为0.023.可以看出,实际正常结果判为异常的错误概率占正常人群的23.64%(13/55),实际异常结果判为正常的错误概率占异常人群的14.62%(31/212)
模型预测及应用
若模型的错判概率在我们可以接受的围之,则我们可以应用决策树模型进行预测。