第三章 构造性机器学习理论与覆盖算法
DESCRIPTION
第三章 构造性机器学习理论与覆盖算法. 引言. 1. 1.1 传统的神经网络存在的问题 传统的神经网络是非构造性的,整个网络结构就像是个“黑盒子” ,只能从输入输出的关系来认识它。 在帮助解决实际的大规模问题时遇到了很多的难题: 1. 缺乏有效的学习算法; 2. 难以将特定的要求、知识和策略融入其中; 3. 难以用硬件实现网络结构. 1. 1.2 构造性机器学习方法的提出 最初提出:张铃张钹于 1997 年提出了多层反馈神经网络的 FP ( Forward Propagation )学习和综合算法。 - PowerPoint PPT PresentationTRANSCRIPT
第三章 构造性机器学习理论与覆盖算法
研究生特色精品课程 - 机器学习
1 引言引言
研究生特色精品课程 - 机器学习
1
1.1 1.1 传统的神经网络存在的问题传统的神经网络存在的问题 传统的神经网络是非构造性的,整个网络结构就像是个“黑盒子” ,只能从输入输出的关系来认识它。 在帮助解决实际的大规模问题时遇到了很多的难题:1. 缺乏有效的学习算法;2. 难以将特定的要求、知识和策略融入其中;3. 难以用硬件实现网络结构
研究生特色精品课程 - 机器学习
1
1.2 1.2 构造性机器学习方法的提出构造性机器学习方法的提出
最初提出:张铃张钹于 1997 年提出了多层反馈神经网络的 FP( Forward Propagation )学习和综合算法。 构造性学习方法就如同是盖房子,总是先从最底层的地基结构开始,打完地基后建一层,建好一层后建二层,如此重复构造,直至房屋最后造好。由此可知,构造性机器学习方法可以分层逐步地构造,并将学习系统的基本功能模块划分成若干独立的功能子模块。
研究生特色精品课程 - 机器学习
1
1.2.1 1.2.1 构造性神经网络描述构造性神经网络描述
构造性神经网络中各个神经元之间的连接是松散的,即一个模块内的神经元与另一个模块内的神经元之间的连接权数目很少,甚至没有连接。各模块独自负责解决问题的一部分,因此在学习阶段所处理的数据也不完全相同。
研究生特色精品课程 - 机器学习
1
1.2.2 1.2.2 构造性网络结构构造性网络结构 首先,网络结构中各功能子模块相对简单,而且各子模块主要只需要集中于问题的一部分,所要解决的问题也相对比较简单,不会受到其它不同信号模块的影响,因此容易训练,相对简单的网络结构也有利于网络的泛化能力; 其次,网络的行为便于解释、分析,因而便于对网络的设计进行改进; 第三,各功能模块相对独立,有时可并行地进行训练,提高训练的效率; 第四,在解决实际问题时,经常需要建立大规模的神经网络,构造性的结构使得大规模网络的组织可按模块来构造,使得复杂问题变得相对简单。 第五,用硬件实现网络结构时,先构造简单的模块再将他们连接起来比一次性建立全连接的大规模网络容易的多
研究生特色精品课程 - 机器学习
1
1.2.3 1.2.3 构造性学习的意义构造性学习的意义 重要事实:人脑中的神经元之间不是全连接的,相反,他们的连接是松散的,并且是以聚类和多层次的方式组织在一起的 , 因此,从借鉴生物界研究成果的角度出发,构造性学习方法是在设计学习系统时值得考虑的一个重要设计原则 , 从解决科研、工程中实际问题的角度出发,人们逐渐认识到构造性的网络结构对于解决大规模问题有着非常重要的意义。
研究生特色精品课程 - 机器学习
1
1.3 1.3 构造性机器学习覆盖算法与构造性机器学习覆盖算法与 SVMSVM 的区别的区别SVM :( 1 )基于统计学习理论的一种学习方法 ( 2 )主要是研究小样本下的机器学习的规律,无论是线性可分还是线性不可分,都需要求解复杂的二次规划问题,这相当困难 ( 3 ) SVM 本质上用于解决二分类问题,只能用于类别数为二的样本的分类,多类别的分类问题,需构造 SVM决策树,效率低构造性学习方法的覆盖算法:( 1 )可处理海量样本,能根据样本自身的特点,针对学习样本的特征用超平面切割球面形成“球形领域”作为神经元来构造网络( 2 )分类能力强,运行速度快,最适宜于多类别的分类问题( 3 )可读性较强,参数的确定相对来说也比较容易。
研究生特色精品课程 - 机器学习
2 覆盖问题的描述及理论基础覆盖问题的描述及理论基础
研究生特色精品课程 - 机器学习
1
2.1 2.1 覆盖问题的描述覆盖问题的描述覆盖、划分、无关子集问题的数学定义:
定义 1 假设 K={rt=(xt,yt),t=1,2,…,p} 为一个有限的集合, C={Cj,j=1,2,…,s}是 K上的一个子集族 , 即每个Cj(j=1,2,…s)都是 K 的子集。令 J={1,2,…,s},若 J 的一个子集 J*满足∪ Cj=K , 则称 J* 是集合 K上的一个覆盖。定义 2 对 ,若 j≠i ,有 Cj∩Ci= ,且∪ Cj=K ,则称 J* 是集合 K上的一个划分。定义 3 针对上述假设,对 ,若 j≠i ,有Cj∩Ci= ,则称 J* 是集合 K上的一个无关子族。
*, Jij
*, Jij
研究生特色精品课程 - 机器学习
2.2 2.2 覆盖算法的理论基础覆盖算法的理论基础 1943年McCulloch和 Pitts根据神经元传递中的“ 0,1律”和神经传递中信号不但有不同的强度,而且有兴奋和抑制两种情况,提出了神经元的数学模型(M-P 模型)
一个 M-P 神经元是一个有着 n 个输入和单个输出的处理单元,其输入输出关系如下:
y ( w, x - )
y (x ) 是符号函数 1,x 0
(x )1,x 0
研究生特色精品课程 - 机器学习
2.2 2.2 覆盖算法的理论基础覆盖算法的理论基础 w, x 0 ( w, x - ) 1 w, x 0
( w, x - ) 1
当 时,表示点 X落在超平面 P的正半空间内,此时
;当 时,表示点 X落在超平面 P的负半空间内,
,如图 3.2 所示。
研究生特色精品课程 - 机器学习
2.2.1 2.2.1 超球面、球形领域、空间投射的概念超球面、球形领域、空间投射的概念
当 n维空间中 m 个超平面( n,m 的值较大时)相交时,情况会非常复杂,很难再用超平面的模型直观的理解神经网络的内在性质。
研究生特色精品课程 - 机器学习
2.2.1 2.2.1 超球面、球形领域、空间投射的概念超球面、球形领域、空间投射的概念 文献 [11] 中指出若限定所有输入向量的长度相等,即将输入向量限定在 n维的某个球面 Sn ( Sn是 n+1 维空间中的 n维超球面,其中心在原点,半径为 R )上,那么此时, 则表示球面上输入向量落在超平面 p ( p由 所表示)的正半空间的部分,这个部分恰好是球面上的某个“球形领域”,若取 w与 x 等长,则这个球形领域的中心恰好是 w ,其半径为 ,是 的单调下降的函数,如图 3.3 所示。
0 xw
0 xw
)(r
这里用绿线表示球冠半径 r ,红线表示 w向量,蓝线表示球心到超平面的距离
研究生特色精品课程 - 机器学习
2.2.1 2.2.1 超球面、球形领域、空间投射的概念超球面、球形领域、空间投射的概念 具体应用中,大部分情况下所给定的输入样本向量的长度不相等,设输入的定义域样本为 n维空间中的有界集合 D ,取 R>max{|x|,x D} ∈ ,文献 [11]通过如下变换将样本点投射到球面 Sn上并使得投射后的样本向量等长,如图 3.4 所示。 ( 3.4 ))||,()(,: 22 xRxxTSDT n
正是这种变换将无限的超平面转换为有限的球形领域,使得分类器的设计成为可能。每个神经元 (w, )
nS w r( )就是在超球面
上,以 为中心,以 为半径的一个“球形领域”的特征函数。这里一般取 R为 1.1~1.2倍。
研究生特色精品课程 - 机器学习
3 覆盖模型及其算法的分析覆盖模型及其算法的分析
研究生特色精品课程 - 机器学习
1
33 覆盖模型及其算法的分析覆盖模型及其算法的分析 覆盖算法是在 FP 算法的基础上发展起来的构造性算
法。 算法属于有监督学习,分为训练和测试两个过程。 其实质就是用求出的覆盖领域作为三层神经网络的隐含层,输入为测试集,输出为测试集的分类结果。覆盖算法网络结构确定后,运行效率高,适宜于处理大规模数据。
主要有 1998 年提出的领域覆盖算法、 1999 年提出的交叉覆盖算法及之后陆续提出的基于 rough 集的覆盖算法(附带提出加权覆盖的设想)、核覆盖算法、多侧面递进算法、概率覆盖算法等。
研究生特色精品课程 - 机器学习
1
3.1 3.1 领域覆盖算法领域覆盖算法• 领域覆盖算法分类器设计的基本思想 : 输入为 , 输出为 , 直观地理解为当输入样本落在 xi 的附近时,其输出都应为 yi 如果根据神经元的几何意义,进一步将在 xi 的附近看作是以 xi 为中心 , 为半径的“球形领域”所对应的神经元。
多层前向神经网络作为分类器的设计相当于用若干个“球形领域”将输入 xi 按照所属的类别区分开,换句话来说,即将每一类别用一组球形领域所覆盖。然后再将属于同类的“球形领域”对应的神经元输出用“或门”集中。
ix (i 1,2,...p)iy (i 1,2,...p)
i
研究生特色精品课程 - 机器学习
1
3.1.1 3.1.1 领域覆盖算法的初始化领域覆盖算法的初始化• 给定一个输入集合 K={(x1,y1),(x2,y2),…,(xp,yp)} ,其中 K
中有 p 个样本,每个输入样本 xi (i=1,2,…,p)有 n维属性,yi 为输入样本 xi 相应的输出。设 p 个样本对应的输出中不同的 yi 值有共有 s 个,不妨设前 s 个样本对应的 yi 输出值均不相同,令 I(t)(t=1,2,…,s) 分别代表令样本的输出为 yt 的所有样本标号的集合,即 I(t)={i|yi=yt} ;对应的输入集合记为 P(t), P(t)={xi|i I(t)},∈ 并将输入样本的上标按 I(1),I(2),…,I(s) 的顺序排列。
研究生特色精品课程 - 机器学习
1
3.1.2 3.1.2 领域覆盖的基本过程领域覆盖的基本过程
研究生特色精品课程 - 机器学习
1
3.1.2 3.1.2 领域覆盖的基本过程领域覆盖的基本过程
• 算法最终将求出一组覆盖 C={C11,C1
2,…,C1n,C2
1,C22,
…,C2n,…,Cs
1,Cs2,…,Cs
n} , C 就是算法所得到的解。若令 Ci= C∪ i
j , j=1,2,…,ni ,则每个 Ci表示第 i 类样本的所有覆盖。每个覆盖相当于一个神经元,根据这些覆盖可以构造一个神经网络,网络可以将所有的训练样本全部无误地分开。
研究生特色精品课程 - 机器学习
3.1.2 3.1.2 领域覆盖的基本过程领域覆盖的基本过程
注释:这里内积运算,其值可以看成是两向量构成平面到球体中心距离 ; 点集之间距离即为点与点之间的距离长度,此时 d(k) 为球冠地面圆心。
r( ) d(k) r( ) ,其中 是 的单调下降的函数。可见 step6中前后max与
min取值互反。
研究生特色精品课程 - 机器学习
将训练样本集X通过变换投影到超球面上,使每个样本长度相等
求出样本对应的 I(t), P(t ), 令 t=1
任取 P(t) 中未被覆盖的一个样本点xk ,求出与xk 异类点点积的最大值 d1(k) ,同类点点积的最小值 d2(k),且 d2(k) > d1(k), 取
2
(k)d(k)dθ
21 ,以xk为中心, θ为阈值作覆盖
样本 x 中所有点均被覆盖
P(t) 中所有点均被覆盖
t ß t+1
Y
Y
N
N
开始
结束
图 3.5
领域覆盖算法流程
图 由于 X通过变换投影到超球面上,因而,在覆盖的球冠上的点也是与中心点距离较近的点
研究生特色精品课程 - 机器学习
1
3.1.3 3.1.3 领域覆盖算法的分析与应用领域覆盖算法的分析与应用 指出任何一种求(次优)最小覆盖的方法与“球型领域”法相结合,都能给出一个神经网络的学习算法,这些算法都能称为领域覆盖算法。由于最小覆盖问题是一个典型的 NPC 问题,所以只能求出其次优解,但领域覆盖算法可以处理多类样本点,多分类处理能力比 SVM算法要强,对样本个数和特征维数无特殊要求,并且特征描述不要求离散化,要优于粗糙集理论,对于拒识样本点采用“就近原则”,类似于人类智能对于不认识的事物,一般和已知事物做近似匹配,虽然有些测试样本的准确率达不到最优结果,却一般高于大部分算法 。
研究生特色精品课程 - 机器学习
1
3.1.3 3.1.3 领域覆盖算法的分析与应用领域覆盖算法的分析与应用
1 2 kS ,S ,...S iS (i 1,2,...k)
算法常用的测试分类正确性的方法分为 K-交叉验证和保持两种。K-交叉验证法指的是将初始样本分为 K个大小大致相等且互不相交的子集
,轮流取其中一个子集 作测试,剩余的样本作训练,最后取 K 次运算的平均值作为最后结果,一般情况下,使用 10-交叉验证;
保持指的则是将数据集划分为训练集和测试集两个部分,使用训练集得出分类器的基本结构,用测试集来评估分类器的准确率。一般将样本中约三分之二的数据用作训练,三分之一的数据用来测试。也可将保持法重复 K 次,取平均值为最后结果。
近年来,领域覆盖算法的研究主要用于通信信号的搜索、气象信息分析及预测等方面。
研究生特色精品课程 - 机器学习
1
3.2 3.2 交叉覆盖算法交叉覆盖算法 1999 年张铃教授等首次提出了交叉覆盖算法交叉覆盖算法实际上就是交替覆盖。设学习样本集为 X ,共有 s类,即先求出一个球形领域 C1 ,此领域只覆盖样本中第一类样本点集 P(1) 中的点,而不覆盖其它类的点,然后将被 C1 覆盖的点删去,对剩下的点求另一个领域 C2 ,同理, C2 只覆盖第二类样本点集 P(2) 中的点,而不覆盖其它类的点,然后再将 C2 覆盖的点删去,如此交叉进行覆盖,依次轮流构造各类别的球形领域,直至所有的点覆盖完毕。
研究生特色精品课程 - 机器学习
1
交叉覆盖算法的基本思路:交叉覆盖算法的基本思路:
研究生特色精品课程 - 机器学习
1
交叉覆盖算法的基本思路:交叉覆盖算法的基本思路:
研究生特色精品课程 - 机器学习
1
研究生特色精品课程 - 机器学习
1
交叉覆盖算法的基本思路:交叉覆盖算法的基本思路:
其中第 7 步骤求出覆盖 c(a1) ,然后再求出覆盖的重心,将其映射到球面上,设投影点为 a2 。在按照公式求出阈值,得到新的覆盖 c(a2) 。如果之后覆盖的点更多,则
循环操作,直到 c(a2) 不能覆盖更多的点为止。进入到第 9 步进行样本点 a2 的平移,得到其平移点 a3 。并得出覆盖 c(a3) 。若 c(a3)比 c(a2) 覆盖的点更多,
则转到第 8 步。否则就得到一个覆盖。
3 1 3 1,a a
2 1 2 1,a a
算法说明:
研究生特色精品课程 - 机器学习开始
样本X投射到超平面上, 令 t = 0, Ej =
P(t) = ? X= ?
t ¬ (t+1)mod s
结束取P(t)中任一样本点xk
以xk为中心作覆盖Cj,令Ej = Cj ∩ P(t)
恢复原有参数,求xk平移点并将其投射到超球面上得xk'
以xk' 为中心作覆盖Cj,Ej = Cj ∩ P(t)
EjÌ Ej
EjÌ Ej
恢复原有参数,从样本X和P(t)中删去Cj所覆盖样本, j ¬ j+1
求Ej中样本点的重心并将其投射到球面上得 xk',xk¬ xk' , Ej¬ Ej ,
Y
N
Y
Y
N
N
Y
N
t=0 ?
N
Yt = s
交叉覆盖算法流程
图
研究生特色精品课程 - 机器学习
1
交叉覆盖算法的分析及应用交叉覆盖算法的分析及应用 交叉覆盖算法在构造初始领域后,求它所覆盖的样本点重心,将重心投射到超球面上,以此为领域中心重新构造新领域,重复进行,直到覆盖的样本点数不再增加。紧接着平移领域中心的位置,构造新领域,与求重心交替进行,对领域求重心、平移是个不断重复的过程,直到覆盖的样本数不多于前一次覆盖。在求每个覆盖领域时,算法希望覆盖的样本点数越多越好,这样,相应的领域覆盖的个数就会减小,网络神经元的个数也会减小。所以在求覆盖领域时采取了求重心和平移的算法,以求尽量扩大覆盖领域。 一般的领域覆盖算法总是先对一类样本点进行覆盖,一类覆盖完成过后,再进行另一类的覆盖,已被覆盖的样本仍占据空间位置,在考虑其后样本时,仍起作用。在求得的覆盖组中,领域覆盖的各领域无先后顺序。而交叉覆盖算法总是依样本的类别交替进行,并删除已覆盖的样本点,被覆盖的样本在后面的样本处理中将不再考虑,样本被删除后将有利于附近其它点的覆盖,也就是覆盖的半径可以取的更大些,因此,领域内涵盖的同类样本数就会更多,可使总的覆盖数目减少,相应地神经元的个数减少并简化网络的设计。 交叉覆盖算法在进行样本测试时,由于训练时各领域有严格的先后顺序,后求出的覆盖领域可能会包含前面的同类或异类领域,因此,要严格按照训练样本的领域顺序进行识别判断
研究生特色精品课程 - 机器学习
表 3.2 对相应数据库进行领域覆盖的实验结果表
样本覆盖数 正确识别
率(%)
拒识数
Waveform
1641 81.7 171.5
Pime 263 78.1 70
Zoo 13 95 1
表 3.6 对相应数据库进行交叉覆盖的实验结果样本 覆盖数 正确识别
率(%)
拒识数
waveform
864 80.4 1.5
Pime 171 73.4 0
Zoo 11 94 0.3
将表 3.2 与表 3.6 对比后,不难看出交叉覆盖与领域覆盖算法相比,样本的正确率有所下
降,覆盖个数大大降低,也就是说网络神经元个数大大减少,简化了网络设计。
研究生特色精品课程 - 机器学习
-10
-15
-200 5 10-5 15 20-10-15-20
0
5
10
-5
15
20
-10
-15
-200 5 10-5 15 20-10-15-20
0
5
10
-5
15
20
双螺旋结构样本分布图 从双螺旋中心开始用交叉覆盖法对双螺旋线分类的效果
采用交叉覆盖算法从双螺旋线的中心点由内向外分别做覆盖得到的覆盖效果
研究生特色精品课程 - 机器学习
1
3.3 3.3 覆盖算法的改进措施覆盖算法的改进措施 1.针对覆盖算法中具体功能函数的讨论和改进 ( 1 )在样本分布的球面上可能会存在着一定范围的不属于任何一类球形领域所覆盖的区域,在网络测试识别过程中,包含在此区域中的点就无法被识别出所属类别,即存在拒识现象。
研究生特色精品课程 - 机器学习
1
3.3 3.3 覆盖算法的改进措施覆盖算法的改进措施 ( 2 )球型领域之间可能存在重叠,落入重叠区域的点在识别过程中可能会被误判成其它类别
( 3 )对领域外样本点类别采用一般“就近原则”判断时,有可能造成误判。
研究生特色精品课程 - 机器学习
• 针对以上问题,可以从领域覆盖的功能函数和距离函数及构造等方面对算法加以改进:
• 1 )增大球形领域的半径,使球型领域尽可能地增大,从而减少“球型领域
”之间的边界区域。
• 这种改进方法可以更大程度地增大球形领域的范围,减少样本拒识率。 • 文献 [42] 中指出还可引入隶属度的概念,对原有的球形领域进行扩展,将扩展区域中所覆盖的同类训练样本数目与其所覆盖的训练样本数的比值称为扩展球面领域的隶属度。
研究生特色精品课程 - 机器学习
• 2 )当识别的样本点被拒识时,一般情况下可按距离覆盖中心最近的原则确定样本的归属类别,距离函数为:
• 样本点将被判断为与其相邻的半径较小领域的类别,却不会归属于与其相邻的半径较大区域,有可能造成误判。文献 [30], [33], [43]针对此类问题提出了改进策略,提出还可根据其它的方式来计算点 与不同领域 的距离,其中 为覆盖领域 中心点,三种不同的距离函数分别定义为:
研究生特色精品课程 - 机器学习
• 其中 R 是超球的半径, 是领域中心与最近异类点的内积, Ci 是第 i 类球形领域的集合, cent(i)=(r1*w1+r2*w2+…+rm*wm)/(r1+r2+…+rm) , wj(j=1,2,…,m) 是第 i 类第 j 个球形领域的权向量, rj(j=1,2,…,m) 是被 Ci 中第 j 个球面领域覆盖的样本数目, cent(i)是 Ci 的各领域中心的重心。式( 3.10 )主要定义测试样本点 xm 与领域 Ci 之间的距离为样本点到领域边界的距离 , ;式( 3.11 )主要是对式( 3.10 )进行了归一化的操作;式( 3.12 )则表示测试样本与领域 Ci 中所有球形领域的重心之间的距离。
• 若一个测试样本点不属于任何球形领域,但却与某领域之间的距离最小,则可认为该样本点属于此领域所对应的类别。按该方法测试样本集,将不存在拒识点,而实际数据中的噪音、孤立点也被划分成相应的类,从这方面来说也有其不合理的因素,存在着缺陷,但可以加以改进,如给定一个距离的界限值,当测试点距离某个覆盖的值均大于此界限值时,可认为是“拒识状态”,否则,根据就近原则进行判断即可。
研究生特色精品课程 - 机器学习
• 3 )对于落在重叠区域中的测试样本点,文献 [33], [43]指出可采用功能函数来确定样本的类别。如将原算法中神经元功能函数 .
• 改为:
• 其中 是超球面的半径, ,若采用式( 3.14 ),函数的输出值为 ;采用式( 3.15 )函数的输出值为 ,进行了归一化处理,即覆盖边界上的样本点输出值为 0 ,而覆盖领域中心的样本点输出为 1 ,落在重复区域中样本的类别根据球形领域输出值的大小确定即可。
x, x 0(x)
0, x 0
研究生特色精品课程 - 机器学习
•2. 样本学习的顺序分析•样本学习的顺序可直接影响覆盖领域的大小和个数,如图 3.11( a )和
图 3.11( b )所示。
• 图 3.11( a )是随机选取样本学习中心时得到的分类图,而图 3.11( b )则是经过一定的学习顺序选取中心时得到的分类图,很显然,图 3.11( b )比图 3.11( a )的覆盖数少,覆盖领域增大,泛化能力更强。
研究生特色精品课程 - 机器学习
• 再如图 3.7 所示的平面双螺旋分类问题,如果从双螺旋的中心点作交叉领域覆盖,则对平面双螺旋分类,可用有限的覆盖领域将其正确的分类,如图 3.8所示。但是,若将双螺旋型分布样本的学习顺序加以改变,如图 3.12 所示。
• 其中图 3.12( a )是领域覆盖算法有可能产生的覆盖顺序示意图 , 图 3.12
( b )为交叉覆盖算法从 C点开始覆盖有可能产生的覆盖顺序示意图,不管是哪种情况,都可以看出在初始样本点选择不正确的情况下,覆盖领域的个数会大大增加,覆盖领域半径也会大大减小,覆盖的效果会变得很差。
研究生特色精品课程 - 机器学习
• 由于样本的分布是随机的,事先无法知道整个样本集的空间分布,也无法事先确定
• 合适的学习顺序,文献 [13] 和文献 [44] 提出了重复覆盖算法思想,指出对第一次覆盖求出的领域可按样本个数从大到小的顺序中再次重新求覆盖的思想,这就是典型的重新选择样本学习顺序的一种改进方法。除此之外,还可以考虑按重心选择覆盖初始点 [32] 、及针对时间序列的顺序学习方法 [41] 。
研究生特色精品课程 - 机器学习
1) 重复覆盖 RCA( Repeated Covering Algorithm )算法
开始
用领域覆盖法求样本集X的覆盖组合并计算出每个覆盖所含的样本点个数
按样本个数从大到小的顺序对相应的覆盖领域重新求覆盖,得出新的覆盖领域
删除样本个数为1的覆盖, 同时将此孤立样本点从集合X中去除
结束
研究生特色精品课程 - 机器学习
开始
对给定样本集X用覆盖算法求一组覆盖
给定e, 对半径小于e的覆盖,构造点对P
计算各点对属性值之差的绝对值之和,删除m个绝对值之和最小的分量所对应的属性,形成新的X
结束
将新的X作为学习样本,重新求覆盖, 对测试集也进行相应的属性约简并进行测试
恢复样本中所删除的m个属性
Y
N
网络测试错误率下降否?
2 )点对主分量分析算法 DPCAA( Double points Principal Component Analysis Algorithm )
见例题
研究生特色精品课程 - 机器学习
• 例 3.8 其样本空间分布如下图所示:
• 用覆盖算法对样本 X 求覆盖,如图 3.14 所示,共可以得到 9 个覆盖 A、 B、 C、 D、 E、 F、 G、 H、 I 。其中 A、 E、 H、 I属于同一类覆盖, B、 C、 D、 F、 G 属于另一类覆盖。若取 ,则例子中覆盖半径小于 2 的覆盖领域共有 7 个,即 C、 D、 F、 G和 E、 H、 I ,这 7 个覆盖领域所覆盖的点集为 {{x4,x5,x6},{x7,x8,x10,x12}} ,对每个覆盖取覆盖内与覆盖不同点的最近距离的两点,即构成点对。
• 本例中点对的集合为 {(x4,x8),(x5,x12),(x6,x10),(x7,x4),(x8,x4),(x10,x5),(x12,x5)}
2e
研究生特色精品课程 - 机器学习
• 利用点对主分量分析算法对样本特征提取有很好的效果,样本的识别正确率也有所提高。但是可能会增加拒识率,
另外,该算法中 的值究竟选取在多少比较合适也是我们继续需要探讨的问题。
• FSACA( Feature Selection Algorithm based on the Decision Boundary of Covering Algorithm)算法,主要思想是将点对的定义稍微加以改变,认为点对是两个最相邻的(即覆盖领域的边界之间距离最短),分别包含不同类别样本点的覆盖领域中彼此最靠近的一对异类点,先求出所有覆盖
领域的点对,然后统计所有点对各分量差的绝对值之和,删除 m个最小分量所对应的样本属性,最后进行测试分析,发现效果也很不错。
e
研究生特色精品课程 - 机器学习
• 4. 泛化能力、网络复杂性与识别精度之间的关系• 泛化能力又称推广能力,指的是用训练样本学习所构造的
神经网络对测试样本集合的识别能力。构造性机器学习的目的就是根据给定的已知训练样本求取出对系统输入输出之间依赖关系的估计,使它能够对未知输出做出尽可能准确的预测,即有较强的泛化能力。
研究生特色精品课程 - 机器学习
1
3.4 3.4 多侧面递进算法多侧面递进算法 对于覆盖算法而言,训练样本可百分百正确识别的特性可认为是经验风险趋于零,此时若想提高学习机器的泛化能力的最有效的方法就是简化学习机器的复杂度,这也是多侧面方法提出的主要原因。 多侧面递进算法 MIDA 的基本思想就是参照人类对复杂问题的求解分重点和多方面考虑的方式,将网络训练样本集分成几个部分,对每个部分分别选择一组适应它们的特征子集,采用分层划分特征向量的方法,在保证一定精度的前提下,提高泛化能力并降低计算的复杂度
研究生特色精品课程 - 机器学习
多侧面递进算法的基本流程
开始
给定样本集X和属性集F,令 i = 1,取属性子集Fi
将样本投影到Fi空间上,并求覆盖集Cj
对于给定的e, 求半径小于e的所有覆盖的样本集合 Q和点对集合 P
Q为空?
结束
计算P中各点对在Fi中各属性差值的绝对值之和并删除绝对值之和最小的m个属性,再计算F/ Fi中各属性差值绝对值之和, 将其m个最大值属性加入Fi。
Fi +1← Fi , i ← i +1, X← QY
N
研究生特色精品课程 - 机器学习
• 例 3.9 设样本集 , 共分为两类,其中
为一类, 归为另外一类。每个样本
是一个四维特征向量的集合 , 分别为: , , ,
, , , , , , ,
, , 。设样本 X 的属性集用 表示。
1 2 3 4 5 6 7 8 9 10 11 12 13X {x ,x ,x ,x ,x ,x ,x ,x ,x ,x ,x ,x ,x }1 2 3 4 5 6{x ,x ,x ,x ,x ,x } 7 8 9 10 11 12 13{x ,x ,x ,x ,x ,x ,x } ix (i 1,2,...13)
1x (2,2,1,2)2x (4,3,2,1) 3x (3,4,4,1) 4x (11,3,2,2)
5x (2,8,2,3) 6x (4,9,2,1)7x (9,3,2,7) 8x (10,2,2,4) 9x (11,7,2,5) 10x (2,9,6,2)
11x (8,7,2,3) 12x (2,8,7,5) 13x (9,5,1,3) 1 2 3 4F {x ,x ,x ,x }
研究生特色精品课程 - 机器学习
开始
给定样本集X和属性集F,令 i = 1,取属性子集Fi
将样本投影到Fi空间上,并求覆盖集Cj
给定的 e1,e2,令 0e1e2, 求半径小于e1的所有覆盖的样本集合 Q和点对集合 P
Q为空?
结束
计算P中各点对在Fi中各属性差值的绝对值之和并删除绝对值之和最小的m个属性,再计算F/ Fi中各属性差值绝对值之和, 将其m个最大值属性加入Fi。
Fi +1← Fi , i ← i +1, X← RY
N
求半径小于e2的所有覆盖的样本集合 R
1e 2e
变形的多侧面算法,主要是给定两个覆盖半径界限值和
研究生特色精品课程 - 机器学习
3.5 3.5 核覆盖算法核覆盖算法 覆盖算法有很多处理海量数据方面的优势,但是也有不足之处,首先,抗干扰能力差;其次,前面所描述的各种优化覆盖算法都只是局部优化,却无全局优化。 考虑将 SVM 的核函数引入覆盖算法构成核覆盖算法。SVM 算法中常用的核函数有三种,分别是:1 ) 多项式核函数 ,其中 d 为正整数;2 ) 高斯核函数 ,其中 ,为自定义参数;3 ) Sigmoid核函数 ,其中 b,c 是自定义参数。
由于高斯核函数的使用较为普遍,而且其对应的特征空间是无穷维的,能保证有限的样本在该特征空间肯定线性可分,因此构造高斯核函数的覆盖算法。
dK(x, y) (x y 1) 2
K(x, y) exp( x y ) 0
K(x, y) tanh( b(x y) c)
研究生特色精品课程 - 机器学习
开始
将训练样本集X通过变换投影到超球面上,使每个样本长度相等
求出样本对应的 I(t), P(t ), 令t=1
任取 P(t) 中未被覆盖的一个样本点xk , 令
样本 X 中所有点均被覆盖
P(t) 中所有点均被覆盖
t ß t+1
Y
Y 结束
N
N
以xk为中心,为阈值作覆盖
2m k
m I(t )max exp( x x )
核覆盖算法流程图
研究生特色精品课程 - 机器学习
基于融合的核覆盖算法
开始
结束
将训练样本集X分为正数X1和负数X2
令 i=1, j=1
任取Xi中未被覆盖的一样本点 aj, 计算 dj , 以 aj为中心,dj 为阈值求覆盖 Cj
运用求重心和平移的思想优化Cj, 重新求出 aj , dj
样本X中所有点均被覆盖?
样本Xi中所有点均被覆盖?
求出所有覆盖所对应的aj,dj,yj (j=1,2,…s), 在给定条件下求出
maxW(a)的最优解a*
构造融合曲面 f (x)
i ß i+1
j ß j+1
Y
N
Y
N
-3
-4
-5-1 0 1-2 2-3-4-5
-1
0
1
-2
2
3
3 4 5
4
5
覆盖融合示意图
研究生特色精品课程 - 机器学习
• 由实验结果可获知,核覆盖算法可以通过适当地调整参数 获得比较好的覆盖和识别效果,但是不同的样本需要选择不同的参数,而且参数的选择对结果会有很大地影响。究竟如何合理地选取参数目前并没有一个合适的方法,有待进一步改进。
• 从实验的比较结果可以看出,基于融合的核覆盖算法在选择适当的参数后样本识别精度会有显著地提高且样本的测试计算量也有所下降。算法的参数可通过覆盖过程确定,利用局部覆盖代替求二次规划的样本,从而降低了计算量,并且克服了一般覆盖算法中覆盖边界“零碎”、“杂乱”的现象,可使边界光滑化。
研究生特色精品课程 - 机器学习
1
3.5 3.5 概率模型覆盖算法概率模型覆盖算法 考虑到高斯函数的概率意义,将其理解成概率分布函数,为核覆盖算法建立一个有限混合概率模型,即可将核覆盖算法和统计模型结合起来构成概率覆盖算法。 概率模型下的覆盖算法主要是采用有限高斯混合密度为覆盖算法建立概率模型,由于概率论中明确指出任何连续分布均可由等方差高斯密度的有限混合任意逼近,因此,在近似意义下只需研究有限高斯混合密度即可。 算法还主要将每个覆盖领域所覆盖样本点个数即覆盖领域密度考虑其内,利用“最大似然原理”引入全局优化计算,并采用 EM 方法完成对覆盖算法的全局优化计算,从而扩大覆盖方法的使用范围,提高算法的精度并增强抗干扰的能力
研究生特色精品课程 - 机器学习开始
将样本集X投射到超球面,共分s类, 并求覆盖集合Cij
令 i = 1, j = 1
令 t=0
计算 Cij 的覆盖领域密度 aj 和半径 gj
令j(0) = gj , mj
(0) 为 Cij 覆盖领域中心值,其
中h为第i类样本点总数, ni 为第i类覆盖
求 ij(t), aj
(t+1) , mj(t+1) , ( j
(t+1) )2
t+1 < 迭代次数?
令 gj 2= ( j
(t+1) )2 ,以mj(t+1) 为中心,gj 为半径求新的覆盖领域
j = ni ?
i = s ?
j ¬ j+1
i ¬ i+1, j=1
t ¬ t+1
N
结束
Y
Y
Y
N
N
概率模型覆盖算法流程图
概率覆盖算法利用概率模型解决了覆盖算法的全局优化问题,具体地就是将覆盖算法推广至概率模型并且求出最大似然拟合从而进行全局优化。先运用覆盖算法求出各类的近似覆盖组合,再运用有限混合模型的最大似然方法求个覆盖组合的最后分布,这样的步骤可大大减少计算量。
研究生特色精品课程 - 机器学习
• 算法中也存在着需要改进之处,如算法求出覆盖后,有限混合模型的分量个数随之确定,在后面的计算中保持不变,但这个分量的个数不一定是最合适的,可能需要调整,文献 [62] 中指出可考虑定义分量的相关系数和偏差,并给出相应的阈值,当相关系数小于阈值时,将对应的分量合并成一个分量,当偏差大于某个阈值时就将一个分量分解为两个,如此不断分解与合并直至不需调整为止。
• 另外对于多维高斯分布所构造的有限混合模型在迭代中可能会出现的一些问题还需进一步研究,也是未来需要研究的重要内容。
研究生特色精品课程 - 机器学习
4 本章小结本章小结
研究生特色精品课程 - 机器学习
1
构造性覆盖算法已经发展了十几年,但是仍然有很多问题尚待解决,这些问题也是今后覆盖算法发展的研究重点和趋势。具体如下: 首先,针对某类具体问题,如何选择合适的覆盖模型是一个复杂的问题; 其次,针对某个覆盖算法,选择最为合适的初始学习样本点及学习顺序是一个比较复杂的问题; 第三,覆盖个数的选择和优化问题; 第四,如何处理动态数据学习问题。
综上所述,构造性机器学习理论与覆盖算法在机器学习领域发挥着重要作用,虽然还有很多问题需要解决,但随着研究人员的不断努力,覆盖技术必将会有重大的发展和更广泛的应用。
研究生特色精品课程 - 机器学习
本章完