数据挖掘导论第5章-分类-其他技术.ppt

上传人:小飞机 文档编号:6296667 上传时间:2023-10-14 格式:PPT 页数:134 大小:1.44MB
返回 下载 相关 举报
数据挖掘导论第5章-分类-其他技术.ppt_第1页
第1页 / 共134页
数据挖掘导论第5章-分类-其他技术.ppt_第2页
第2页 / 共134页
数据挖掘导论第5章-分类-其他技术.ppt_第3页
第3页 / 共134页
数据挖掘导论第5章-分类-其他技术.ppt_第4页
第4页 / 共134页
数据挖掘导论第5章-分类-其他技术.ppt_第5页
第5页 / 共134页
点击查看更多>>
资源描述

《数据挖掘导论第5章-分类-其他技术.ppt》由会员分享,可在线阅读,更多相关《数据挖掘导论第5章-分类-其他技术.ppt(134页珍藏版)》请在三一办公上搜索。

1、数据挖掘导论,Pang-ning Tan,Michael Stieinbach,and Vipin Kumar著Pearson Education LTD.范明 等译人民邮电出版社,第5章 分类:其他技术,基于规则的分类最近邻分类贝叶斯分类神经网络支持向量机组合方法不平衡类问题多类问题,5.1 基于规则的分类器,2023/10/14,数据挖掘:概念与技术,4,基于规则的分类器,使用一组“ifthen”规则进行分类规则:(Condition)y其中 Condition 是属性测试的合取 y 是类标号左部:规则的前件或前提右部:规则的结论分类规则的例子:(Blood Type=Warm)(Lay

2、Eggs=Yes)Birds(Taxable Income 50K)(Refund=Yes)Evade=No,2023/10/14,数据挖掘:概念与技术,5,基于规则的分类器:例,脊椎动物数据集,2023/10/14,数据挖掘:概念与技术,6,基于规则的分类器的使用,规则 r 覆盖 实例 x,如果该实例的属性满足规则r的条件r1:(胎生=否)(飞行动物=是)鸟类r2:(胎生=否)(水生动物=是)鱼类r3:(胎生=是)(体温=恒温)哺乳类r4:(胎生=否)(飞行动物=否)爬行类r5:(水生动物=半)两栖类规则r1覆盖“鹰”=鸟类规则r3 覆盖“灰熊”=哺乳类,2023/10/14,数据挖掘:概念

3、与技术,7,规则的质量,用覆盖率和准确率度量规则的覆盖率(coverage):满足规则前件的记录所占的比例规则的准确率(accuracy):在满足规则前件的记录中,满足规则后件的记录所占的比例规则:(Status=Single)No Coverage=40%,Accuracy=50%,Tid,Refund,Marital,Status,Taxable,Income,Class,1,Yes,Single,125K,No,2,No,Married,100K,No,3,No,Single,8,No,Single,85K,Yes,9,No,Married,75K,No,10,No,Singl,e,90

4、K,Yes,10,2023/10/14,数据挖掘:概念与技术,8,如何用规则分类,一组规则r1:(胎生=否)(飞行动物=是)鸟类r2:(胎生=否)(水生动物=是)鱼类r3:(胎生=是)(体温=恒温)哺乳类r4:(胎生=否)(飞行动物=否)爬行类r5:(水生动物=半)两栖类待分类记录狐猴触发规则 r3,它分到哺乳类海龟触发规则r4和 r5-冲突狗鲨未触发任何规则,2023/10/14,数据挖掘:概念与技术,9,规则的分类器的特征,互斥规则集每个记录最多被一个规则覆盖如果规则都是相互独立的,分类器包含互斥规则如果规则集不是互斥的一个记录可能被多个规则触发如何处理?有序规则集基于规则的序 vs 基于

5、类的序 无序规则集 使用投票策略,2023/10/14,数据挖掘:概念与技术,10,规则的分类器的特征(续),穷举规则集每个记录至少被一个规则覆盖如果规则集涵盖了属性值的所有可能组合,则规则集具有穷举覆盖如果规则集不是穷举的一个记录可能不被任何规则触发如何处理?使用缺省类,2023/10/14,数据挖掘:概念与技术,11,有序规则集,根据规则优先权将规则排序定秩(rank)有序规则集又成决策表(decision list)对记录进行分类时由被触发的,具有最高秩的规则确定记录的类标号如果没有规则被触发,则指派到缺省类,2023/10/14,数据挖掘:概念与技术,12,规则定序方案,基于规则的序根

6、据规则的质量排序基于类的序属于同一类的规则放在一起基于类信息(如类的分布、重要性)对每类规则排序,2023/10/14,数据挖掘:概念与技术,13,如何建立基于规则的分类器,直接方法:直接由数据提取规则例如:RIPPER,CN2,Holtes 1R间接方法:由其他分类模型提取规则(例如,从决策树、神经网络等).例如:C4.5rules,2023/10/14,数据挖掘:概念与技术,14,直接方法:顺序覆盖,基本思想依次对每个类建立一个或多个规则对第i类建立规则第i类记录为正例,其余为负例建立一个第i类的规则r,尽可能地覆盖正例,而不覆盖负例删除r覆盖的所有记录,在剩余数据集上学习下一个规则,直到

7、所有第i类记录都被删除,2023/10/14,数据挖掘:概念与技术,15,直接方法:顺序覆盖,顺序覆盖(sequential covering)算法 1:令E是训练记录,A是属性值对的集合(Aj,vj)2:令Yo是类的有序集y1,y2,.,yk 3:令R=是初始规则列表 4:for 每个类 yYo yk do 5:while 终止条件不满足 do 6:r Learn-One-Rule(E,A,y)7:从E中删除被r覆盖的训练记录 8:追加r到规则列表尾部:RR r 9:end while10:end for11:把默认规则yk插入到规则列表R尾部,2023/10/14,数据挖掘:概念与技术,1

8、6,顺序覆盖:例,(a)Original data,(b)Step 1,(c)Step 2,(c)Step 3,2023/10/14,数据挖掘:概念与技术,17,删除实例,为什么要删除实例?否则,下一个规则将与前面的规则相同为什么删除正实例?确保下一个规则不同为什么删除负实例?防止低估规则的准确率比较图中的规则 R2 和 R3,2023/10/14,数据挖掘:概念与技术,18,Learn-One-Rule,规则增长实例删除规则评估停止准则规则剪枝,2023/10/14,数据挖掘:概念与技术,19,规则增长,两种策略一般到特殊从初始规则r:y开始反复加入合取项,得到更特殊的规则,直到不能再加入

9、特殊到一般随机地选择一个正例作为初始规则反复删除合取项,得到更一般的规则,直到不能再删除问题加入/删除合取项有多种选择,如何选择?何时停止加入/删除合取项?需要评估标准,2023/10/14,数据挖掘:概念与技术,20,规则增长:例,一般到特殊,特殊到一般,2023/10/14,数据挖掘:概念与技术,21,规则评估,常用的度量准确率似然比LaplaceM-estimateFOIL信息增益,2023/10/14,数据挖掘:概念与技术,22,规则评估(续),准确率Accuracyn:被规则覆盖的实例数nc:被规则正确分类的实例数问题:准确率高的规则可能覆盖率太低似然比(越高越好)k是类的个数fi是

10、被规则覆盖的类i的样本的观测频度ei是规则作随机猜测的期望频度,2023/10/14,数据挖掘:概念与技术,23,规则评估:例,例:60个正例和100个反例 规则r1:覆盖50个正例和5个反例(acc=90.9%)规则r2:覆盖2个正例和0个反例(acc=100%)使用准确率,r2好使用似然比r1:正类的期望频度为e+=5560/160=20.625 负类的期望频度为e=55100/160=34.375 r2:正类的期望频度为e+=260/160=0.75 负类的期望频度为e=2100/160=1.25 R(r1)=2 50log2(50/20.625)+5log2(5/34.375)=99.

11、9 R(r2)=2 2log2(2/0.75)+0log2(0/1.25)=5.66 r1比r2好,2023/10/14,数据挖掘:概念与技术,24,规则评估(续),考虑规则覆盖率的评估度量 n是规则覆盖的样例数,f+是规则覆盖的正例数,k是类的总数,p+是正类的先验概率 当规则的覆盖率很高时,两个度量都渐近地趋向于规则的准确率f+/n 继续前例r1的Laplace度量为51/57=89.47%,很接近它的准确率r2的Laplace度量(75%)比它的准确率小很多,2023/10/14,数据挖掘:概念与技术,25,规则评估(续),考虑规则的支持度计数的评估度量规则的支持度计数对应于它所覆盖的正

12、例数 FOIL信息增益(First Order Inductive Leaner information gain)设规则r:A+覆盖p0个正例和n0个反例;规则r:A B+覆盖p1个正例和n1个反例.扩展后规则的FOIL信息增益定义为 该度量与p1和p1/(p1+n1)成正比,所以它更倾向于选择那些高支持度计数和高准确率的规则 继续前例r1和r2的FOIL信息增益分别为43.12和2,因此规则r1比r2好,2023/10/14,数据挖掘:概念与技术,26,停止条件与规则剪枝,停止条件计算增益如果增益不显著,则丢弃新规则规则剪枝类似于决策树后剪枝降低错误剪枝:删除规则中的合取项 比较剪枝前后的

13、错误率 如果降低了错误率,则剪掉该合取项,2023/10/14,数据挖掘:概念与技术,27,直接方法:RIPPER,对于2类问题,选定一个类为正类,另一个为负类从正类学习规则负类时缺省类多类问题按类的大小(属于特定类的实例所占的比例)对诸类排序从最小的类开始学习规则,其余类都看做负类对次小类学习规则,如此下去,2023/10/14,数据挖掘:概念与技术,28,直接方法:RIPPER(续),规则增长:由空规则开始只要能够提高FOIL信息增益就增加一个合取项当规则不再覆盖负实例时就停止剪枝剪枝度量:v=(pn)/(p+n)p:验证集中被规则覆盖的正实例数 n:验证集中被规则覆盖的负实例数剪枝方法:

14、如果剪掉合取项可以提高v就剪,2023/10/14,数据挖掘:概念与技术,29,直接方法:RIPPER(续),建立规则集:使用顺序覆盖算找出覆盖当前正实例的最佳规则删除被规则覆盖的所有正实例和负实例当一个规则加入规则集时,计算新的描述长度当新的描述长度比已经得到的描述长度多d位时,就停止增加新规则,2023/10/14,数据挖掘:概念与技术,30,直接方法:RIPPER(续),优化规则集:对规则集R中的每个规则 r考虑2个替换的规则:替换规则(r*):重新增长新规则编辑的规则(r):把一个新的合取项增加到规则 r 比较替换前后的规则集 选择最小化MDL的规则集对剩下的正实例,重复规则产生和优化

15、,2023/10/14,数据挖掘:概念与技术,31,规则提取的间接方法,决策树从根结点到叶结点的每一条路径都可以表示为一个分类规则 路径中的测试条件构成规则前件的合取项,叶结点的类标号赋给规则后件,2023/10/14,数据挖掘:概念与技术,32,间接方法:C4.5rules(续),从未剪枝的决策树提取规则规则产生对每个规则 r:A y,考虑替换规则 r:A y 其中 A 由删除A的一个合取项得到比较r与所有r的悲观误差如果r的悲观误差小,则剪枝重复该过程,直到不能改进,2023/10/14,数据挖掘:概念与技术,33,间接方法:C4.5rules,规则定序不是对规则定序,而是对规则的子集定序

16、(class ordering)每个规则子集是一组具有相同规则后件(class)的规则计算每个子集的描述长度描述长度=L(error)+g L(model)g 是参数,考虑规则集中冗余属性(缺省值g=0.5),2023/10/14,数据挖掘:概念与技术,34,C4.5 vs C4.5rules vs RIPPER,2023/10/14,数据挖掘:概念与技术,35,基于规则的分类器的特征,表达能力与决策树一样高容易解释容易产生能够快速对新实例分类性能可与决策树相媲美,5.2 最近邻分类器,2023/10/14,数据挖掘:概念与技术,37,急切学习 vs 惰性学习,急切学习(Eager Learn

17、er)两步过程:(1)归纳(2)演绎惰性学习(lazy learner)把训练数据建模过程推迟到需要对样本分类时例子Rote-learner(死记硬背)记住所有的训练数据,仅当记录的属性值与一个训练记录完全匹配才对它分类最近邻(Nearest neighbor)使用“最近”的 k 个点(最近邻)进行分类,2023/10/14,数据挖掘:概念与技术,38,最近邻分类器,基本思想:If it walks like a duck,quacks like a duck,then its probably a duck,2023/10/14,数据挖掘:概念与技术,39,最近邻分类器,要求存放训练记录计算

18、记录间距离的度量k值,最近邻数对未知记录分类:计算域各训练记录的距离找出 k 个最近邻 使用最近邻的类标号决定未知记录的类标号(例如,多数表决),2023/10/14,数据挖掘:概念与技术,40,最近邻定义,记录x的k-最近邻是与x之间距离最小的k个训练数据点,2023/10/14,数据挖掘:概念与技术,41,1 nearest-neighbor,Voronoi Diagram,2023/10/14,数据挖掘:概念与技术,42,k-最近邻分类算法,k-最近邻分类算法1:令k是最近邻数目,D是训练样例的集合2:for 每个测试样例 z=(x,y)do3:计算z和每个样例(x,y)D之间的距离d(

19、x,x)4:选择离z最近的k个训练样例的集合Dz D5:6:end for 距离加权表决,2023/10/14,数据挖掘:概念与技术,43,k-最近邻,k值的选择:如果 k 太小,则对噪声点敏感如果 k 太大,邻域可能包含很 多其他类的点定标问题(规范化)属性可能需要规范化,防止距 离度量被具有很大值域的属性 所左右,2023/10/14,数据挖掘:概念与技术,44,k-NN的特点,k-NN的特点是一种基于实例的学习 需要一个邻近性度量来确定实例间的相似性或距离 不需要建立模型,但分类一个测试样例开销很大需要计算域所有训练实例之间的距离 基于局部信息进行预测,对噪声非常敏感 最近邻分类器可以生

20、成任意形状的决策边界 决策树和基于规则的分类器通常是直线决策边界 需要适当的邻近性度量和数据预处理 防止邻近性度量被某个属性左右,5.3 贝叶斯分类器,2023/10/14,数据挖掘:概念与技术,46,贝叶斯定理,每个记录用一个d维特征向量X=(x1,x2,xd)表示假定有k个类y1,y2,yk.给定X,X属于yj类的后验概率P(yj|X)满足贝叶斯(Bayes)定理MAP(maximum posteriori hypothesis,最大后验假设)将X指派到具有最大后验概率P(yj|X)的类yj,即将X指派到P(X|yj)P(yj)最大的类yj,2023/10/14,数据挖掘:概念与技术,47

21、,朴素贝叶斯分类,朴素贝叶斯分类(Nave Bayes Classifier)工作原理给定一个未知的数据样本X,分类法将预测X属于具有最高后验概率的类.即,未知的样本分配给类yj,当且仅当根据贝叶斯定理,我们有由于P(X)对于所有类为常数,只需要最大化P(X|yj)P(yj)即可.,2023/10/14,数据挖掘:概念与技术,48,朴素贝叶斯分类(续),估计P(yj)类yj的先验概率可以用下式估计 P(yj)=nj/n 其中,nj是类yj中的训练样本数,而n是训练样本总数 估计P(X|yj)为便于估计P(X|yj),假定类条件独立-给定样本的类标号,假定属性值条件地相互独立.于是,P(X|Y=

22、yj)可以用下式估计 其中,P(xi|yj)可以由训练样本估值,2023/10/14,数据挖掘:概念与技术,49,朴素贝叶斯分类(续),估计P(xi|yj)设第i个属性Ai是分类属性,则 P(xi|yj)=nij/nj其中nij是在属性Ai上具有值xi的yj类的训练样本数,而nj是yj类的训练样本数 设第i个属性Ai是连续值属性把Ai离散化假定Ai服从高斯分布 其中,ij,ij分别为给定yj类的训练样本在属性Ai上的均值和标准差,2023/10/14,数据挖掘:概念与技术,50,朴素贝叶斯分类,朴素贝叶斯分类器所需要的信息计算每个类的先验概率P(yj)P(yj)=nj/n 其中,nj是yi类的

23、训练样本数,而n是训练样本总数 对于离散属性Ai,设的不同值为ai1,ai2,ail,对于每个类yj,计算后验概率P(aik|yj),1 k lP(aik|yj)=nikj/nj其中nikj 是在属性Ai上具有值aik 的yj类的训练样本数,而nj是yj类的训练样本数 对于连续属性Ai 和每个类yj,计算yj类样本的均值ij,标准差ij,2023/10/14,数据挖掘:概念与技术,51,贝叶斯分类器:例,例:,P(Yes)=3/10P(No)=7/10P(有房=是|No)=3/7P(有房=否|No)=4/7P(有房=是|Yes)=0P(有房=否|Yes)=1P(婚姻状况=单身|No)=2/7P

24、(婚姻状况=离婚|No)=1/7P(婚姻状况=已婚|No)=4/7P(婚姻状况=单身|Yes)=2/3P(婚姻状况=离婚|Yes)=1/3P(婚姻状况=已婚|Yes)=0年收入:类=No:样本均值=110 样本方差=2975类=Yes:样本均值=90 样本方差=25,2023/10/14,数据挖掘:概念与技术,52,贝叶斯分类器:例(续),X=(有房=否,婚姻状况=已婚,年收入=$120K)计算P(X|No)和P(X|Yes)P(X|No)=P(有房=否|No)P(婚姻状况=已婚|No)P(年收入=$120K|No)=4/74/70.0072=0.0024 P(X|Yes)=P(有房=否|Ye

25、s)P(婚姻状况=已婚|Yes)P(年收入=$120K|Yes)=101.2109=0 计算P(X|No)P(No)和P(X|Yes)P(Yes)P(X|No)P(No)=0.0024 0.7=0.00168P(X|Yes)P(Yes)=0 0.3=0因为P(X|No)P(No)P(X|Yes)P(Yes),所以X分类为No,2023/10/14,数据挖掘:概念与技术,53,贝叶斯分类器,问题如果诸条件概率P(Xi=xi|Y=yj)中的一个为0,则它们的乘积(计算P(X|Y=yj)的表达式)为0很可能每个P(X|Y=yj)都为0解决方法使用Laplace 估计:原估计:P(Xi=xi|Y=yj

26、)=nij/nj,2023/10/14,数据挖掘:概念与技术,54,贝叶斯分类器的特点,对孤立的噪声点的鲁棒性个别点对概率估计的影响很小容易处理缺失值在估计概率时忽略缺失值的训练实例对不相关属性的鲁棒性各类在不相关属性上具有类似分布类条件独立假设可能不成立 使用其他技术,如贝叶斯信念网络(Bayesian Belief Networks,BBN),2023/10/14,数据挖掘:概念与技术,55,贝叶斯信念网络,贝叶斯信念网络(Bayesian belief network)允许在变量的子集间定义类条件独立性 因果关系图模型 表示变量之间的依赖给出联合概率分布的说明图示节点:随机变量边:依赖X

27、,Y 是Z的父节点/前驱,并且Y 是P的父节点/前驱Z 和P之间没有依赖关系图中没有环,2023/10/14,数据挖掘:概念与技术,56,贝叶斯信念网络:例,变量LungCance(LC)值的条件概率表(CPT),给出其双亲结点FamilyHistory和Smoke的每个可能值的组合的条件概率,2023/10/14,数据挖掘:概念与技术,57,贝叶斯信念网络:例(续),给出了LungCancer的CPT.对于其双亲值的每个可能组合,表中给出了LungCancer的每个值的条件概率.例如,由左上角和右下角,我们分别看到 P(LungCancer=“yes”|FamilyHistory=“yes”

28、,Smoker=“yes”)=0.8 P(LungCancer=“no”|FamilyHistory=“no”,Smoker=“no”)=0.9 对应于属性或变量Z1,Zn的任意元组(z1,zn)的联合概率由下式计算其中,P(zi|parents(zi)的值对应于Zi的CPT中的表目,2023/10/14,数据挖掘:概念与技术,58,训练贝叶斯信念网络,若干情况给定网络结构和所有可观测变量只需要学习CPT网络结构已知,而某些变量是隐藏的使用梯度下降法或类似于神经网络的方法训练信念网络网络结构未知,所有的变量可以观测搜索模型空间,构造网络拓扑结构网络结构未知,所有变量是隐藏的没有已知的好算法D.

29、Heckerman,Bayesian networks for data mining,2023/10/14,数据挖掘:概念与技术,59,训练贝叶斯信念网络,梯度下降法设S是s个训练样本X1,X2,.,Xs的集合,wijk是具有双亲Ui=uik的变量Y=yij的CPT项 wijk可以看作权,类似于神经网络中隐藏单元的权.权的集合记作w 这些权被初始化为随机概率值.梯度下降策略采用贪心爬山法.在每次迭代中,修改这些权,并最终收敛到一个局部最优解 基于w的每个可能设置都等可能的假定,该方法搜索能最好地对数据建模wijk值.目标是最大化,2023/10/14,数据挖掘:概念与技术,60,训练贝叶斯信

30、念网络:梯度下降法,给定网络结构和wijk的初值,该算法按以下步骤处理 计算梯度:对每个i,j,k,计算 沿梯度方向前进一小步:用下式更新权值 l是表示步长的学习率,设置为一个小常数 重新规格化权值:由于权值wijk是概率值,它们必须在0.0和1.0之间,并且对于所有的i,k,必须有,2023/10/14,数据挖掘:概念与技术,61,BBN的特点,BBN提供了一种用图形模型来捕获特定领域的先验知识的方法。网络还可以用来对变量间的因果依赖关系进行编码构造网络可能既费时又费力。然而,一旦网络结构确定下来,添加新变量就十分容易贝叶斯网络很适合处理不完整的数据。对有属性遗漏的实例可以通过对该属性的所有

31、可能取值的概率求和或求积分来加以处理因为数据和先验知识以概率的方式结合起来了,所以该方法对模型的过分拟合问题是 非常鲁棒的,2023/10/14,数据挖掘:概念与技术,62,使用BBN进行推理举例,E:锻炼,D:饮食,HD:心脏病,Hb:胸口痛,BP:血压,CP:胸痛,2023/10/14,数据挖掘:概念与技术,63,情况一:没有先验信息,通过计算先验概率P(HD=Yes)和P(HD=No)来确定一个人是否可能患心脏病 设Yes,No表示锻炼的两个值,健康,不健康表示饮食的两个值,由全概率公式 P(HD=Yes)=0.250.70.25+0.450.70.75+0.550.30.25+0.75

32、0.30.75=0.49因为P(HD=No)=1P(HD=Yes)=0.51,所以,此人不得心脏病的机率略微大一点,2023/10/14,数据挖掘:概念与技术,64,情况二:高血压,如果一个人有高血压,可以通过比较后验概率P(HD=Yes|BP=高)和P(HD=No|BP=高)来诊断他是否患有心脏病 先用全概率公式,计算P(BP=高)P(BP=高)=0.850.49+0.20.51=0.5185其中Yes,No 用贝叶斯公式计算此人患心脏病的后验概率,2023/10/14,数据挖掘:概念与技术,65,情况三,情况三:高血压、饮食健康、经常锻炼身体患心脏病的后验概率,5.4 人工神经网络,202

33、3/10/14,数据挖掘:概念与技术,67,神经网络,神经网络最早是由心理学家和神经学家提出的,旨在寻求开发和测试神经的计算模拟 神经网络是一组连接的输入/输出单元,其中每个连接都与一个权相关联 在学习阶段,通过调整神经网络的权,使得能够预测输入样本的正确类标记神经网络的优点对噪音数据的高承受能力对未知样本的分类能力 神经网络缺点需要很长的训练时间,因而对于有足够长训练时间的应用更合适很难解释蕴涵在学习权之中的符号含义 它需要大量的参数,这些通常主要靠经验确定,如网络拓扑或“结构”,2023/10/14,数据挖掘:概念与技术,68,多层前馈神经网络,后向传播是一种神经网络学习算法 后向传播算法

34、在多层前馈(multilayer feed-forward)神经网络上学习 例:一个多层前馈神经网络训练样本X=x1,x2,.,xi馈入输入层.每层之间存在加权连接;其中,wij表示由某层的单元j到前一层的单元i的权,2023/10/14,数据挖掘:概念与技术,69,多层前馈神经网络(续),输入同时提供给称作输入层的单元层 隐藏层的数量是任意的,实践中通常只用一层 输出层发布给定样本的网络预测 隐藏层和输出层的单元,有时称作neurodes(源于符号生物学),或输出单元 包含n个隐藏层的网络称作n+1层神经网络 网络是前馈的,如果其权都不回送到输入单元,或前一层的输出单元网络是全连接的,如果每

35、个单元都向下一层的每个单元提供输入 给定足够多的隐藏单元,线性阈值函数的多层前馈神经网络可以逼近任何函数,2023/10/14,数据挖掘:概念与技术,70,多层前馈神经网络(续),定义网络拓扑 用户必须说明输入层的单元数,隐藏层数,每一隐藏层的单元数和输出层的单元数对于“最好的”隐藏层单元数没有明确的规则网络设计是一个实验过程,并可能影响结果训练网络的准确性.权的初值也可能影响结果的准确性 一旦网络经过训练,并且其准确率不能被接受,则通常用不同的网络拓扑或使用不同的初始权值,重复训练过程 对训练样本中每个属性的值进行规格化将有助于加快学习过程 通常,对输入值规格化,使得它们落入0.0和1.0之

36、间 离散值属性可以重新编码,使得每个域值一个输入单元 例如,如果属性A的定义域为(a0,a1,a2),则可以分配三个输入单元I0,I1,I2表示A,2023/10/14,数据挖掘:概念与技术,71,后向传播,基本思想迭代地处理一组训练样本,将每个样本的网络预测与实际知道的类标号比较,进行学习.对于每个训练样本,修改权值,使得网络预测和实际类之间的均方误差最小尽管不能保证,一般地,权将最终收敛,学习过程停止 步骤解释初始化权:网络的权被初始化为很小的随机数(例如,由-1.0到1.0,或由-0.5到0.5),每个单元有一个偏置,也类似地初始化为小随机数 每个样本X按以下步骤处理 向前传播输入 后向

37、传播误差 重复以上两步,直至终止条件满足,2023/10/14,数据挖掘:概念与技术,72,后向传播(续),向前传播输入计算隐藏层和输出层每个单元的净输入和输出 对于输入层的单元j,它的输出等于它的输入;Oj=Ij.给定隐藏层或输出层的单元j,到单元j的净输入Ij是 其中,wij是由上一层的单元i到单元j的连接的权;Oi是上一层的单元i的输出;而 j是单元j的偏差(用来改变单元的活性)给定单元j的净输入Ij,则单元j的输出Oj用下式(logistic函数)计算 该函数又称挤压函数,因为它将一个较大的输入值域映射到较小的区间0到1,2023/10/14,数据挖掘:概念与技术,73,一个神经元(N

38、euron),一个隐藏或输出单元j:j的输入是来自前一层的输出.这些与对应的权相乘,以形成加权和,加权和加到与单元j相联的偏差上,一个非线性的活化函数用于净输入,2023/10/14,数据挖掘:概念与技术,74,神经网络的激活函数,线性函数,S型函数,双曲正切函数,符号函数,2023/10/14,数据挖掘:概念与技术,75,后向传播(续),后向传播误差 通过更新权和反映网络预测误差的偏置,向后传播误差 对于输出层单元j,误差Errj用下式计算 其中,Oj是单元j的实际输出,而Tj是j基于给定训练样本的已知类标号的真正输出,Oj(1-Oj)是logistic函数的导数 隐藏层单元j的误差是 其中

39、,wkj是由下一较高层中单元k到单元j的连接权,而Errk是单元k的误差,2023/10/14,数据挖掘:概念与技术,76,后向传播(续),后向传播误差(续)更新权和偏置,以反映传播的误差权由下式更新其中,wij是权wij的改变;变量l是学习率,通常取0和1之间的值.学习率帮助避免陷入判定空间的局部最小 学习率调整规则:将学习率设置为1/t.其中t是已对训练样本集迭代的次数 偏置由下式更新其中,j是偏置j的改变,2023/10/14,数据挖掘:概念与技术,77,后向传播(续),实例更新VS.周期更新实例更新(case update):每处理一个样本就更新权值和偏置周期更新(epoch upda

40、te):处理完训练集中的所有样本之后再更新权值和偏置 终止条件 前一周期所有的wij都小于某个指定的阈值,或 前一周期未正确分类的样本百分比小于某个阈值,或 超过预先指定的周期数 实践中,权值收敛可能需要数十万个周期,2023/10/14,数据挖掘:概念与技术,78,后向传播算法,输入D:由训练元组和它们的相关联的目标值组成的数据集l:学习率 Network:多层前馈网络 输出:训练后的神经网络 方法:(1)初始化network的权和偏置(2)while(终止条件不满足)(3)for(D中每个训练元组X)(4)/向前传播输入(5)for 每个输入层单元j(6)Oj=Ij;/输入单元的输出是它的

41、实际输入值(7)for(隐藏或输出层每个单元j)(8)/相对于前一层i,计算单元j的净输入(9)/计算单元j的输出,2023/10/14,数据挖掘:概念与技术,79,后向传播算法(续),(10)/后向传播误差(11)for 输出层每个单元j(12)Errj=Oj(1 Oj)(Tj Oj);/计算误差(13)for(由最后一个到第一个隐藏层,对于隐藏层每个单元j)(14)/计算下一个较高层k的误差(15)for networ中每个权wij(16)wij=(l)ErrjOi;/权值增量(17)wij=wij+wij;/权值更新(18)for networ中每个偏差 j(19)j=(l)Errj;/

42、偏置增量(20)j=j+j;/偏置更新(21),2023/10/14,数据挖掘:概念与技术,80,后向传播:例,一个多层前馈神经网络 第一个训练样本X=1,0,1(其类标号为1),2023/10/14,数据挖掘:概念与技术,81,后向传播:例(续),初始输入、权值和偏差值 净输入和输出的计算 计算每个结点的误差,2023/10/14,数据挖掘:概念与技术,82,后向传播:例(续),计算权和偏置的更新,2023/10/14,数据挖掘:概念与技术,83,神经网络的特点,至少含有一个隐藏层的多层神经网络是一种普适近似(universal approximator),即可以用来近似任何目标函数 ANN

43、可以处理冗余特征权值在训练过程中自动学习,冗余特征的权值非常小 神经网络对训练数据中的噪声非常敏感 使用确认集来确定模型的泛化误差 每次迭代把权值减少一个因子 使用的梯度下降方法经常会收敛到局部最小值 权值更新公式中加上一个动量项 训练ANN是一个很耗时的过程,但分类非常快,5.5 支持向量机,2023/10/14,数据挖掘:概念与技术,85,支持向量机,支持向量机(Support Vector Machines,SVM)源于Vapnik和Chervonenkis的统计学习理论的早期工作第一篇论文是Boser,Guyon和Vapnik BGV92的文章 优点对复杂的非线性边界的建模能力与其它模

44、型相比,它们不太容易过分拟合支持向量机还提供了学习模型的紧凑表示 广泛的使用范围SVM可以用来预测和分类它们已经用在许多领域,包括手写数字识别、对象识别、演说人识别,以及基准时间序列预测检验,2023/10/14,数据挖掘:概念与技术,86,支持向量机,两个线性可分的类找到这样一个超平面,使得所有的方块位于这个超平面的一侧,而所有的圆圈位于它的另一侧 可能存在无穷多个那样的超平面,2023/10/14,数据挖掘:概念与技术,87,决策边界的边缘,找这样的超平面,它最大化边缘B1比B2好,2023/10/14,数据挖掘:概念与技术,88,SVM的决策边界和边缘,一个线性分类器的决策边界可以写成如

45、下形式:wx+b=0 其中,w和b是模型的参数,2023/10/14,数据挖掘:概念与技术,89,边缘,方块的类标号为+1,圆圈的类标号为1 z的类标号y 调整决策边界的参数w和b,两个平行的超平面bi1和bi2可以表示如下 bi1:w x+b=1 bi2:w x+b=1 可以证明,边缘d,2023/10/14,数据挖掘:概念与技术,90,边缘推导,w的方向垂直于决策边界 如果xa和xb是任意两个位于决策边界上的点,则wxa+b=0,wxb+b=0于是w(xb xa)=0.由于xb xa是决策超平面中任意向量,于是w的方向必然垂直于决策边界 令x1是bi1上的数据点,x2是bi2上的数据点.代

46、入bi1和bi2相减得到w.(x1 x2)=2 由令u=w,v=x1 x2,得到|w|x1 x2|cos(w,x1 x2)=2,2023/10/14,数据挖掘:概念与技术,91,边缘推导(续),但|x1 x2|cos(w,x1 x2)=d于是|w|d=2,即,2023/10/14,数据挖掘:概念与技术,92,SVM,SVM的训练阶段从训练数据中估计决策边界的参数w和b 最大化边缘d,并满足wxi+b1 如果yi=1 wxi+b1 如果yi=1 即yi(wxi+b)1 最大化d等价于最小化这是一个凸二次优化问题,可以通过标准的拉格朗日乘子(Lagrange multiplier)方法求解,202

47、3/10/14,数据挖掘:概念与技术,93,SVM(续),拉格朗日算子 其中,参数i称为拉格朗日乘子 对Lp关于w和b求偏导,并令它们等于零因为拉格朗日乘子i是未知的,因此仍然不能得到w和b的解,(5-38),(5-39),(5-40),2023/10/14,数据挖掘:概念与技术,94,SVM(续),使用Karuch-Kuhn-Tucher(KKT)条件:i 0 i yi(wxi+b)1=0(5.42)除非训练实例满足方程yi(wxi+b)=1,否则拉格朗日乘子i必须为零i 0的训练实例位于超平面bi1或bi2上,称为支持向量(5.39)和(5.40)代入到公式(5.38)中 这是Lp的对偶问

48、题(最大化问题).可以使用数值计算技术,如二次规划来求解,(5-43),2023/10/14,数据挖掘:概念与技术,95,SVM(续),解出i后,用(5.39)求w,再用(5.42)求b决策边界为z可以按以下的公式来分类 如果f(z)=1,则检验实例z被分为到正类,否则分到负类,2023/10/14,数据挖掘:概念与技术,96,SVM:例,例:二维数据集包含8个训练实例 使用二次规划方法,求解优化问题LD,得到i.w1=iyixi1=65.5261 1 0.3858+65.5261(1)0.4871=6.64 w2=iyixi2=65.5261 1 0.4687+65.5261(1)0.611

49、=9.32 b(1)=1 wx1=1(6.64)(0.3858)(9.32)(0.4687)=7.9300 b(2)=1 wx2=1(6.64)(0.4871)(9.32)(0.611)=7.9289 b=(b(1)+b(2)/2=7.93,i,2023/10/14,数据挖掘:概念与技术,97,SVM:不可分情况,如果不是线性可分的,怎么办?软边缘(soft margin)允许一定训练误差引入松驰变量i其中C和k是用户指定的参数,对误分训练实例加罚 取k=1,C根据模型在确认集上的性能选择,2023/10/14,数据挖掘:概念与技术,98,SVM:不可分情况(续),拉格朗日算子 其中,前面两项

50、是需要最小化的目标函数,第三项表示与松弛变量相关的不等式约束,而最后一项是要求i的值非负的结果 KKT条件 i 0,i 0,i 0i yi(wxi+b)1+i=0i i=0,2023/10/14,数据挖掘:概念与技术,99,SVM:不可分情况(续),令L关于w,b和i的一阶导数为零,2023/10/14,数据挖掘:概念与技术,100,SVM:不可分情况(续),对偶拉格朗日问题 其形式与可分情况相同,但是0iC,2023/10/14,数据挖掘:概念与技术,101,非线性 SVM,使用非线性变换例:,2023/10/14,数据挖掘:概念与技术,102,非线性 SVM(续),非线性 SVM的优化问题

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号