1、1,CMAC小脑神经网络从神经网络的函数逼近功能这个角度来分,神经网络可以分为全局逼近网络和局部逼近网络。当神经网络的一个或多个可调参数(权值和阈值)在输入空间的每一点对任何一个输出都有影响,则称该神经网络为全局逼近网络,多层前馈BP网络是全局逼近网络的典型例子。如果对网络输入空间的某个局部区域只有少数几个连接权影响网络输出,则称网络为局部逼近网络。目前常用的局部逼近神经网络有CMAC网络、径向基函数RBF网络和B样条网络等,其结构原理相似,1975年J.S.Albus提出一种模拟小脑功能的神经网络模型,称为Cerebellar Model Articulation Controller1-2
2、,简称CMAC。CMAC网络是仿照小脑控制肢体运动的原理而建立的神经网络模型。小脑指挥运动时具有不假思索地作出条件反射迅速响应的特点,这种条件反射式响应是一种迅速联想。,2,CMAC网络有三个特点: (1)作为一种具有联想功能的神经网络,它的联想具 有局部推广(或称泛化)能力,因此相似的输入将产生相似的输出,远离的输入将产生独立的输出; (2)对于网络的每一个输出,只有很少的神经元所对应的权值对其有影响,哪些神经元对输出有影响则有输入决定; (3)CMAC总体上可看做一种表达非线性映射的表格系统。 CMAC最初主要用来求解机械手的关节运动,其后进一步用于机械人控制、模式识别、信号处理以及自适应
3、控制等领域。,3,1. 常规CMAC1.1 CMAC模型与映射,4,5,1. 常规CMAC 1.1 CMAC模型与映射,6,7,在CMAC网络中,a)输入空间上的两个点比较靠近时,对应的相联空间中的局部区域(激活的神经元集合)也比较靠近,互相有重叠; b)输入空间上的两个点相隔比较远的时候,对应的局部区域应该也比较远,互相无重叠或重叠较少。 因此,网络具有局部泛化能力。,8,一维输入: (对输入施加一个离散化的操作),9,一维输入:1)激活的神经元的个数为4;2)神经元个数的总数是12;3)相邻输入对应的激活神经元重叠个数为3;,10,对第1级,变量s1被划为3块A B和C,变量s2被划为a,
4、 b和c。则Aa, Ab, Ac, Ba, Bb, Bc, Ca, Cb和Cc为存储数据的地址或单元(hypercubes);与此相似,对第2级,有存储单元Dd, De, Df, Ed, Ee, Ef, Fd, Fe和Ff;对第3级,有存储单元Gg, Gh, Gi, Hg, Hh, Hi, Ig, Ih和Ii。,12,13,14,此处的二维CMAC中,用27个存储单元来存储49个状态的数据。,15,HASHING映射(Hash编码):压缩稀疏矩阵的一个常用技术。当在一个大的存储区域稀疏地存储一些数据时,可以通过hash编码将其压缩到一个小的存储区域。例:除留余数法(一种Hash编码的实现方法)
5、yf (x)xk (k决定了压缩率)注意:Hash编码是一个多对少的映射碰撞。,16,17,用CMAC模型逼近非线性函数y(k)=(u(k-1)3-0.9*y(k-1)/(1+y(k-1)2),u(k)为网络的输入。,采用线性化函数对输入状态进行量化,实现CMAC的概念映射s(k)=round(u(k)-xmin)*M/(xmax-xmin)式中,round()为四舍五入函数。采用杂散编码技术中的除留余数法实现CMAC的实际映射。设杂凑表长为m,以元素值s(k)+i除以某数N后得到余数+1作为杂凑地址,即ad(i)=mod(s(k)+i,N)+1式中,i=1,2,C,这是一种压缩的稀疏矩阵并且由多到少的映射,而哈希编码(Hash-coding)是压缩稀疏矩阵的常用技术,通过哈希编码可以将存取单元较大的地址空间压缩到一个小得多的物理地址空间AP中。,18,