第15讲 判别分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6 37 1 1 3 24 15.10 1.80 1.82
硫化氢 0.084 0.055 0.074 0.05 0.13 0.11 0.095 0.09 0.066 0.076 0.072 0.065 0.089 0.092
二氧化碳 0.031 0.1 0.041 0.11 0.079 0.07 0.058 0.068 0.029 0.019 0.02 0.022 0.062 0.072
5.用Matlab进行判别分析
Matlab统计工具箱中提供了classify函数,用来对 未知类别的样品进行判别,可以进行距离判别和先验 分布为正态分布的贝叶斯判别,其调用格式如下:
1) class=classify( sample, training, group) 2) class=classify(sample, training, group, type) 3) class=classify(sample, training, group, type, prior) 4) [class,err]=classify(sample, training, group, type, prior)
49
30
14
2];
% [class,err]=classify(sample,training,group,'mahalanobis') %马氏距离判别法
% [class,err]=classify(sample,training,group,'linear') %线性判别法
[class,err]=classify(sample,training,group,'quadratic') %二次判别法
2.判别分析的假设条件
判别分析对判别变量有三个基本假设。 其一是变量之间没有显著的相关。否则将无法 估计判别函数,或者虽然能够求解但参数估计的标 准误很大,以致于参数估计统计性不显著。 其二是各组案例的协方差矩阵相等。在此条件 下,可以使用很简单的公式来计算判别函数和进行 显著性检验。 其三是各判别变量之间具有多元正态分布,即 每个变量对于所有其它变量的固定值有正态分布。
花瓣宽 33 31 31 36 30 27 28 33 25 32 31 25 36 32 26 27 23 38 30
28 38 30
花瓣长 14 56 51 10 52 51 45 47 45 47 16 50 14 13 40 49 33 16 16
56 19 14
花瓣宽 2 24 23 2 20 19 13 16 17 14 2 19 1 2 12 18 10 2 2
( ex1 )
0.048 0.089 0.062 0.26
0.038 0.036
0.045 0.092 0.072 0.2
0.035 0.032
0.069 0.087 0.027 0.05
0.089 0.021];
%用于构造判别函数的训练样本数据矩阵
group=[1;1;1;1;2;2;1;1;2;2;2;2;2;2;1]; %参数group是与training相应的分组变量
马氏距离分类:各组的协方差矩阵不完全相等的距离判别,此时 分别得出各组的协方差矩阵的估计
例1 某地大气样品污染分类表为:
气体 1 2 3 4 5 6 7 8 9 10 11 12 13 14
氯 0.056 0.04 0.05 0.045 0.038 0.03 0.034 0.03 0.084 0.085 0.064 0.054 0.048 0.045
3.判别分析的过程 1) 对已知分组属性案例的处理; 2)判别分析的基本模型及其估计过程 ; 3)建立判别函数的方法 ; (1)全模型法; (2)向前选择法; (3)向后选择法; (4)逐步选择法 。
4.判别分析的常用方法
判别分析的主要方法有距离判别方法、费希 尔 (Fisher)判别方法、贝叶斯(Bayes)判别方法:
0.03 0.09
0.068 0.18
0.22
0.039
0.084 0.066 0.029 0.32 0.085 0.076 0.019 0.3
0.012 0.041
0.01
0.04
To Matlab
0.064 0.072 0.02
百度文库0.25
0.054 0.065 0.022 0.28
0.028 0.038 0.021 0.04
[class,err]=classify(sample,training,group,'linear') %线性判别法分类
计算结果:
class = 1 1 2 2
err = 0
即样品1、2为一类污染,样品3、4为二类污染, 出错概率为0。
例2 鸢尾花的分类
本例使用的数据是统计学家 Fisher 当年对鸢尾花观 测的数据(如下表)。其中蓝色箭头表示的量为分类变 量,含有三个水平,分别为 1、2、3,代表刚毛鸢尾花、 变色鸢尾花和弗吉尼亚鸢尾花。红框内的四个变量是测 量的变量值,分别表示花萼长、宽和花瓣长、宽。我们 的目的,就是通过这四个数值型变量,对未知的两种鸢 毛花进行判别分类。
碳4 0.038 0.11 0.048 0.1 0.17 0.16 0.16 0.18 0.32 0.3 0.25 0.28 0.26 0.2
环氧氯丙烷 0.0081 0.022 0.071 0.025 0.058 0.05 0.2 0.22 0.012 0.01 0.028 0.021 0.038 0.035
环已烷 0.022 0.0073 0.021
1
污染分类
求它们的污染分类。
解利用matlab软件包中的classify函数编程求解:
clc,clear
training=[0.056 0.084 0.031 0.038 0.0081 0.022
0.04 0.055 0.1
0.11
0.022 0.0073
判别分析(Discriminant Analysis,简称DA)技术 是由费舍(R.A.Fisher)于1936年提出的。
1.判别分析法
判别分析是一种有效的对个案进行分类分析的方 法,和聚类分析不同的是,判别分析时组别的特征已 知。 如:银行为了对贷款进行管理,需要预测那些类 型的客户可能不会按时归还贷款。已知过去几年中, 900个客户的贷款归还信誉度,据此可以将客户分成两 组:可靠客户和不可靠客户。再通过收集客户的一些 资料,如年龄、工资收入、教育程度、存款等,将这 些资料作为自变量,建立判别函数。那么,如果有150 个新的客户提交贷款申请,就可以利用创建好的判别 函数,对客户进行分析,从而判断客户是属于可靠客 户类还是属于不可靠客户类。故判别分析就是先根据 已知类别事物的性质,利用某种技术建立函数式,然 后对未知类别的新事物进行判断以将之归入已知类别 中。
环已烷 0.022 0.0073 0.02 0.0063 0.043 0.046 0.029 0.039 0.041 0.04 0.038 0.04 0.036 0.032
污染分类 1 1 1 1 2 2 1 1 2 2 2 2 2 2
在此地某大型化工厂的厂区及邻近地区挑选了4个 有代表性的大气样本取样点,获得数据如下:
sample=[0.052 0.084 0.0211 0.037 0.0071 0.022
0.041 0.055 0.11
0.11 0.021 0.0073
0.03 0.112 0.072 0.16
0.056 0.021
0.074 0.083 0.105 0.19
0.02 1]; %待判别的样本数据矩阵
序号
1
2
3
4
5
已
6
7
分
8
9
类
10
11
样
12
13
本
14
15
16
17
18
19
1
样品
2
3
花萼宽 1 3 3 1 3 3 2 2 3 2 1 3 1 1 2 3 2 1 1
花瓣长 50 67 89 46 65 58 57 63 49 70 48 63 49 44 58 63 50 51 50
64 51 49
计算结果:
class = 3 1 1
1err = 0
即样品1为弗吉尼亚鸢尾花,样品2、3为刚毛 鸢尾花,出错概率为0 。
二、作业
银行的贷款部门需要判别每个客户的信用好坏 (是否未履行还贷责任),以决定是否给予贷款。 可以根据贷款申请人的年龄(X1)、受教育程度 (X2)、现在所从事工作的年数(X3)、未变更住 址的年数(X4)、收入(X5)、负债收入比例 (X6)、信用卡债务(X7)、其它债务(X8)等来 判断其信用情况。下表是从某银行的客户资料中抽 取的部分数据,和某客户的如上情况资料为(53,1, 9,18,50,11.20,2.02,3.58),根据样本资料分 别用马氏距离判别法、线性判别法、二次判别法对 其进行信用好坏的判别。
其中sample是待判别的样本数据矩阵,training是用 于构造判别函数的训练样本数据矩阵,它们的每一行对 应一个观察,每一列对应一个变量,sample和training具 有相同的列数。
参数说明
表 9-3 classify 函数支持的判别函数类型
type 参数的可能取值
说明
线性判别分类(默认),假定 Gi : N p (ui , ),i 1, 2,L , k ,
目前信用 客户序
好坏
号 X1 X2 X3 X4 X5 X6 X7 X8
1 23 1 7 2 31 6.60 0.34 1.71
已履行还 贷责任
未履行还 贷责任
2 34 1 17 3 59 8.00 1.81 2.91 3 42 2 7 23 41 4.60 0.94 .94 4 39 1 19 5 48 13.10 1.93 4.36 5 35 1 9 1 34 5.00 0.40 1.30
0.05 0.074 0.041 0.048 0.0071 0.02
0.045 0.05
0.11
0.1
0.025 0.0063
0.038 0.13
0.079 0.17
0.058 0.043
0.03 0.11
0.07
0.16
0.05
0.046
0.034 0.095 0.058 0.16
0.2
0.029
距离判别法:首先根据已知分类的数据,分别计算各 类的重心,计算新个体到每类的距离,确定最短的距 离(欧氏距离、马氏距离)。 Fisher判别法:利用已知类别个体的指标构造判别 式(同类差别较小、不同类差别较大),按照判别 式的值判断新个体的类别。 Bayes判别法:计算新给样品属于各总体的条件概率, 比较概率的大小,然后将新样品判归为来自概率最 大的总体。
数学建模与数学实验
第15讲 判别分析
后勤工程学院数学教研室
实验目的
1.了解判别分析的基本内容。 2.掌握用数学软件求解判别问题。
实验内容
1.判别问题引例及基本理论。 2.用数学软件求解判别问题。 3.应用实例 4.实验作业。
一、判别分析概述
判别分析是根据观测到的某些指标对所研究的对 象进行分类的一种多元统计分析方法。
’linear’
即各组的先验分布均为协方差矩阵相同的 p 元正态分布,此时由
‘quadratic’ ‘mahalanobis’
样本得出协方差矩阵的联合估计 二次判别分类,假定各组的先验分布均为 p 元正态分布,但
协方差矩阵并不完全相同,此时分别得出各个协方差矩阵的估计
i ,i 1, 2,L , k
21 4 2
解 利用matlab软件包中的classify函数编程求解:
training=[50
33
14
2
67
31
56
24
89
31
51
23
46
36
10
2
65
30
52
20
58
27
51
19
57
28
45
13
63
33
47
16
49
25
45
17
70
32
47
14
48
31
16
2
63
25
50
19
49
36
14
1
44
32
13
2
58
26
40
12
63
27
49
18
50
23
33
10
51
38
16
2
50
30
16
2]; %训练样本数据矩阵
group=[1;3 ; 3 ; 1; 3; 3; 2; 2; 3; 2; 1; 3; 1; 1; 2; 3 ; 2; 1 ; 1]; %分组变量
sample=[64
28
56 21
51
38
19 4
气体 样品 1 样品 2 样品 3 样品 4
氯 0.052 0.041 0.03 0.074
硫化氢 0.084 0.055 0.112 0.083
二氧化碳 0.0211 0.11 0.072 0.105
碳4 0.037 0.11 0.16 0.19
环氧氯丙烷 0.0071 0.021 0.056 0.02
硫化氢 0.084 0.055 0.074 0.05 0.13 0.11 0.095 0.09 0.066 0.076 0.072 0.065 0.089 0.092
二氧化碳 0.031 0.1 0.041 0.11 0.079 0.07 0.058 0.068 0.029 0.019 0.02 0.022 0.062 0.072
5.用Matlab进行判别分析
Matlab统计工具箱中提供了classify函数,用来对 未知类别的样品进行判别,可以进行距离判别和先验 分布为正态分布的贝叶斯判别,其调用格式如下:
1) class=classify( sample, training, group) 2) class=classify(sample, training, group, type) 3) class=classify(sample, training, group, type, prior) 4) [class,err]=classify(sample, training, group, type, prior)
49
30
14
2];
% [class,err]=classify(sample,training,group,'mahalanobis') %马氏距离判别法
% [class,err]=classify(sample,training,group,'linear') %线性判别法
[class,err]=classify(sample,training,group,'quadratic') %二次判别法
2.判别分析的假设条件
判别分析对判别变量有三个基本假设。 其一是变量之间没有显著的相关。否则将无法 估计判别函数,或者虽然能够求解但参数估计的标 准误很大,以致于参数估计统计性不显著。 其二是各组案例的协方差矩阵相等。在此条件 下,可以使用很简单的公式来计算判别函数和进行 显著性检验。 其三是各判别变量之间具有多元正态分布,即 每个变量对于所有其它变量的固定值有正态分布。
花瓣宽 33 31 31 36 30 27 28 33 25 32 31 25 36 32 26 27 23 38 30
28 38 30
花瓣长 14 56 51 10 52 51 45 47 45 47 16 50 14 13 40 49 33 16 16
56 19 14
花瓣宽 2 24 23 2 20 19 13 16 17 14 2 19 1 2 12 18 10 2 2
( ex1 )
0.048 0.089 0.062 0.26
0.038 0.036
0.045 0.092 0.072 0.2
0.035 0.032
0.069 0.087 0.027 0.05
0.089 0.021];
%用于构造判别函数的训练样本数据矩阵
group=[1;1;1;1;2;2;1;1;2;2;2;2;2;2;1]; %参数group是与training相应的分组变量
马氏距离分类:各组的协方差矩阵不完全相等的距离判别,此时 分别得出各组的协方差矩阵的估计
例1 某地大气样品污染分类表为:
气体 1 2 3 4 5 6 7 8 9 10 11 12 13 14
氯 0.056 0.04 0.05 0.045 0.038 0.03 0.034 0.03 0.084 0.085 0.064 0.054 0.048 0.045
3.判别分析的过程 1) 对已知分组属性案例的处理; 2)判别分析的基本模型及其估计过程 ; 3)建立判别函数的方法 ; (1)全模型法; (2)向前选择法; (3)向后选择法; (4)逐步选择法 。
4.判别分析的常用方法
判别分析的主要方法有距离判别方法、费希 尔 (Fisher)判别方法、贝叶斯(Bayes)判别方法:
0.03 0.09
0.068 0.18
0.22
0.039
0.084 0.066 0.029 0.32 0.085 0.076 0.019 0.3
0.012 0.041
0.01
0.04
To Matlab
0.064 0.072 0.02
百度文库0.25
0.054 0.065 0.022 0.28
0.028 0.038 0.021 0.04
[class,err]=classify(sample,training,group,'linear') %线性判别法分类
计算结果:
class = 1 1 2 2
err = 0
即样品1、2为一类污染,样品3、4为二类污染, 出错概率为0。
例2 鸢尾花的分类
本例使用的数据是统计学家 Fisher 当年对鸢尾花观 测的数据(如下表)。其中蓝色箭头表示的量为分类变 量,含有三个水平,分别为 1、2、3,代表刚毛鸢尾花、 变色鸢尾花和弗吉尼亚鸢尾花。红框内的四个变量是测 量的变量值,分别表示花萼长、宽和花瓣长、宽。我们 的目的,就是通过这四个数值型变量,对未知的两种鸢 毛花进行判别分类。
碳4 0.038 0.11 0.048 0.1 0.17 0.16 0.16 0.18 0.32 0.3 0.25 0.28 0.26 0.2
环氧氯丙烷 0.0081 0.022 0.071 0.025 0.058 0.05 0.2 0.22 0.012 0.01 0.028 0.021 0.038 0.035
环已烷 0.022 0.0073 0.021
1
污染分类
求它们的污染分类。
解利用matlab软件包中的classify函数编程求解:
clc,clear
training=[0.056 0.084 0.031 0.038 0.0081 0.022
0.04 0.055 0.1
0.11
0.022 0.0073
判别分析(Discriminant Analysis,简称DA)技术 是由费舍(R.A.Fisher)于1936年提出的。
1.判别分析法
判别分析是一种有效的对个案进行分类分析的方 法,和聚类分析不同的是,判别分析时组别的特征已 知。 如:银行为了对贷款进行管理,需要预测那些类 型的客户可能不会按时归还贷款。已知过去几年中, 900个客户的贷款归还信誉度,据此可以将客户分成两 组:可靠客户和不可靠客户。再通过收集客户的一些 资料,如年龄、工资收入、教育程度、存款等,将这 些资料作为自变量,建立判别函数。那么,如果有150 个新的客户提交贷款申请,就可以利用创建好的判别 函数,对客户进行分析,从而判断客户是属于可靠客 户类还是属于不可靠客户类。故判别分析就是先根据 已知类别事物的性质,利用某种技术建立函数式,然 后对未知类别的新事物进行判断以将之归入已知类别 中。
环已烷 0.022 0.0073 0.02 0.0063 0.043 0.046 0.029 0.039 0.041 0.04 0.038 0.04 0.036 0.032
污染分类 1 1 1 1 2 2 1 1 2 2 2 2 2 2
在此地某大型化工厂的厂区及邻近地区挑选了4个 有代表性的大气样本取样点,获得数据如下:
sample=[0.052 0.084 0.0211 0.037 0.0071 0.022
0.041 0.055 0.11
0.11 0.021 0.0073
0.03 0.112 0.072 0.16
0.056 0.021
0.074 0.083 0.105 0.19
0.02 1]; %待判别的样本数据矩阵
序号
1
2
3
4
5
已
6
7
分
8
9
类
10
11
样
12
13
本
14
15
16
17
18
19
1
样品
2
3
花萼宽 1 3 3 1 3 3 2 2 3 2 1 3 1 1 2 3 2 1 1
花瓣长 50 67 89 46 65 58 57 63 49 70 48 63 49 44 58 63 50 51 50
64 51 49
计算结果:
class = 3 1 1
1err = 0
即样品1为弗吉尼亚鸢尾花,样品2、3为刚毛 鸢尾花,出错概率为0 。
二、作业
银行的贷款部门需要判别每个客户的信用好坏 (是否未履行还贷责任),以决定是否给予贷款。 可以根据贷款申请人的年龄(X1)、受教育程度 (X2)、现在所从事工作的年数(X3)、未变更住 址的年数(X4)、收入(X5)、负债收入比例 (X6)、信用卡债务(X7)、其它债务(X8)等来 判断其信用情况。下表是从某银行的客户资料中抽 取的部分数据,和某客户的如上情况资料为(53,1, 9,18,50,11.20,2.02,3.58),根据样本资料分 别用马氏距离判别法、线性判别法、二次判别法对 其进行信用好坏的判别。
其中sample是待判别的样本数据矩阵,training是用 于构造判别函数的训练样本数据矩阵,它们的每一行对 应一个观察,每一列对应一个变量,sample和training具 有相同的列数。
参数说明
表 9-3 classify 函数支持的判别函数类型
type 参数的可能取值
说明
线性判别分类(默认),假定 Gi : N p (ui , ),i 1, 2,L , k ,
目前信用 客户序
好坏
号 X1 X2 X3 X4 X5 X6 X7 X8
1 23 1 7 2 31 6.60 0.34 1.71
已履行还 贷责任
未履行还 贷责任
2 34 1 17 3 59 8.00 1.81 2.91 3 42 2 7 23 41 4.60 0.94 .94 4 39 1 19 5 48 13.10 1.93 4.36 5 35 1 9 1 34 5.00 0.40 1.30
0.05 0.074 0.041 0.048 0.0071 0.02
0.045 0.05
0.11
0.1
0.025 0.0063
0.038 0.13
0.079 0.17
0.058 0.043
0.03 0.11
0.07
0.16
0.05
0.046
0.034 0.095 0.058 0.16
0.2
0.029
距离判别法:首先根据已知分类的数据,分别计算各 类的重心,计算新个体到每类的距离,确定最短的距 离(欧氏距离、马氏距离)。 Fisher判别法:利用已知类别个体的指标构造判别 式(同类差别较小、不同类差别较大),按照判别 式的值判断新个体的类别。 Bayes判别法:计算新给样品属于各总体的条件概率, 比较概率的大小,然后将新样品判归为来自概率最 大的总体。
数学建模与数学实验
第15讲 判别分析
后勤工程学院数学教研室
实验目的
1.了解判别分析的基本内容。 2.掌握用数学软件求解判别问题。
实验内容
1.判别问题引例及基本理论。 2.用数学软件求解判别问题。 3.应用实例 4.实验作业。
一、判别分析概述
判别分析是根据观测到的某些指标对所研究的对 象进行分类的一种多元统计分析方法。
’linear’
即各组的先验分布均为协方差矩阵相同的 p 元正态分布,此时由
‘quadratic’ ‘mahalanobis’
样本得出协方差矩阵的联合估计 二次判别分类,假定各组的先验分布均为 p 元正态分布,但
协方差矩阵并不完全相同,此时分别得出各个协方差矩阵的估计
i ,i 1, 2,L , k
21 4 2
解 利用matlab软件包中的classify函数编程求解:
training=[50
33
14
2
67
31
56
24
89
31
51
23
46
36
10
2
65
30
52
20
58
27
51
19
57
28
45
13
63
33
47
16
49
25
45
17
70
32
47
14
48
31
16
2
63
25
50
19
49
36
14
1
44
32
13
2
58
26
40
12
63
27
49
18
50
23
33
10
51
38
16
2
50
30
16
2]; %训练样本数据矩阵
group=[1;3 ; 3 ; 1; 3; 3; 2; 2; 3; 2; 1; 3; 1; 1; 2; 3 ; 2; 1 ; 1]; %分组变量
sample=[64
28
56 21
51
38
19 4
气体 样品 1 样品 2 样品 3 样品 4
氯 0.052 0.041 0.03 0.074
硫化氢 0.084 0.055 0.112 0.083
二氧化碳 0.0211 0.11 0.072 0.105
碳4 0.037 0.11 0.16 0.19
环氧氯丙烷 0.0071 0.021 0.056 0.02