小脑模型神经网络(CMAC)PART01PART02PART03PART04CMAC网络的基本思想CMAC网络的结构模型与工作原理仿真示例总结目录01CMAC网络的基本思想肌肉、四肢、关节、皮肤……感受信息反馈信息记忆存储器控制信号驱动联想有差异调整1975,J.S.Albus小脑模型神经网络(CMAC-CerebellarModelArticulationController)局部逼近神经网络:网络输入空间的某个局部区域只有少数几个连接权影响网络输出02CMAC网络的结构模型与工作原理输入空间U由所有可能的输入向量Ui组成,虚拟联想空间Ac是一个虚拟的空间,不占用物理存储,CMAC网络将其接受到的任何输入,映射到联想存储器Ac中的c个单元。物理存储空间Ap中存储着网络的权值参数,Ac中的c个单元在物理存储空间Ap中找到对应的权值参数,做求和得到最终的网络输出。重点:两个映射•第一次映射:U-Ac•第二次映射:Ac-Ap02CMAC网络的结构模型与工作原理从输入空间U至虚拟存储器AC的映射n维输入向量:Tnppppuuu],,,[21u][pu量化(离散化):RuuuuppppcpTSsss([])[([]),([]),,([])]12映射至AC的c个存储单元:sjcjp([]),,,u112映射映射法则可以根据实际情况选取,只需要满足一下规则即可。输入空间邻近两点(一点为一个n维输入向量),在Ac中有b个重叠单元被激励。距离越近,重叠越多;距离远的点,在Ac中不重叠02CMAC网络的结构模型与工作原理量化一般来说,实际应用时输入向量的各分量来自不同的传感器,其值多为模拟量,而Ac中每个元素只取0或1两种值。为使输入空间的点映射到虚拟联想空间Ac的离散点,必须先将模拟量U量化,使其成为输入空间的离散点。量化等级设输入向量U在量化的过程中,每一个分量可被量化成𝑞个等级,则𝑛个分量可组合为𝑞𝑛个输入状态。每一种状态对应于Ac中的c个存储单元,相邻输入在Ac中有b个单元重复,故Ac中存储单元的总数为𝑐+(𝑞𝑛−1)(𝑐−𝑏)。02CMAC网络的结构模型与工作原理例.量化等级100,输入有10个分量,每一状态对应Ac中的6个存储单元,相邻输入在Ac中有5个单元重复,Ac与Ap一一对应。实际物理存储空间Ap有6+(10010−1)个存储单元。但实际的学习问题并不会包括所有的学习空间的状态。哈希映射哈希映射是压缩稀疏矩阵的一个常用技术。当在一个大的存储区域稀疏地存储一些数据时,可以通过哈希映射将其压缩到小的存储位置例:除留余数法:y=f(x)=x%k(k决定了压缩率)02CMAC网络的结构模型与工作原理实际映射Ac→Ap这个过程最简单的实现方法就是线性一一映射。输出:pTpcjPjjpswywRu1])([其中Tcjp],,,,[21代入1])([pjsuywpjjc1可得:jwRuuuuppppcpTSsss([])[([]),([]),,([])]12([])1,1,2,jpsjcu02CMAC网络的结构模型与工作原理权值调整给定输入/输出样本对:𝑢𝑝𝑑𝑝权值调整指标:)()()(tytdtepp误差平均分配:(()())()()ppjdtytetwtcc)(1)-(t(t)t02CMAC网络的结构模型与工作原理权值调整经过数次迭代后,最初的存储单元已经包含了一些先前学习的知识。每一个存储单元学习的历史不同,所以这些存储单元也不应有相同的可信度。无视这些差异,所有被激活的存储单元都获得相同的校正误差,那么那些由未学习状态产生的误差将对先前学习的信息产生“腐蚀”。∆𝑤𝑗𝑡=𝜂𝑓(𝑗)+1−1𝑓(𝑙)+1−1𝑐𝑙=1𝑒(𝑡)基于信度分配的CMAC(CA-CMAC)神经网络𝑓(𝑗)是第𝑗个存储单元的学习次数,𝑐是某状态激活的存储单元数。03仿真实例用CMAC逼近sin函数采用一维输入一维输出结构的CMAC逼近sin采用c=6,邻近两点重叠单元b=5采用线性化函数实现U-Ac的虚拟映射s(k)=round((u(k)-xmin)/(xmax-xmin)*M)采用一一映射的方式实现Ac-Ap的实际映射输入训练样本:train_in=0:36:324共10个样本03仿真实例量化等级:40训练样本个数:10学习率:103仿真实例03仿真实例03仿真实例03仿真实例03仿真实例03仿真实例04总结•网络非线性:CMAC的每个神经元的输入输出是一种线性关系,但其总体上可看做一种表达非线性映射的表格系统。•学习速度快:每次修正的权值少,在保证函数非线性逼近性能的前提下,学习速度快,适合于实时控制;•局部泛化能力:相近输入产生相近输出,不同输入给出不同输出,避免了BP网络的局部最优问题;谢谢