网络设计: 1. 从进行了预处理的样本集中选择适当的样张构成训练样本集合 Kohonen网络识别系统的误差计算是完全根据训练样本进行的,没有标注错误引起的难以分类等问题,因此对于训练样本的要求比较宽松。 2. 设计网络结构 选择网络层数为2,输入层的神经元数目N1与输入特征向量维数相等。输出层采用平面结构,根据N2>>N1的原则,输出层神经元数目N2远远大于10,在此建议取200-500。 3. 初始化网络参数 网络权重为绝对值小于1的随机数。即,|Wij| < 1。同时,对决定神经元竞争域范围的Nc(t)、步长参数α(t)进行选择并设定初始值。由于学习是无监督的,系统学习误差也无从谈起。系统训练的结束是由预先设定的T决定的。在此建议训练次数为1000左右。 Kohonen网络的权重初始值没有前馈神经网络那样重要。只要比较小就可以了。初始竞争范围与输出层的大小有关,在此建议竞争域初始范围大于输出层的1/4。训练次数可以由试验决定,可进行一定量的训练,然后进行性能测试,如果没有达到满意的程度可在此基础上进行再次学习。 4. 向网络输入训练样本,由下列公式计算各个神经元的输出及网络的各个输出节点的输出yj。 其中,xi为各个神经元的输入值, wij为相应的权重, y为各个神经元的输出。 5. 求出输出值最大的神经元,根据6.2.4介绍的学习算法,调整其竞争域内的所有神经元节点的权重,完成一次训练。当系统完成了预定循环次数后,训练结束。 由于是两层的网络结构,Kohonen网络的训练过程比前馈网络要快得多,不是一个数量级的。因此在计算机硬件允许的情况下,可以尽量将网络结构设置得大一些,尤其是输出层,这样可以提高系统分类精度。 识别系统的应用: Kohonen网络分类器的使用过程与前馈神经网络基本相同: 1. 将已进行了预处理的待识别样张输入到识别器。 2. 计算输出层各个神经元的输出值并进行比较。将输出值最大的神经元作为系统输出。 Kohonen网络分类器没有前馈神经网络分类器的分类结果精度高。 |