*************P****'**************************_'**`'**a'**b'**c'**d'**e'**f

advertisement
数据挖掘技术
赵卫东 博士
复旦大学软件学院
wdzhao@fudan.edu.cn
1
分类和预测
2
分类



对离散数据的分类称为分类,对数值数据的分类称为预测。
分类要解决的问题是为一个事件或对象归类,即确定一个
特定的对象属于哪一类。分类函数或分类模型(分类器)
分类模型是通过那些已知历史数据训练出来的。



这里用于建立模型的数据称为训练集,通常是已经掌握的历
史数据。
在训练集中每个对象都赋予一个类别的标记,不同的类别具
有不同的标记。
分类就是通过分析训练集(决策表)中的数据,为每个类
别做出准确的描述或建立分析模型或挖掘出分类规则,然
后用这个分类规则对其它数据对象进行分类。
3
决策树
新数据
input
判定树分类算法
output
分类
训练集
决策树
4
使用决策树进行分类



决策树
 一个树形的结构
 内部节点上选用一个属性进行分割
 每个分叉都是分割的一个部分
 叶子节点表示一个分类
决策树生成算法分成两个步骤
 树的生成
 开始,数据都在根节点
 递归的进行数据分片
 树的修剪:去掉一些可能是噪音或者异常的数据
决策树使用: 对未知数据进行分割
 按照决策树上采用的分割属性逐层往下,直到叶子节点
5
决策树算法


基本算法(贪心算法)
 自上而下分而治之的方法
 开始时所有的实例都在根节点
 属性都是分类型 (如果是连续的,将其离散化)
 所有记录用所选属性递归的进行分割
 属性的选择是基于一个启发式规则或者一个统计的度量 (如信息增
益)
停止分割的条件
 一个节点上的实例都属于同一个类别;
 没有属性可以再用于对数据进行分割
6
属性选择的统计度量

信息增益—Information gain (ID3/C5.0)




信息增益率(C4.5)
基尼指数—Gini index (IBM Intelligent Miner)



所有属性假设都是分类型字段
经过修改之后可以适用于数值型字段
能够适用于分类和数值字段
χ2检验(CHAID)
其他
7
信息增益(ID3)

任意样本分类的期望信息:
 I(s1,s2,……,sm)=-∑Pi log2(pi)



(i=1..m)
其中,数据集为S,m为S的分类数目, Pi 
| Si |
|S|
Ci为某分类标号,Pi为任意样本属于Ci的概率, si为分
类Ci上的样本数
由A划分为子集的熵:
 E(A)= ∑j(|s1j|+ ……+|smj|)/|s| * I(s1j, ……,smj)


A为属性,具有V个不同的取值
信息增益:Gain(A)= I(s1,s2,……,sm) - E(A)
8
训练集
age
<=30
<=30
30…40
>40
>40
>40
31…40
<=30
<=30
>40
<=30
31…40
31…40
>40
income student credit_rating
high
no
fair
high
no
excellent
high
no
fair
medium
no
fair
low
yes fair
low
yes excellent
low
yes excellent
medium
no
fair
low
yes fair
medium
yes fair
medium
yes excellent
medium
no
excellent
high
yes fair
medium
no
excellent
buys_computer
no
no
yes
yes
yes
no
yes
no
yes
yes
yes
yes
yes
no
9
使用信息增益进行属性选择

Class P: buys_computer = “yes”

Class N: buys_computer = “no”

I(p, n) = I(9, 5) =0.940

Compute the entropy for age:
5
4
I ( 2,3) 
I ( 4,0)
14
14
5

I (3,2)  0.971
0.694
14
E ( age) 
Hence
Gain(age)  I ( p, n)  E (age)
age
<=30
30…40
>40
pi
2
4
3
ni I(pi, ni)
3 0.971
0 0
2 0.971
Similarly
Gain(income)  0.029
Gain( student )  0.151
Gain(credit _ rating )  0.048
10
分枝
11
决策树
age?
<=30
student?
30..40
overcast
yes
>40
credit rating?
no
yes
excellent
fair
no
yes
no
yes
12
决策树在犯罪分析中的应用
有无固定
职业
家庭经济
状
况
年龄
文化程度
有无特长
社会关系
犯
罪
记录
违法
记录
家庭
和睦
状况
犯罪
记录
次数
是否
经常
赌博
犯罪程度
无
差
30-40
初中
否
有
差
有
4
是
严重
有
中
20-30
中专
否
无
差
无
0
是
较轻
有
差
<20
高中
否
无
中
无
1
否
较轻
无
差
30-40
初中
有
无
中
有
1
是
严重
无
差
>40
初中
有
有
差
无
2
是
严重
有
差
20-30
高中
有
有
中
有
6
是
严重
有
差
20-30
中专
否
无
中
有
1
否
较轻
有
差
30-40
大专
有
有
差
无
3
是
严重
无
中
<20
初中
有
无
好
有
5
是
严重
无
差
20-30
初中
否
有
差
无
0
否
严重
有
好
<20
高中
否
无
差
有
1
否
较轻
无
差
30-40
初中
有
无
中
有
0
是
严重
无
中
30-40
初中
否
无
差
有
1
是
较轻
有
差
>40
小学
否
有
中
无
2
否
严重
无
差
>40
初中
否
无
差
无
0
否
严重
无
差
30-40
高中
否
无
好
无
4
否
较轻
无
好
20-30
中专
有
无
差
有
2
否
较轻
13
犯罪潜在风险决策树
14
典型的分类树 (规则)
15
典型的分类树 (决策树)
16
信息增益率


C4.5算法继承了ID3算法的优点,算法基本过程与ID3算法相似,
但在选择决策树的分枝属性时用信息增益率选择属性,克服了选
择属性时信息增益偏向选择取值种类较多的属性的不足。
属性A信息增益率
的定义为:
式中v为属性A的不同取值 的个数,从中可以看出,当v比较大时,
就会降低增益率。
17
基尼指数(Gini Index)

集合T包含n个类别的记录,那么其Gini指数就是
pj 类别j出现的频率

n
gini(T )  1  p 2j
j 1
如果集合T分成两部分 N1 and N2 。那么这个分割的Gini就是
gini split (T ) 

N 1 gini( )  N 2 gini( )
T1
T2
N
N
提供最小Ginisplit 就被选择作为分割的标准.
18
过拟合问题
此处剪枝
测试数据
训练数据
剪枝


决策树深度
避免过拟合
决策树泛化
19
Pruning Tree


目的:
 消除决策树的过拟合(Over Fitting)问题
 实质:消除训练集中的异常和噪声
两种方法:
 先剪枝法(Public 算法)
 后剪枝法(Sprint 算法)
20
误分类率
实际类别
分类类别
C1
C2
C3
C1
0
r12
r13
C2
r21
0
r23
C3
r31
r32
0
Cost (or loss) matrix
21
决策树算法的可伸缩性


ID3、C4.5等算法对规模较小,可以一次放入内存的训练样本集很有效,
但实际上数以百万计样本的超大型训练集是常见的,大多数情况下无法把
训练样本集全部放入内存,导致这些算法的有效性降低。因此需要增加可
伸缩的方法以节省空间。
IBM的研究人员运用一些特殊数据结构,例如属性表和类表,在1996年提
出了一种快速的、可伸缩的SLIQ算法,可以处理离散属性和连续属性。
SLIQ算法首先把训练样本集划分成若干子集,使每一个子样本集都能放入
内存,然后对每个子样本集分别构造一棵决策树,再把这些决策树综合,
得到最终决策树。SLIQ 算法可以处理大规模的训练样本集,具有较好的
伸缩性。与传统决策树算法相比,减少了运行时间。SLIQ算法在执行过程
中需要随时修改类表,类表常驻内存,而类表的大小会随着训练样本集的
增大而增大,因此SLIQ算法对内存容量有一定的要求。
22
常用的决策树算法

ID3, C4.5, C5.0算法

CART (C&R)算法

CHAID算法

QUEST算法
23
CART算法

CART算法(C&R算法)采用一种二分递归分割的方法,每次都把当前样
本集分割为两个子样本集,使生成的决策树的非叶结点都有两个分枝,
因此CART算法生成的决策树是结构简单的二叉树。这种算法选择分枝属
性A的判别函数如下:m
 ( A)  2 pL pR  | p(iL )  p (iR ) |
i 1
式中pL和pR分别是属性A的左右分枝的样本数占总体的比例,p(iL)和p(iR)
分别表示属性A的左右分枝中样本子集属于类别i的比例,m为分类类别数。
使Ф(A)最大的属性A作为分枝的属性,因为这需要满足下面的条件:



左右分枝样本的数量差不多。
左右分枝的样本集尽量不要属于同一类。
CART 算法也使用后剪枝。在决策树生成过程中,考虑到多展开一层就
会有更多信息被发现,CART 算法运行到不能再长出分枝为止,从而得
到一棵最大的决策树。然后CART 对生成的决策树进行剪枝。剪枝算法
使用独立于训练样本集的测试样本集对子树的分类错误进行计算,找出
分类错误最小的子树作为最终的分类模型。
24
QUEST算法




QUEST(quick unbiased efficient statistical tree)算法是1997
年Loh等提出的二元决策树分类方法。
QUEST算法也需要确定分支属性和分割值等问题,但是以不同
的策略处理分支属性选择和分隔值的确定,运算过程比CART
算法简单有效。
QUEST算法的输入变量可以使分类型变量和数值型变量,但目
标变量(输出变量)是二值型(多值的变量要通过聚类转化为
二值的)。
QUEST算法中确定分支属性时,需要检验属性对目标变量的独
立性,以便确定分支属性。
25
评估分类算法的准确性


k次交叉校验(k-fold cross validation: 把数据集分为k
子集,用k-1个子集为训练集,1个子集作为测试集,然
后k次交叉验证。
如何提高分类算法的准确率?
26
Bagging


基本思想是用一个不稳定(数据集小的变化可能使分
类结果有显著的变化)、弱学习算法(准确率不高),
对一个训练集用该算法使用多次,得到多个分类模型。
对于新样本的分类,可以用这些分类模型进行投票
(得票最多的类别作为结果),结果会提高决策树的
分类准确率。
可以处理大数据集。
27
Boosting



C5.0使用来提高模型准确率。
Boosting的基本思想是每个样本都赋予权重,每次迭代
对分类错误的样本增加权重,以便下次的样本关注这些
样本。这种方法也能提高不稳定分类算法的准确率。
Boosting和Bagging的区别是Bagging的训练集是随机选
择,相互独立的,分类模型可以并行生成;而Boosting
的训练集不是独立的,与前一轮的学习有关,分类模型
只能顺序生成。
28
神经网络
29
神经网络的组成



神经网络是由许多人工神经元通过一定的互联方式组成。这些神经元的结构比较
简单,但它们复杂的连接(拓扑结构)会形成功能很强的网络。
如下图所示,神经元一般有多个输入x1, …, xn,这些输入通过组合函数加权求和,
然后再利用神经元的激活函数f产生输出y。
神经元之间的连接强度用权值 w表示。神经元的输入和输出之间的关系用函数表
示:
y  f ( wi xi   )

其中 是神经元的偏置,在网络初始化时赋予小的随机数
。激活函数(activation
function)
1
y
1  e x
常用Sigmoid函数(还有线性函数和双曲正切函数等)。
输入
w1
x1
x2
…
xn
w2
输出
y
神经元
wn
θ
30
典型的多层前馈神经网络
输入层
隐层
输出层
x1
x2


x3
Oi
wij
Oj
wjk
Ok
隐层神经元j的输入是其输入的线性组合:
不同层次神经元之间的连接强度用相应的权wij、wjk表示,这些
权在网络初始化时被赋予很小的随机数,例如-0.5到0.5或-1.0到
1.0之间的值。整个信息的处理是单向的,网络没有环形结构。
输入xi直接提供给输入层的神经元,对于输入层的神经元i,它的
输出Oi等于输入Ii:Oi = Ii。这些神经元的加权和同时提供隐层
的神经元,隐层神经元的输出构成输出层神经元的输入,输出层
的神经元给定样本的分类或预测。
Ij 
w O
ij
i
 j
i
用激活函数Sigmoid函数作用于隐层的神经元j,j的输出Oj用下式计算:
Oj 
1
1 e
I j
输出层神经元的输入和输出与隐层神经元的情况类似。隐层和
输出层的非线性激活关系使神经网络可以近似任何函数。
31
BP神经网络的训练(1)






分析业务问题。
选择训练样本集,对其输入值和输出值进行预处理。
依靠经验确定网络的拓扑结构,并对神经元的权值和偏置进行初始化。
利用反向传播等算法训练网络,不断调整网络权值减少预测误差,获
得网络的最佳权。
用测试集检验网络的分类或预测质量。
预测未知样本的分类。
BP神经网络是一种监督学习方法,使用反向传播的学习算法:通过迭代处理一组训练样本,把每
个样本的网络输出值Tk与实际值Ok比较,然后按一定的方式调整网络权和神经元的偏置,使得实际
值和网络输出值之间的误差平方和最小:
ERR 
  (O
k
 Tk ) 2
sample k
式中sample为样本集。这种网络权的调整“后向”进行,即由输出层,经由隐层,多次重复训练,
直到满足误差要求。
32
BP神经网络的训练(2)
为使ERR最小,可以利用最优化理论的梯度下降法更新网络权值。通常有
两种方法更新权和偏置:一种是每训练一个样本就更新权和偏置,另一种
是在处理训练集中的所有样本之后再更新权和偏置。这实际上是以wij和wjk
为变量的多元函数ERR的最小化问题。利用梯度下降法,权的更新方式如
下:
ERR
wij  wij  
wij
w jk  w jk  

式中 是学习率,
ERR
w jk
0  1
这个参数可避免陷入局部最小。学习率太小,会使网络学习速度慢,而
太大的学习率可能使学习过程振荡。通常在网络训练的初期学习率设置
大一些,随着训练误差的减少,学习率可逐渐变小。
33
神经网络的应用(1)


在财务方面,神经网络可用来协助投资公司预测普通股的表
现、公司的债券等级或公司破产的可能性。
VISA国际公司用神经网络来帮助侦测信用卡欺诈,它监控所
有VISA交易并且注意持卡人消费形态的改变。
收入
负债
信誉良好风
险值
年龄
信誉不良风
险值
付款
记录
34
神经网络的应用(2)

股票拐点趋势预测:利用历史价格数据预测中短期(从2到10或15
天)的价格走势。
35
IBM SPSS Modeler神经网络
36
贝叶斯分类器
37
贝叶斯定理

假设X和Y在分类中可以分别表示样本的属性集和类别。P(X,Y)表
示它们的联合概率, p(X|Y) 和p(Y|X)表示条件概率,其中是后验
概率,而称为Y的先验概率。X和Y的联合概率和条件概率满足下
列关系:
p( X , Y )  p(Y | X ) p( X )  p( X | Y ) p (Y )

变换后得到
p (Y | X ) 
p ( X | Y ) p (Y )
p( X )
38
朴素贝叶斯分类器

对于属性集
,如果
之间相互独立,即
X  { X1 , X 2 ,..., X n }
X1 , X 2 ,..., X n
n
p( X | Y )   p( X i | Y )
i 1
,有朴素贝叶斯分类器:
n
p(Y | X ) 
p(Y ) p( X i | Y )
i 1
p( X )
其中 p( X ) 是常数,先验概率 p(Y ) 可以通过训练集中每类样本所占的
比例估计。给定 Y  y,如果要估计测试样本X的分类,由朴素贝叶斯
分类器得到y类的后验概率:
n
p(Y  y | X ) 
p(Y  y ) p( X i | Y  y )
只要找出使最大的类别y即可。
i 1
p( X )
39
贝叶斯分类器在供电电容生产中的应用(1)


假设某段时期内某电脑主板制造商所用的供电电容是由三家电容
生产厂提供的。对制造商在这段时期内的业务数据进行抽样,得
到下表。
因为三家电容工厂的供电电容在电脑主板生产商的仓库中是均匀
混合的,并无明显的区别标志。现在电脑主板生产商想通过对数
据进行分析,解决下面两个问题:
(1)随机地从仓库中取一只供电电容是次品的概率。
(2)从仓库中随机地取一只供电电容,若已知取到的是一只次品,
想分析此次品来自哪家工厂的可能性最大。
40
贝叶斯分类器在供电电容生产中的应用(2)
假设 X 表示“取到的是一只次品”
,Y = i,(i = 1, 2, 3)表示“取到的产品是由第 i 家工
厂提供的”
,则问题转化为求解 p(X)与 p (Y  i | X ) 。由表格 5.9 得到后验概率
p( X | Y  1)  2%, p( X | Y  2)  1%, p( X | Y  3)  3%
先验概率为
p(Y  1)  15%, p(Y  2)  80%, p(Y  3)  5%
由全概率公式计算得出
p( X )  p( X | Y  1) p(Y  1)  p( X | Y  2) p(Y  2)  p( X | Y  3) p(Y  3)
 0.02  0.15  0.01 0.8  0.03  0.05  0.0125
然后求解 p (Y  i | X ) ,根据贝叶斯定理
p(Y  i | X ) 
p( X | Y  i ) p(Y  i )
p( X )
由上式可以计算次品出自生产厂商 1 的概率
p( X | Y  1) p(Y  1) 0.02  0.15
p(Y  1| X ) 

 0.24
p( X )
0.0125
类似可以计算次品出自其他两个厂商的概率
p (Y  2 | X )  0.64 , p (Y  3 | X )  0.12
可见从仓库中随机地取一只电容,如果是一只次品,那么此次品来自工厂 2 的可能性
最大。
41
贝叶斯分类器在垃圾邮件处理中的应用


贝叶斯分类器是对邮件的内容进行分析,不仅考虑关键词在
垃圾邮件中出现的概率,也考虑关键词在正常邮件中的概率。
当一封新的邮件到达时,这封邮件的内容将被分解成字串。
依据数据库中这些词的概率通过公式进行计算,用贝叶斯定
理计算出的垃圾邮件可能性高于某个阈值时就判定这封邮件
是垃圾邮件。
贝叶斯过滤防范有一定的智能性,通过一定的学习方法可以
对数据库词的概率进行更新,可以适应垃圾邮件的变化情况。
42
其他分类方法





K-最近邻分类(KNN)
遗传算法
粗糙集理论
模糊理论
…
43
IBM SPSS Modeler KNN
44
聚类
Clustering
45
聚类
-聚类就是把整个数据分成不同的组,并使组与组之间的差距尽可大,
组内数据的差异尽可能小。
46
发现客户的特征

客户分割(segmentation)是一种发现用户
特性的方法。数据驱动的分割将一个基于数
据的客户信息的自然客户分组:从而给你一
个客户信息的概况,这可以直接转化为增加
客户的经营策略。
新浪微博兴趣圈自动挖掘
48
与分类的区别


与分类不同,在开始聚集之前用户并不知道要把数据分
成几组,也不知分组的具体标准,聚类分析时数据集合
的特征是未知的。
聚类根据一定的聚类规则,将具有某种相同特征的数据
聚在一起也称为无监督学习。分类用户则知道数据可分
为几类,将要处理的数据按照分类分入不同的类别,也
称为有监督学习。
49
聚类问题的数学描述

给定数据集合V,根据数据对象间的相似程度将数据集
合分成组,并满足:
{C j | j  1, 2,..., k}
Ci  V
Ci  C j  
k
i 1
Ci  V
则该过程称为聚类。Ci称为簇。
50
基本概念

聚类中心

类大小

类密度

类描述

一个好的聚类方法要能产生高质量的聚类结果—簇,这些
簇要具备以下两个特点:

高的簇内相似性

低的簇间相似性
51
聚类需求

可伸缩性

能够处理不同类型的属性

能发现任意形状的簇

在决定输入参数的时候,尽量不需要特定的领域知识;

能够处理噪声和异常

对输入数据对象的顺序不敏感

能处理高维数据

能产生一个好的、能满足用户指定约束的聚类结果

结果是可解释的、可理解的和可用的
52
计算对象之间的距离(1)

通常使用距离来衡量两个对象之间的相异度。

常用的距离度量方法有:
明考斯基距离( Minkowski distance):
d (i, j)  q (| x  x |q  | x  x |q ... | x  x |q )
i1
j1
i2
j2
ip
jp
其中 i = (xi1, xi2, …, xip) 和 j = (xj1, xj2, …, xjp) 是两个p维的数据对
象, q是一个正整数。
当q = 1时, d 称为曼哈坦距离( Manhattan distance)
d (i, j) | x  x |  | x  x | ... | x  x |
i1 j1 i2 j 2
ip j p
53
计算对象之间的距离(2)

当q=2时, d 就成为欧几里德距离:
d (i, j)  (| x  x |2  | x  x |2 ... | x  x |2 )
i1
j1
i2
j2
ip
jp

距离函数有如下特性:
d(i,j)  0
 d(i,i) = 0
 d(i,j) = d(j,i)
 d(i,j)  d(i,k) + d(k,j)


可以根据每个变量的重要性赋予一个权重
54
二元变量

二元变量的可能性表
Object j
Object i
1
0
1
a
b
0
c
d
sum a  c b  d
sum
a b
cd
p
其中每个对象有p个变量,且
p=a+b+c+d
55
二元变量

对称的
如果一个二元变量的两个状态是同等价值的,具有相同的
权重。即可以任取其中一种状态编码为1或者0。对于对称
的二元变量,采用简单匹配系数来评价两个对象之间的相
异度
d (i, j) 
bc
a bc  d
56
二元变量

非对称的
如果变量的两个状态不是同样重要的,则称该变量是不对称
的。将比较重要通常也是出现概率比较小的状态编码为1,将另
一种状态编码为0。对于非对称的二元变量,采用Jaccard系数来
评价两个对象之间的相异度
d (i, j) 
bc
a bc
57
二元变量的相异度计算
Name
Jack
Mary
Jim



Gender
M
F
M
Fever
Y
Y
Y
Cough
N
N
P
Test-1
P
P
N
Test-2
N
N
N
Test-3
N
P
N
Test-4
N
N
N
gender 是一个对称的二元变量
其它的都是非对称的二元变量
将值 Y和 P 编码为1, 值 N 编码为 0,根据Jaccard系数计算得:
01
 0.33
2 01
11
d ( jack , jim ) 
 0.67
111
1 2
d ( jim , mary ) 
 0.75
11 2
d ( jack , mary ) 
58
标称变量(Nominal Variables)

标称变量是二元变量的推广,它可以具有多于两个的状态,
比如 变量map_color可以有 red, yellow, blue, green四种状
态。有两种计算相异度的方法:

方法1: 简单匹配方法


m是匹配的数目, p是全部变量的数目
m
d (i, j)  p 
p
方法2: 使用二元变量

为每一个状态创建一个新的二元变量,可以用非对称的二元变量来编码标
称变量。
59
常用聚类算法

K均值(K-means) 算法

两步聚类

Kohonen神经网络

层次聚类

其他
60
K-均值算法输入和输出
输入:
x11, x12
• 数值型记录集
x21, x22
•k > 1 的正整数
…
xn1, xn2
输出:
• k组样本
x11, x12
1
• 每个样本划归到一个类别
x21, x22
2
…
xn1, xn2
1
61
K-均值算法聚类过程
62
K-均值算法
给定k,从n个对象中任意选择k个对象作为初始聚类中
心;
repeat
计算每个对象与聚类中心的距离,把它们划到不同的
簇;
重新计算每个簇的聚类中心;
until 聚类中心不再发生变化
63
实例
1 x11, x12 1
1 x11, x12
C1
2 x21, x22
3 x31, x32
3 x13, x12 2
4 x41, x42
4 x14, x12 1
C2
5 x51, x52
C1
2 x12, x12 1
5 x15, x12 2
C2
6 x16, x12 2
6 x61, x62
1 x11, x12 1
C1
2 x12, x12 2
3 x13, x12 2
4 x14, x12 1
5 x15, x12 1
6 x16, x12 1
C2
64
K-均值算法局限
非球形的簇
65
IBM SPSS Modeler聚类分析
66
K-均值算法在中药种植区域划分中的应用



无论是种植业还是养殖业,生产都与当地的气候条件关系密
切,尤其是中药种植。中药材的生长发育、产量和品质都与
气候息息相关。
以中药材当归为例,对A地区的气候资料进行分析,并参照当
归产地B地区的气候资料划分A地区的当归适宜种植区和不适
宜种植区,以供引种参考。当归喜冷凉阴湿气候,怕暑热高
温,要求土壤质地疏松,有机质含量高,适宜在高寒阴湿区
种植。
据此选择下列因素作为聚类的气候变量: x1:年平均气温,
x2:年降水量,x3:≥ 0 ℃ 积温,x4:7月平均气温,x5:8月
平均气温。下表给出了B地区所属各气象站多年(1971年至
1990年)平均气候资料。
67
B地区气象资料
区域
x1
x2
x3
x4
x5
1
5.7
579.9
2592.6
16.1
15.7
2
5.3
583.0
2568.3
16.3
15.9
3
6.1
532.9
2833.3
17.5
17.1
4
6.3
667.2
2699.4
17.0
16.1
5
5.9
630.6
2723.9
16.6
16.3
6
6.5
478.3
2911.1
17.7
17.0
7
6.8
500.4
3011.2
18.8
17.6
8
5.1
536.3
2438.0
16.0
15.3
9
9.2
283.4
3544.9
21.2
20.1
68
聚类结果
新中心
x1
x2
x3
x4
x5
第Ⅰ类
5.7
599.4
2604.4
16.4
15.9
第Ⅱ类
6.5
503.9
2918.5
18
17.2
第Ⅲ类
9.2
283.4
3544.9
21.2
20.1
69
k-均值算法在安全检测中的应用


应用k-means聚类算法,分析入侵检测模型数据库,自动
地分析原有数据,从中挖掘出潜在的模式,预测用户的行
为。
下表以目标端口与当前连接相同次数和目标主机不同连接
所占百分比作为特征,列出了20条网络访问数据。其中坐
标轴横轴x1为目标端口与当前连接相同的连接次数,纵轴x2
表示目标主机不同连接所占百分比。
70
网络访问记录
序号
目标端口与当前连接相同的连接次数x1
目标主机不同连接所占百分比x2
聚类结果
1
5
0.6
正常
2
4
0.5
正常
3
25
0
攻击
4
9
0
异常
5
13
0.3
异常
6
10
0
异常
7
2
0
正常
8
2
0
正常
9
3
0.33
正常
10
5
0.55
正常
11
6
0.5
正常
12
10
0.15
异常
13
9
0
异常
14
5
0.45
正常
15
4
0.65
正常
16
4
0
正常
17
5
0.1
正常
18
6
0.2
正常
19
13
0.2
异常
20
11
0
异常
71
聚类结果
原始数据
聚类结果
72
k-modes算法



k-modes算法把k-means算法扩展到可分类数据,定义了新的度
量可分类数据相异度的距离公式,并给出相应的更新聚类中心
的方式,能够迅速处理可分类型数据。
k-modes算法根据可分类属性值出现的频率更新聚类中心,聚
类中出现频率最高的属性值被选为聚类中心,即modes(类模
式)。
k-modes算法改变了k-means算法的相异度测量方法,用一个简单的相
异度测量对数据进行聚类。假设X,Y是数据集中的两个对象,它们用
m维属性描述,则这两个对象之间的相异度为:
73
k-modes算法过程

k-modes算法不断更新modes,使得所有对象与其最近modes
的相异度总和最小:首先计算每一簇在某一属性值的对象所占
百分数。然后,取每个簇中频率最大的一个属性值作为类模式
Q。分别对每个属性进行上述计算,最后得到类模式Q,即初
始聚类中心。k-modes算法与k-means的步骤类似:
①预先定义好k类,确定各个类的初始类模式Q。
②根据类模式Q把每个对象赋给最近邻的类,然后更新类模式Q。
③不断重复②,直到不再发生变化为止。
74
k-prototypes算法


在实际应用中,数据可能是数值型的,同时也有可分类型的。kprototypes算法综合了k-means和k-modes算法,采用新的距离度
量方法,能够快速处理混合类型数据集的聚类问题。
k-prototypes算法的聚类中心由数值型数据的聚类中心和可分类
数据的聚类中心两部分加权组成,其中数值型属性的聚类中心和
k-means算法类似,通过计算数值型属性的平均值得到。而可分
类型属性的中心采用类似k-modes算法聚类中心的更新方式,通
过计算可分类属性值出现的频率确定。
75
二步(阶)聚类算法



二步聚类算法(two step cluster)是一种层次聚类算法(
hierarchical algorithms),主要处理比较大的数据,可自动确定
类的数目,能够处理连续变量和分类变量的混合数据。
二步聚类算法分2步进行:第一步是准聚类(pre-cluster step),
第二步进行具体的聚类分析。
准聚类是分层聚类中针对大样本聚类产生的BIRCH(balance
iterative reducing and clustering using hierarchies)算法,分成
一些子类。具体的聚类分析利用分层聚类方法再次聚类,使用对
数似然函数作为测量公式,利用准聚类的结果对每个样本进行再
次聚类,对在一定的范围每个聚类成员计算判别值,并用于估计
类的最初数目。
76
IBM SPSS Modeler两步聚类
77
层次型聚类(1)



层次聚类(hierarchical clustering)方
法把数据组织成若干簇,并形成一个
相应的树状图进行聚类。
聚合层次聚类采用自底向上的策略,
首先把每个对象单独作为一类,然后
根据一定的规则,例如把簇间距离最
小的相似簇合并成为越来越大的簇,
直到所有样本凝聚成一个大的簇,针
对给定应用选择最好结果的聚类层次
。
与聚合型方法相反,分裂聚类采用自
顶向下的方法,先把所有的对象都看
成一个簇,然后不断分解直至满足一
定的条件。
层次型聚类(2)

层次聚类的一个重要问题是如何评价两个簇的相似性。大
多数层次聚类方法都属于聚合型方法,它们对噪声、异常
数据比较敏感。层次聚类常用的方法有BIRCH和CURE等。
其他聚类方法

基于划分的聚类和基于层次的聚类还有其他实现方法,例
如基于密度的聚类、基于网格的聚类、基于模型的聚类以
及模糊聚类等,每种方法都有各自的优缺点,适用范围也
有限。选择哪种聚类方法,需要考虑实际的应用需求、簇
的类型与特征、数据的特性、数据质量、数据集的规模
(样本个数、样本属性个数)等因素。
80
基于密度的聚类


基于密度的聚类方法与k-means算法使用簇的中心不同,它使用密
度的概念。这种聚类方法根据样本点周围的密度不断增长聚类,这
就克服了基于距离的算法只能发现凸形分布数据聚类的缺点。
基于密度的聚类方法首先计算一个区域中的点的密度,如果大于某
个阈值就把它添加到相近的聚类中去,主要算法包括DBSCAN算法
和OPTICS算法(DBSCAN的扩展算法)等。
81
基于密度的聚类


基于密度的聚类方法与k-means算法使用簇的中心不同,它使用密
度的概念。这种聚类方法根据样本点周围的密度不断增长聚类,这
就克服了基于距离的算法只能发现凸形分布数据聚类的缺点。
基于密度的聚类方法首先计算一个区域中的点的密度,如果大于某
个阈值就把它添加到相近的聚类中去,主要算法包括DBSCAN算法
和OPTICS算法(DBSCAN的扩展算法)等。
82
DBSCAN 算法

DBSCAN 算法是一种常见的基于密度的聚类方法,大致过程如下:首
先把所有的样本标记为核心点、边界点或噪声点。其中一个样本是核
心点,满足在该样本的邻域(由距离函数和用户指定的参数R确定)
内的样本的个数大于给定的阈值Min。边界点是位于某核心样本邻域
的非核心样本,而噪声点指既非核心样本又不是边界样本的样本。然
后对每个样本,做如下处理:删除噪声点,而足够靠近的核心点(它
们的距离小于R)聚集在同一簇中,与核心点足够靠近(它们的距离
小于R)的边界点也聚集在与核心点相同的簇中。DBSCAN算法可以
有效地发现数据库中任意形状的簇,自动确定聚类的簇个数,但也存
在一定的局限性,例如参数R和Min仍然需要用户依靠经验设置。
83
聚类的典型应用

模式识别
空间数据分析
 在GIS中,通过聚类发现特征空间来建立主题索引;
 在空间数据挖掘中,检测并解释空间中的簇;
图象处理
经济学 (尤其是市场研究方面)
WWW 文档分类;分析WEB日志数据来发现相似的访问模式
Cluster analysis of data

Customer segmentation

Fraud detection

Missing value prediction





84
聚类是社会网络中的应用
偏离(异常)检测
86
偏离检测


在数据库中寻找含有你不希望出现的值的记录或
记录系列。
应用实例:用它来识别欺诈行为模式或控制生产
过程的质量。
87
异常探测


异常探测是数据挖掘中一个重要方面,用来发
现“小的模式”(相对于聚类),即数据集中显
著不同于其它数据的对象。
异常探测应用







电信和信用卡欺骗
贷款审批
药物研究
气象预报
金融领域
客户分类
网络入侵检测等
88
什么是异常(outlier)?

Hawkins(1980)给出了异常的本质性的定义:异常
是在数据集中与众不同的数据,使人怀疑这些数据并非随机
偏差,而是产生于完全不同的机制。

聚类算法对异常的定义:异常是聚类嵌于其中的背
景噪声。异常探测算法对异常的定义:异常是既不
属于聚类也不属于背景噪声的点。他们的行为与正
常的行为有很大不同。
89
IBM SPSS Modeler异常分析
90
关联分析
association analysis
91
关联





若两个或多个变量的取值之间存在某种规律性,就称为关联。
关联规则是寻找在同一个事件中出现的不同项的相关性,比如在一次
购买活动中所买不同商品的相关性。
关联分析即利用关联规则进行数据挖掘。
关联规则是形式如下的一种规则,“在购买计算机的顾客中,有30%
的人也同时购买了打印机”。
从大量的商务事务记录中发现潜在的关联关系,可以帮助人们作出正
确的商务决策。
92
啤酒和尿布的故事


反映一个事件和其他事件之间依赖或关联的知识。如果两
项或多项属性之间存在关联,那么其中一项的属性值就可
以依据其他属性值进行预测。
在美国,一些年轻的父亲下班后经常要到超市去买婴儿尿
布,超市也因此发现了一个规律,在购买婴儿尿布的年轻
父亲们中,有30%~40%的人同时要买一些啤酒。超市
随后调整了货架的摆放,把尿布和啤酒放在一起,明显增
加了销售额。
93
购物篮分析

此类关联分析在零
售业,如超市等得
到广泛应用,企业
可以获得注入产品
间的关联,或者产
品类别和购买这些
类别的产品的顾客
的统计信息之间的
关联规则。

关联分析又称购
物篮分析,在销
售配货、商店商
品的陈列设计、
超市购物路线设
计、产品定价和
促销等方面得到
广泛应用。
94
什么是关联挖掘?

关联规则挖掘:


应用:


在交易数据、关系数据或其他信息载体中,查找存在于项目集
合或对象集合之间的频繁模式、关联结构。
购物篮分析、交叉销售、产品目录设计、 聚集和分类等。
举例:



规则形式: “Body —>Head [support, confidence]”.
buys(x, “diapers”) —> buys(x, “beers”) [0.5%, 60%]
major(x, “CS”) ^ takes(x, “DB”) —> grade(x, “A”) [1%, 75%]
95
关联规则问题的形式化描述项目


定义1:集合I={i1,i2,…,im}为标识符的集合,其
中m为正整数,ik(k=1,2,…,m)称为项目。
项目是一个从具体问题中抽象出的一个概念。在
超市的关联规则挖掘问题中,项目表示各种商品,
如旅游鞋等。由于在超市的关联规则挖掘中并不
关心顾客购买的商品数量和价格等,因此顾客的
一次购物可以用该顾客所购买的所有商品的名称
来表示,称为事务,所有事务的集合构成关联规
则挖掘的数据集,称为事务数据库。
96
事务

定义2:关联规则挖掘的数据库记为D,事务数据
库D中的每个元组称为事务。一条事务T是I中项目
的集合。一条事务仅包含其涉及到的项目,而不
包含项目的具体信息。在超级市场的关联规则挖
掘问题中事务是顾客一次购物所购买的商品,但
事务中并不包含这些商品的具体信息,如商品的
数量、价格等。
事务数据集
事务数据集的矩阵表示
项目
i1
i2
i3
i4
i5
i6
10
1
1
1
0
0
0
20
1
0
1
0
0
0
30
1
0
0
1
0
0
40
0
1
0
0
1
1
事务
事务
购买商品(项集)
10
i1,i2,i3
20
i1,i3
30
i1,i4
40
i2,i5,i6
97
项目集



定义3:项目集是由I中项目构成的集合。若项
目集包含的项目数为k,则称此项目集为k-项目
集。
定义4:任意的项目集X和事务T若满足:TX,
则称事务T包含项目集X。
在超市的关联规则挖掘问题中项目集可以看成
一个或多个商品的集合。若某顾客一次购买所
对应的事务T包含项目集X,就说该顾客在这次
购物中购买了项目集X中的所有商品。
98
频繁项目集

定义5:对任意的项目集X,若事务数据库D中
ɛ%的事务包含项目集X,则项目集的支持率为ɛ,
记为support(X)= ɛ,其中包含项目集X的事务
数称为项目集X的频度,记为count(X)。若项
目集X的支持率大于或等于用户指定的最小支持
率(minsupport),则项目集X称为频繁项目集
(或大项目集),否则项目集X为非频繁项目集
(或小项目集)。如果数据库D中的事务数记为
|D|,频繁项目集是至少被ɛ%x|D|条事务包含的
项目集.
99
支持度和置信度




定义6:关联规则是形如X->Y的规则,其中X,Y为
项目集且XY=。
定义7:在数据库D中,若s%的事务包含XY,
则关联规则X->Y的支持度为s%;在数据库D中,
若c%的包含项目集X的事务也包含项目集Y,则
关联规则X->Y的置信度为c%:
p(Y│X)=p(XY)/p(X)。
置信度反应了关联规则的可信度—购买了项目集
X中的商品的顾客同时也购买了Y中商品的可能性
有多大。
100
强关联规则


定义8:若关联规则X->Y的支持度和置信度分
别大于或等于用户指定的最小支持率minsupport
和最小置信度minconfidence,则称关联规则X>Y为强关联规则,否则称关联规则X->Y为弱
关联规则。
关联规则挖掘的核心就是要找出事务数据库D
中的所有强相关规则。
101
关联规则挖掘问题的分解



给定数据库D,关联规则的挖掘就是找出所有存
在于数据库D中的强关联规则。因此整个关联规
则挖掘过程可以分解为以下两个子问题:
找出所有的频繁项目集;
根据找到的频繁项目集导出所有的强关联规则。
102
强关联规则的产生



第一个子问题的求解,需要多次扫描数据库D,这意味着
关联规则挖掘算法的效率将主要取决于数据库扫描、I/O操
作和频繁项目集的计算上。因此如何迅速、高效地找出所
有的频繁项目集是关联规则挖掘的中心问题
第二个子问题的求解比较容易,R. Agrawal等人已提出了
有效的解决办法,具体过程如下:
对每个频繁项目集I,产生所有的非空真子集:对I的任意
非空真真子集m,若support(I)/Support(m)
minconfidence,则产生强关联规则m->(l-m)。
103
规则度量:支持度与可信度
二者都买
的客户
买尿布的客
户

查找所有的规则 X & Y  Z 具有
最小支持度和可信度


买啤酒的客户
交易ID
2000
1000
4000
5000
购买的商品
A,B,C
A,C
A,D
B,E,F
支持度, s, 交易中包含{X 、 Y 、 Z}
的可能性
可信度, c, 包含{X 、 Y}的交易中也
包含Z的条件概率
设最小支持度为50%, 最小可
信度为 50%, 则可得到
A  C (50%, 66.6%)
C  A (50%, 100%)
104
关联规则挖掘:路线图

布尔 vs. 定量 关联 (基于处理数据的类型)




单维 vs. 多关联 (例子同上)
单层 vs. 多层分析


buys(x, “SQLServer”) ^ buys(x, “DMBook”) buys(x, “DBMiner”)
[0.2%, 60%]
age(x, “30..39”) ^ income(x, “42..48K”) buys(x, “PC”) [1%, 75%]
哪个品牌的啤酒与那个牌子的尿布有关系?
各种扩展
 相关性、因果分析


关联并不一定意味着相关或因果
添加约束

如哪些“小东西”的销售促发了“大家伙”的买卖?
105
关联规则挖掘例子
交易ID
2000
1000
4000
5000
购买商品
A,B,C
A,C
A,D
B,E,F
最小支持度 50%
最小置信度 50%
频繁项集
{A}
{B}
{C}
{A,C}
支持度
75%
50%
50%
50%
对于 A  C:
support = support({A 、C}) = 50%
confidence = support({A 、C})/support({A}) = 66.6%
Apriori的基本思想:
频繁项集的任何子集也一定是频繁的
106
Apriori算法



连接: 用 Lk-1自连接得到Ck
修剪: 一个k-项集,如果它的一个k-1项集(它的子集 )不是频繁
的,那它本身也不可能是频繁的。
伪代码:
Ck: Candidate itemset of size k
Lk : frequent itemset of size k
L1 = {frequent items};
for (k = 1; Lk !=; k++) do begin
Ck+1 = candidates generated from Lk;
for each transaction t in database do
increment the count of all candidates in Ck+1
that are contained in t
Lk+1 = candidates in Ck+1 with min_support
end
return k Lk;
107
项集格
108
如何生成候选集

假定 Lk-1 中的项按顺序排列

第一步: 自连接 Lk-1
insert into Ck
select p.item1, p.item2, …, p.itemk-1, q.itemk-1
from Lk-1 p, Lk-1 q
where p.item1=q.item1, …, p.itemk-2=q.itemk-2, p.itemk-1 < q.itemk-1

第二步: 修剪
forall itemsets c in Ck do
forall (k-1)-subsets s of c do
if (s is not in Lk-1) then delete c from Ck
109
生成候选集的例子


L3={abc, abd, acd, ace, bcd}
自连接 : L3*L3



修剪:


abc 和 abd 得到 abcd
acd 和 ace 得到 acde
ade 不在 L3中,删除 acde
C4={abcd}
110
Apriori算法例子
数据库 D
TID
100
200
300
400
itemset sup.
2
C1 {1}
{2}
3
扫描 D {3}
3
{4}
1
{5}
3
Items
134
235
1235
25
C2
L2 itemset sup
{1
{2
{2
{3
3}
3}
5}
5}
2
2
3
2
C3 itemset
{2 3 5}
itemset sup
{1 2}
1
{1 3}
2
{1 5}
1
{2 3}
2
{2 5}
3
{3 5}
2
扫描 D
L1
itemset sup.
{1}
2
{2}
3
{3}
3
{5}
3
扫描 D
L3 itemset sup
{2 3 5}
2
itemset
{1 2}
{1 3}
{1 5}
{2 3}
{2 5}
{3 5}
{2,3}->{5}
111
Apriori 算法在超市的应用
某日超市的购物记录
交易时间
购买商品
14:25
i1,i2,i4
15:07
i1,i2,i3
16:33
i2,i3
17:05
i1,i3
18:40
i1,i2,i3,i5
18:55
i2,i3
19:26
i1,i2,i5
19:52
i2,i4
20:03
i1,i2,i3
20:16
i1,i3
{ i1,i5 }→{i2 }
{ i2,i5 }→{i1 } ;
{i5 }→{i1,i2 }
112
IBM SPSS Modeler构建关联模型
113
Apriori 性能瓶颈

Apriori算法的核心:



用频繁的(k – 1)-项集生成候选的频繁 k-项集
用数据库扫描和模式匹配计算候选集的支持度
Apriori 的瓶颈: 候选集生成

巨大的候选集:

多次扫描数据库:

如果最长的模式是n的话,则需要 n +1次数据库扫描
114
布尔型和数值型关联规则

根据处理的项目类别,关联规则可以分为布尔型和数值型。布尔
型关联规则处理的项目都是离散的,它显示了这些变量之间的关
系。例如性别=“女”→职业=“秘书”,是布尔型关联规则。而
数值型关联规则可以和多维关联或多层关联规则结合起来。对数
值型属性进行处理,参考连续属性离散化方法或统计方法把其进
行分割,确定划分的区间个数和区间宽度。数值型关联规则中也
可以包含可分类型变量。例如性别=“女”→平均收入>2300,这
里的收入是数值类型,所以是一个数值型关联规则。又如,
age(x,[30,39]) ^ income(x,[42,48]) →buys(x,“PC”)
[1%,75%]。这里的项目用谓词表示,其中x是变量,泛指顾客,
表示逻辑与。
115
多层关联规则
食品





项通常具有层次。
底层的项通常支持度也
低。
某些特定层的规则可能
更有意义。
交易数据库可以按照维
或层编码。
可以进行共享的多维挖
掘。
面包
牛奶
酸奶
脱脂奶
统一
TID
T1
T2
T3
T4
T5
黄
白
光明
Items
{111, 121, 211, 221}
{111, 211, 222, 323}
{112, 122, 221, 411}
{111, 121}
{111, 122, 211, 221, 413}
116
挖掘多层关联规则

自上而下,深度优先的方法:



先找高层的“强”规则:
牛奶  面包 [20%, 60%].
再找他们底层的“弱”规则:
酸奶 黄面包 [6%, 50%].
多层关联规则的变种


层次交叉的关联规则:
酸奶  复旦面包房 黄面包
不同种分层方法间的关联规则:
酸奶 复旦面包房面包
117
多层关联:冗余过滤


由于“祖先”关系的原因,有些规则可能是多余的。
例子




牛奶  白面包 [support = 8%, confidence = 70%]
酸奶  白面包 [support = 2%, confidence = 72%]
第一个规则是第二个规则的祖先
参考规则的祖先,如果它的支持度与“预期”的支持度
近似的话,则这条规则是冗余的。
118
多维关联规则概念

单维规则:
buys(X, “milk”)  buys(X, “bread”)

多维规则: 2个以上维/谓词
 维间关联规则 (谓词不重复)


类别属性


age(X,”19-25”)  occupation(X,“student”)  buys(X,“coke”)
混合维关联规则 (谓词重复)
age(X,”19-25”)  buys(X, “popcorn”)  buys(X, “coke”)
有限个值, 值之间无顺序关系
数量属性

数字的,值之间隐含了顺序关系
119
分离关联规则

分离关联规则与一般的关联规则相似,只是在关联规则中出现
项目的反转项,在购物篮分析中可发现不在一起购买的商品。
例如购买牛奶的顾客一般不购买汽水。这里读者思考一下,如
何发现分离关联规则?
120
FP增长算法

与Apriori算法不同,频繁模式增长(frequent pattern growth)算
法,简称FP增长算法使用一种称为FP树的数据结构,并且采用分而
治之的策略,无需产生候选频繁项集就能得到全部的频繁项集。
121
构造FP树



FP树是事务数据库的压缩表示,每个事务都映射到FP树中的一条路径。不同
的事务可能包含若干相同的项目,因此这些路径会有所重叠,使得事务数据
能得到一定程度的压缩。FP增长算法挖掘频繁项集的过程如下:
首先搜索事务数据库D,找到1频繁项集及其支持数。
构造FP-树。创建FP树的根结点,用符号null标记。第二次搜索事务数据库D,按L中的次
序排列每个事务的项集,并对每个事务创建由根结点null出发的路径。
122
利用FP树产生频繁项集

FP增长算法以自底向上的方式搜索FP树,由L的倒序开始,对每个1频
繁项目构造条件FP树,然后递归地对该条件FP树进行挖掘。
挖掘条件FP树
项
前缀路径
条件FP树
产生的频繁项集
i5
{(i2,i1,i3:1),
(i2,i1:1)}
<i2:2,i1:2>
i2i5:2,i1i5:2,i2i1i5:2
i4
{(i2,i1:1)(i2:1)}
<i2:2>
i2i4:2
i3
{(i2,i1:3),(i2:2)
(i1:2)}
<i2:3,i1:3><i2: 2>,<i1:2>
i1
{i2:5}
< i2:5>
i2,i1,i3:3,i2i3:5,i1i3:5
i2 i1:5
123
其他关联规则挖掘算法



约束性关联规则挖掘算法
增量式关联规则挖掘算法
多层关联规则挖掘
124
关联与分类的组合
125
序列模式发现
Sequential Patterns Discovery
126
序列模式分析



序列模式的发现是由R.Agrawal于1995年首先提出的。序列
模式寻找的是事件之间在顺序上的相关性。
例如,“凡是买了喷墨打印机的顾客中,80%的人在三个月
之后又买了墨盒”,就是一个序列关联规则。
序列模式挖掘在交易数据库分析、Web访问日志分析以及通信
网络分析等领域具有广泛的应用前景。
127
序列模式


Identifies time-dependent sequences among transaction sets where each transaction
includes a set of items.
Example

Given a set of ordered customer "transactions“.

Each "transaction" contains a set of "items“.

Find sequences:
if a customer buys item A
then the customer will buy item X afterwards
128
实例(1)
Transaction Time
Customer
Items Bought
June 20, 1994 10:13 am
J. Brown
Juice, Coke
June 20, 1994 11:02 am
F. Zappa
Brandy
June 20, 1994 11:47 am
J. Brown
Beer
June 20, 1994 2:32 pm
B. Moore
Beer
June 21, 1994 9:22 am
J. Brown
Wine, Water, Cider
June 21, 1994 3:19 pm
J. Mitchell
Beer, Gin, Cider
June 21, 1994 5:27 pm
B. Adams
Beer (Diapers?)
June 21, 1994 6:17 pm
B. Moore
Wine, Cider
June 22, 1994 10:34 am
B. Adams
Brandy
June 22, 1994 5:03 pm
B. Moore
Brandy
129
实例(2)

Database Sorted by Customer and Date
Customer
Items Bought
B. Adams
Transaction Time
June 21, 1994 5:27 pm
B. Adams
June 22, 1994 10:34 am
Brandy
J. Brown
J. Brown
June 20, 1994 10:13 am
June 20, 1994 11:47 am
Juice, Coke
Beer
J. Brown
June 21, 1994 9:22 am
Wine, Water, Cider
J. Mitchell
June 21, 1994 3:19 pm
Beer, Gin, Cider
B. Moore
June 20, 1994 2:32 pm
Beer
B. Moore
June 21, 1994 6:17 pm
Wine, Cider
B. Moore
June 22, 1994 5:03 pm
Brandy
F. Zappa
June 20, 1994 11:02 am
Brandy
Beer
130
实例(3)
Customer Sequence Database
Customer
B. Adams
J. Brown
J. Mitchell
B. Moore
F. Zappa
Customer Sequence
(Beer) (Brandy)
(Juice, Coke) (Beer) (Wine, Water, Cider)
(Beer, Gin, Cider)
(Beer) (Wine, Cider) (Brandy)
(Brandy)
Sequential Patterns in the Database
Sequential Patterns with Support > 40% Customers Supporting it
(Beer) (Brandy)
B. Adams, B. Moore
(Beer) (Wine, Cider)
J. Brown, B. Moore
Derived Sequential Rules
Sequential Rule with
Support>40%
Customers Supporting
the Rule Body
Confidence
Value
(Beer) => (Brandy)
B. Adams, B. Moore
50%
(Beer) => (Wine, Cider)
J. Brown, B. Moore
50%
131
序列模式


序列模式的概念最早是由Agrawal和Srikant 提出的。
序列模式定义:给定一个由不同序列组成的集合,其中每个序列由不同的元素按
顺序有序排列,每个元素由不同项目组成,同时给定一个用户指定的最小支持度
阈值,序列模式挖掘就是找出所有的频繁子序列,即该子序列在序列集中的出现
频率不低于用户指定的最小支持度阈值。
132
序列模式应用例子


例子1:在两年前购买了Ford 牌轿车的顾客,很有可能在今年采取贴旧
换新的购车行动。
例子2:在购买了自行车和购物篮的所有客户中,有70%的客户会在两个
月后购买打气筒。
133
序列模式

符号化表示:




项目集(Itemset)是各种项目组成的集合。
序列(Sequence)是不同项目集(ItemSet)的有序排列,序列s可以表示
为s = <s1s2…sl>,sj(1 <= j <= l)为项目集(Itemset),也称为序列s
的元素。
序列的元素(Element)可表示为(x1,x2,…,xm), xk(1 <= k <= m)为
不同的项目,如果一个序列只有一个项目,则括号可以省略。
一个序列包含的所有项目的个数称为序列的长度。长度为l的序列记为
l-序列。
134
序列模式

符号化表示:

设 = <a1a2…an>, = <b1b2…bm>,如果存在整数1 <= j1 < j2 <…<
jn <= m,使得a1  bj1,a2  bj2,…, an  bjn,则称序列为序列
的子序列,又称序列包含序列,记为  。

序列在序列数据库S中的支持数为序列数据库S中包含序列的序列个
数,记为Support()。

给定支持度阈值,如果序列在序列数据库中的支持数不低于,则称
序列为序列模式。

长度为l的序列模式记为l-模式。
135
序列模式



例子:设序列数据库如下表所示,并设用户指定的最小支持度
min-support = 2。
Sequence_id
Sequence
10
<a(abc)(ac)d(cf)>
20
<(ad)c(bc)(ae)>
30
<(ef)(ab)(df)cb>
40
<eg(af)cbc>
序列<a(bc)df>是序列<a(abc)(ac)d(cf)>的子序列
序列<(ab)c>是长度为3的序列模式
136
序列模式


问题描述:给定序列数据库和最小支持度阈值,序列模式挖掘
就是要找出序列数据库中所有的序列模式。
系统规定:由于同一个元素中的项目之间排列没有顺序,为了
表达的唯一性,将同一个元素内部的不同项目按照字典顺序排
列。
137
序列模式挖掘的主要算法


类Apriori算法(GSP算法)。
PrefixSpan(Prefix-project Sequential Pattern mining)算法:
采用分治的思想,不断产生序列数据库的多个更小的投影数据库,
然后在各个投影数据库上进行序列模式挖掘。
138
GSP算法的主要问题



缺少时间限制:用户可能需要指定序列模式的相邻元素之间的时间间隔。例
如,一个序列模式可能会发现客户在购买了物品A后的第三年购买物品B。需
要的却是给定时间间隔内用户的购买意向。
事务的定义过于严格:一个事务中包含在客户的一次购买行为中所购买的所
有物品。可能需要指定一个滑动时间窗口,客户在滑动时间窗口的时间段内
的所有的购买行为均作为一个事务。
缺少分类层次:只能在项目的原始级别上进行挖掘。
139
GSP算法



扫描序列数据库,得到长度为1的序列模式L1,作为初始的种子集。
根据长度为i 的种子集Li 通过连接操作和剪切操作生成长度为i+1的
候选序列模式Ci+1;然后扫描序列数据库,计算每个候选序列模式的
支持数,产生长度为i+1的序列模式Li+1,并将Li+1作为新的种子集。
重复第二步,直到没有新的序列模式或新的候选序列模式产生为止
L1 C2  L2  C3  L3  C4  L4  ……
140
候选序列模式步骤


连接阶段:如果去掉序列模式s1的第一个项目与去掉序列模式s2的最后一个
项目所得到的序列相同,则可以将s1与s2进行连接,即将s2的最后一个项目
添加到s1中。
剪切阶段:若某候选序列模式的某个子序列不是序列模式,则此候选序列
模式不可能是序列模式,将它从候选序列模式中删除。
L1 C2  L2  C3  L3  C4  L4  ……
141
实例

下表演示了如何从长度为3的序列模式产生长度为4的候选序列
模式。
Sequential patterns
With length 3
Candidate 4-Sequences
After Join
After Pruning
<(1,2) 3>
<(1,2) (3,4)>
<(1,2) (3,4)>
<(1,2) 4>
<(1,2) 3 5>
<1 (3,4)>
<(1,3) 5>
<2 (3,4)>
<2 3 5>
142
候选序列模式的支持度

对于给定的候选序列模式集合C,扫描序列数据库,对于其中的每一条
序列d,找出集合C中被d所包含的所有候选序列模式,并增加其支持度
计数。
L1 C2  L2  C3  L3  ……
143
序列模式挖掘实例
产生候选序列模式
原始序列
<1,2,3,4>
<{1,5},2,
3,4>
<1,3,4,{3
,5}>
<1,3,5>
<4,5>
序列模式
连接
结果
<1,2,3>
<1,2,4>
<1,3,4>
<1,3,5>
序列
支持度
<1>
0.8
<2>
0.4
<3>
0.8
<4>
0.8
<5>
0.8
大于1的序列模式
<1,
2,3,
4>
<2,3,4>
类Apriori算法过程
<1,2>
0.4
<1,3>
0.8
<1,4>
0.6
<1,5>
0.4
<2,3>
0.4
<2,4>
0.4
<3,4>
0.6
<4,5>
0.4
大于2的序列模式
<1,2,3>
0.4
<1,2,4>
0.4
<1,3,4>
0.6
<1,3,5>
0.4
<2,3,4>
0.4
大于3的序列模式
<1,2,3,4>
0.4
144
顾客购物序列模式挖掘
事务数据
顾客购物序列库
事务发生的时间
顾客ID
购买项集
顾客标识
顾客购物序列
2004.12.10
2
10,20
1
<30,90>
2004.12.12
5
90
2
<{10,20},30,{40,60,70}>
2004.12.15
2
30
3
<{30,50,70}>
2004.12.20
2
40,60,70
4
<30,{40,70},90>
2004.12.25
4
30
5
<90>
2004.12.25
3
30,50,70
2004.12.25
1
30
2004.12.30
1
90
2004.12.30
4
40,70
2004.12.31
4
90
设最小支持度为25%,从表5.20可以看出
<30,90>是<30,{40,70},90>的子序列。
两个序列<30,90>、<30,{40,70}>的支
持度为40%,因此是序列模式。
145
其他序列模式挖掘算法

序列模式的挖掘算法还有SPADE等算法,它们都直接或间接地利用
了Apriori算法的思想。这些算法普遍存在的缺陷是扫描序列数据库
次数过多,可能产生很大的候选序列集。针对此问题,一些序列
模型挖掘算法采用基于投影的方法,充分利用投影数据库的原理,
利用当前挖掘的频繁序列集把序列数据库递归地投影到一组更小
的投影数据库上,以减少搜索空间。
146
序列模式应用领域





客户购买行为模式预测
Web访问模式预测
疾病诊断
自然灾害预测
DNA序列分析
147
时间序列挖掘
Time Series Mining
148
时间序列



时间序列的数据库内某个字段的值是随着时间而不断变化的。
时间序列数据是包含时间属性的序列数据的一种特殊形式,序
列数据库中既可以包含时间属性,也可以不包含时间属性。
有关时序和序列数据挖掘的研究内容包括趋势分析,在时序分
析中的相似度搜索以及与时间相关数据中序列模式和周期模式
的挖掘等。
149
某公司季度净利润的趋势

时间序列分析方法包括确定型的时间序列分析方法和随机型的时间序列分析方法。
确定型的时间序列可以用一个确定的时间函数Y=F(t)拟合,下图中的虚线为某
公司季度净利润的趋势。
净
利
润
时间
150
时间序列几种基本运动




趋势。趋势是时间序列在较长时间内呈现出的某种上升或下降的大
体方向。确定趋势的典型方法包括加权移动平均法和最小二乘法等。
周期运动。周期运动是时间序列呈现出的围绕长期趋势的一种“波
浪形”周期性变动。
季节性变化。时间序列在一年内重复出现的周期运动称为季节性变
化。这里的季节不限于一年中的四季,可以广义地表示周期性的变
化。
不规则运动。由各种偶然、突发或不可预见的因素引起的时间序列
变动,称为不规则运动,例如自然灾害等。
151
主要的时间序列分析模型

自回归 ( auto-regressive,AR)、移动平均 (moving average,MA)以及自回归
综合移动平均 (auto-regressive integrated moving average,ARIMA)等模型。
ARIMA模型功能强大,但过于复杂,这里只简要介绍移动平均模型。移动平
均用于消除时间序列数据中的波动,降低其变差,因此也称为时间序列的光
滑,n阶移动平均的计算公式如下:
x1  x 2   xn x 2  x3   xn  1 x3  x 4   xn  2
,
,
,
n
n
n


如果对n阶移动平均使用加权的算术平均,则可以得到n阶加权移动平均,通
常加权权值的中心元素会取相对较大的值以抵消光滑带来的影响,如给定一
个包含7个值的序列,并使用权值(1,4,1),对应的3阶移动平均与加权3
阶移动平均为:
移动平均也存在一些不足,例如移动平均有时可能产生原始数据中没有出现
的周期变动,而且可能因为异常值的存在而受到较大的影响。
152
相似性搜索

在时间序列数据库中,相似性搜索是指在允许微小差别的条件下,
寻找与给定查询序列相似的数据序列。相似性搜索在诸如股票市场
分析和心电图分析中相当有用。子序列匹配和全序列匹配是相似性
搜索的两种类型。其中子序列匹配在应用中更加常见。
153
相似时间序列

Find similarities between two sets of time dependent data
Value
compare
curves
and
find
similar
subsequences
Sequence 1
Time
Value
Sequence 2
Time
154
时间序列参数

Window size


Epsilon


tolerance range of deviation of two atomic subsequences.
Gap


length of atomic subsequence for matching (no outliers).
number of consecutive time units for which outliers are
ignored.
Matching Length

minimal length of subsequences to be considered.
155
相似时间序列分析(1)
o.k.!
Epsilo
n
atomic subsequences
compare subsequences
o.k. if
gap = 3
atomic part
bind together
similar, neighbored
subsequences
in view of gaps
(=subsequent outliers)
gap
atomic part
156
相似时间序列分析(2)
Value
Sliding
Window
Length of Sequence = n data values
w
Sequence
Time
Offset translation
Scaling
157
需要注意的问题

时间序列分析也存在一些问题:首先,时间序列分析的前提是假定事物
过去的变化规律会延续到未来。然而,并不是所有事物都是连续性发展
变化的,有时它们的发展轨迹复杂多样。因此,在应用时间序列分析法
时需要注意事物未来的发展变化规律,考虑随着时间的推移是否会出现
一些新的特点。其次,时间序列分析突出了时间因素在预测中的作用,
而忽略了外界因素的影响,因而存在预测误差。如果外界因素发生比较
大的变化时,预测可能有较大的偏差。因此时间序列分析对于中短期预
测的效果一般比长期预测的效果好。
158
回归分析
Regression
159
回归分析
•

在数据挖掘中,统计学可应用于预测、聚类规则挖掘和时序数据的趋势分
析等。
分析一个变量与其他一个(或几个)变量之间的相关关系的统计方法就称
为回归分析。常见的回归分析包括线性回归、多元回归、非线性回归、广
义线性回归(对数回归、泊松回归)等。回归分析主要内容包括确定连续
值变量之间的相关关系,建立回归模型,检验变量之间的相关程度,应用
回归模型对变量进行预测等。
160
回归分析应用


Find patterns in a database that allow prediction of
numeric fields given the other independent fields.
Given:




a large amount of data records with individual properties
(field values)
one property to be predicted from the others.
training data for which that property is known.
Look for:


functional dependency of the predicted field from the other
record properties.
a prediction model.
161
回归分析的步骤





确定因变量和影响因素(自变量)。
绘制散点图,观察变量的大致关系。
求回归系数,并建立回归模型。
检验回归模型。
进行预测。
162
回归模型

线性回归模型:
Y    1 X 1   2 X 2     n X n  


Not appropriate for dichotomous response variable,
i.e. Y is either 1 or 0.
Logistic 回归模型:
 ( x)  P(Y  1| X 1 , X 2 , , X n )
 ( x)
ln
   1 X 1   2 X 2 
1   ( x)
 n X n
e (   1 X1  2 X 2   n X n )
 ( x) 
1  e (   1 X1  2 X 2   n X n )
163
线性回归



Find the line whose prediction is as close as possible to
every point .
发现一条穿过数据的线,线上的点使对应数据点的方差最小。
最小二乘法
利润
$20
minimize
$10
$0
20
40
60
年龄
164
一元线性回归(1)

一元线性回归是描述两个变量之间线性相关关系的最
简单的回归模型,如下图。在散点图中两个变量呈线
性关系。一元线性回归模型表示为 y  a  bx   ,其中a
 是随机变量。在这个线性模型中,自变
和b是系数,
量x是非随机变量。随机变量要求服从正态分布。
y
( xi , yi )
i 











x
165
一元线性回归(2)

bˆ
确定参数a和b (分别记作 和 â)值的原则是使样本的回归直线同观
i
察值的拟合状态最好,即使偏差| |较小。为此,可以采用最小二乘法
计算。对应于每一个xi,根据回归方程可以求出一个,它就是yi的一个
估计值。有n个观察值就有相应的n个偏差。为了计算方便,以偏差的
平方和最小为标准确定回归模型:
2
n
n
Q    yi  yˆi     yi  a  bxi 
i 1
2
i 1
Q
 2 
 yi   a  bxi  
  (1)  0
a
i 1
n
n
Q
 2  yi   a  bxi    ( xi )  0
b
i 1

ˆ
x , y分
得到参数和的最小二乘估计:bˆ  S xy Sn xx , aˆ  y  bx
,式中
n
别是变量x,y的n个样本的平均 S xy   ( xi  x )( yi  y ) S xx   ( xi  x )2
i 1
i 1
值,
,
。
166
一元线性回归模型的统计检验


F检验法、t-检验法和r检验法等,其中F检
验室回归方程的显著性检验,t-检验是回
归系数的显著性检验。
R2判定系数度量一个线性回归方程的拟合
程度,越接近1拟合程度越好。
167
回归预测

预测是回归模型最重要的应用,回归预测包括点预测和区间预测。回
归点预测是指对于给定的变量值x0,用回归值作为变量y的预测值y0。
然而现实中实际值与预测值总会产生偏移,因此还需要得到可能偏离
的范围以提高预测的可靠程度,这称为区间预测,即以一定的概率预
测y0附近的变动范围。
168
一元回归分析应用

表给出某种产品在2000年8个地区的销售数据,试建
立该种产品的月平均销售收入y对月平均广告支出x的
线性回归方程。
地区编号
1
2
3
4
5
6
7
8
月平均销售收入(万元)y
31
40
30
34
25
20
35
40
月平均广告支出(万元)x
5
10
5
7
4
3
7
9
线性回归方程为
yˆ  14.669  2.735 x
的无偏估计为

2
ˆ  Se2 
1 n
 ( yi  yˆi )2  4.076273
6 i 1
169
多元线性回归分析(1)


多元线性回归分析是研究一个变量y与多个其他变量 x1 , x2 ,..., xk 之间
关系的统计分析方法。假设因变量y与自变量 x1 , x2 ,..., xk 之间有线性
关系 y  0  1x1  2 x2  ...  k xk  u ,其中 0 , 1 , 2 ,..., k 是回归系数,u 为
随机误差。上面的公式一般称为多元线性回归模型。由于可以利用
已知样本数据进行估计。
设 ˆ0 , ˆ1, ˆ2 ,..., ˆk 是利用一组简单随机样本经计算得到的样本统计量,
0 , 1 , 2 ,...,
k
把它们作为未知参数
的估计值,得到估计的回归方
ŷ
xk
程 yˆ  ˆ0  ˆ1x1  ˆ2 x2  ...  ˆk,称为样本回归方程或经验回归方程,
称
为y的样本估计值或样本回归值。
170
多元线性回归分析(2)

设 ( x1i , x2i ,..., xki ; yi ), 其中i  1, 2,..., n 是对因变量y和自变量 x1 , x2 ,..., xk
的n次独立样本观测值,代入多元线性回归模型得到
yi  0  1 x1i  2 x2i  ...  k xki  ui , i  1, 2,..., n
它是由n个方程组成的一个线性方程组:
 y1   0  1 x11   2 x21  ...   k xk1  u1
 y     x   x  ...   x  u
 2
0
1 12
2 22
k k2
2

......

 yn   0  1 x1n   2 x2 n  ...   k xkn  un
171
多元线性回归分析(3)

表示成矩阵形式为Y  X   u ,其中
1
 y1 
1
y 
X 
Y   2
...
... 

 
y
1
 n  n1

x11
x21
x12
x22
...
...
x1n
x2 n
xk 1 
 0 

 
... xk 2 
  1
... ... 
... 

 
... xkn  n( k 1)
  k  ( k 1)1
...
u1 
u 
u   2
... 
 
un  n1
这里Y是因变量样本观测值的n  (k  1) 阶列向量,X是自变量样本观测值的
n  ( k  1) 阶矩阵,它的每个元素x 都有两个下标,第一个下标i表示相应
ij
的列(第i个变量),第二个下标j表示相应的行(第j个观测值)。X的
每一列表示一个自变量的n个观测值向量, 为未知参数的 (k  1) 1 阶列
向量,u为随机误差项的n1 阶列向量。把样本数据代入Y  X   u,得
到 ˆ  ( X X ) X Y ,式中X  表示X的转置,而( X X ) 表示 X X 的逆操作。
1
1
• 拟合优度检验和预测
172
多元线性回归(multiple linear regression)
用多个预测或独立连续变量来预测一个连续变量为多元线性回归。
173
多元回归分析案例(1)
•下表所示我国1988–1998年的城镇居民人均全年耐用消费品支出、人均全年可支
配收入和耐用消费品价格指数的统计资料,试建立城镇居民人均全年耐用消费品
支出y关于人均全年可支配收入x1和耐用消费品价格指数x2的回归模型。
年 份
人均耐用消费品支出 y
人均全年可支配收入x1
耐用消费品价格指数x2
1988
137.16
1181.4
115.96
1989
124.56
1375.7
133.35
1990
107.91
1510.2
128.21
1991
102.96
1700.6
124.85
1992
125.24
2026.6
122.49
1993
162.45
2577.4
129.86
1994
217.43
3496.2
139.52
1995
253.42
4283.0
140.44
1996
251.07
4838.9
139.12
1997
285.85
5160.3
133.35
1998
327.26
5425.1
126.39
174
多元回归分析案例(2)
估计的回归方程
yˆ  158.6251  0.0494 x1  0.9133x2
175
线性回归不足


It's only linear. If the data's not linear, you're out of luck.
It can be heavily influenced by just a few errors in the data. Not robust.
176
其他回归分析




事实上,现实中的大多数问题是非线性的,需要对变量进行变换,
把非线性问题转换为线性问题解决。在线性回归问题中,变量一
般是独立的。但很多情况下,高次多项式可以更好地反映变量之
间的关系,这就需要引入非线性回归预测未知变量。
非线性回归的思想是通过对变量进行转换,把非线性模型转换为
线性模型,然后按上述方法再求解线性模型求出其中参数后带入
原非线性模型。例如对多项式回归y=c0+c1x+c2x2+c3x3+c4x4,
先把此方程转换成线性方程,需要定义如下几个新变量:x1=x,
x2=x2,x3=x3,x4=x4。代入原先的多项式方程,得到
y=c0+c1x1+c2x2+c3x3+c4x4,多项式回归问题就转化为一个多元
线性回归问题。
对于双曲线函数 y  axx b ,进行线性转换y1=1/y,x1= 1/x,则
有y1=a+b x1。
对于指数函数等比较复杂的非线性函数,需要通过更复杂的转换。
例如对 y   x 可以做如下变换: ln y  ln    ln x ,定义 y  ln y, x  ln x ,
得到 y  ln    x 。
1
1
1
1
177
常见非线性函数的线性转化
Logistic回归

Logistic回归建立了一个多项式对数回归模型,用于预测二值变
量的值(0或1)。相对于独立变量 x1 , x2 ,..., xn ,变量y等于1的概率定
义如下:
e ( a1x1  a2 x2 ... an xn   )
p( y  1| x1 , x2 ,..., xn ) 
1  e ( a1x1  a2 x2 ... an xn   )

Logistic回归在数据挖掘中很有用,特别是解决两类的数据概率
打分问题,如顾客流失风险打分等。
179
应用logistic回归模型预测银行顾客是否拖欠贷款


根据历史数据识别银行拖欠顾客的特征,预测潜在信贷顾客是否拖欠贷款。
这里选取700个信贷顾客的历史记录,其中21.5%是拖欠顾客。这里选择顾
客性别(sex)、收入(income)、年龄(age)、edcation(文化程度),
employ(现单位工作年数),debtinc(负债率)和creddebt(信用卡债务)等作
为自变量,顾客拖欠贷款与否作为因变量:1代表拖欠,0代表正常。选择
70%历史记录进行训练,剩下30%历史数据用于验证,建立一个预测因变
量取1的概率的logistic回归模型,以对新的潜在顾客是否拖欠贷款进行预测。
影响顾客拖欠的自变量比较多,这里采用Forward/Backward方式用于剔除
不重要的自变量,例如收入水平、文化程度和年龄等对顾客信用的影响不显
著,拖欠概率的回归方程如下:
p
 0.76  0.249employ  0.069address  0.08debtinc  0.594creddebt
1 p
对模型进行显著性检验以及回归模型与样本数据的拟合程度以及模型预测精
度进行评价,回归模型满足一定要求即可部署使用。从中可以发现拖欠贷款
客户的特征:工作不稳定、住址经常变动、债务比率高、信用卡债务多的客
户,拖欠贷款的概率较大。
ln

180
IBM SPSS Modeler回归分析
181
研讨









Shu-hsien Liao, Yin-Ju Chen, Min-yi Deng. Mining customer knowledge for tourism new product
development and customer relationship management. Expert Systems with Applications, 2010, 37: 42124223
Wingyan Chung, Tzu-Liang Tseng. Discovering business intelligence from online product reviews: a ruleinduction framework, Expert Systems with Applications, 2012, 39:11870-11879
E.W.T. Ngai, Li Xiu, D. C.K. Chau. Application of data mining techniques in customer relationship
management: a literature review and classification. Expert Systems with Aplications, 2009, 36: 2592-2602
Mei-Hua Hsu.Proposing an ESL recommender teaching and learning system. Expert Systems with
Applications.2008, 34(3):2102–2110
Chen-Fu Chien, Li-Fei Chen. Data mining to improve personnel selection and enhance human capital: a
case study in high-technology industry. Expert Systems with Application, 2008, 34(1):280-290
Ting-Peng Liang,Yung-Fang Yang,Deng-Neng Chen, et al. A semantic-expansion approach to personalized
knowledge recommendation. Decision Support Systems, 2008, 45(3):401-412
Cheng-Lung Huang,Mu-Chen Chen,Chieh-Jen Wang. Credit scoring with a data mining approach based
on support vector machines. Expert Systems with Applications, 2007, 33 (4): 847–856
Shibnath Mukherjee, Madhushri Banerjee, Zhiyuan Chen,et al. A privacy preserving technique for
distance-based classification with worst case privacy guarantees. Data & Knowledge Engineering, 2008,
66(2):264–288
Nan Li,Desheng Dash Wu. Using text mining and sentiment analysis for online forums hotspot detection
and forecast. Decision Support Systems, 2010, 48(2):354-36
182
推荐资料(IBM红皮书)

IBM SPSS Modeler 14.2建模参考
ftp://public.dhe.ibm.com/software/analytics/spss/documentati
on/modeler/14.2/zh_CN/
183
Download