1.一种基于群集递归神经网络的图像分类方法,具体包括以下步骤:步骤1.将待识别图像预处理后形成输入向量;
步骤2.一种基于神经元簇群集递归神经网络的图像特征提取方法;构建具有神经元簇的高维递归层,神经元簇内按胜者独享的方式完成特征提取;包括以下步骤:
2.1.将待识别图像预处理后的输入向量作为网络的输入,记为包含m个神经元的一维列向量I=[I1,I2,...,Im]T;
2.2.构建包含n个神经元的递归层M,并形成神经元蔟;将所有神经元随机划分成k个大小相同的簇,即每簇包含n/k个神经元,将神经元簇记为Clusteri,i=1,2,...,k;神经元簇间的神经元相互没有连接,而神经元簇内的神经元彼此相互连接;
2.3.确定输入层与递归层M之间的连接矩阵W;输入神经元与递归神经元以概率p=0.1相连,即它们之间的连接有90%的概率取值为0,而非0值则按照标准高斯分布(均值为0,方差为1)随机赋值;
2.4神经元蔟内各个神经元的活性计算;簇内的神经元根据其输入值的大小来决定该神经元是否发放,簇内神经元输入值最大的神经元将被激活,而簇内其它神经元都将处于静息状态;激活状态的神经元其输出取值为1,而静息状态神经元其输出取值为0;递归层M中各个神经元的输入值Y为:Y=WI
(1)步骤3.基于奖励信号学习将图像特征映射为图像类别,从而形成成熟分类器;包括以下步骤:
3.1定义表示类别的输出层;如果处理的图像共有l个不同的类别,则输出层有l个神经元,其输出表示为Z=[z1,z2,…,zl]T;递归层M到输出层之间的连接矩阵H,矩阵内每一元素按[0,1]之间的均匀分布随机赋值;由此,输出为:Z=HY
(2)输出层中只有一个神经元具备活性,该神经元对应于一个具体的类别;
为了计算输出层各个神经元的输出值,先将输出层列向量Z中各个元素进行如下计算:从而得到列向量P=[p1,p2,...,pl]T,再取P中最大值的索引得到K=argmax(P),K即为输入图像的类别编号;
3.2基于奖励信号调制递归层M到输出层之间的连接矩阵H,完成特征到类别的学习,包括以下步骤:
3.2.1.根据类别标签T(如果有l类,则T∈[1,l])与神经网络的预测结果K,计算奖励值R,即:
3.2.2.根据步骤3.1)中计算得到的列向量P对输出层与递归层之间的连接矩阵H调整权重:Ht[K,:]=Ht-1[K,:]+η*(R-P)*MT (5)其中η为学习率,MT为递归层列向量的转置,t为迭代次数;Ht[K,:]表示递归层和输出层之间的连接矩阵H在t次迭代时的第K行向量;
3.2.3.连接矩阵H归一化;若矩阵中元素值大于阈值c,则认为该连接存在应赋值为1,否则应认为该连接不存在应赋值为0;由此得到更新后的连接矩阵H:
3.2.4以上步骤直到迭代次数到达预设的目标则停止,存储网络的连接矩阵,形成成熟的分类器;
步骤4.基于成熟分类器实现对图像的分类;
4.1分类图像按照步骤1相同的预处理,并形成输入向量;
4.2按公式(1)将提取输入向量的特征;采用递归的群集神经网络提取特征不仅完成了特征从低维度向高维度的映射,且由于递归网络中胜者独享的活性计算方式使得特征具备稀疏性;
4.3按公式(2)计算特征向量的输出值,式(2)中将采用如步骤3.2.3所诉的形成成熟分类器后存储的连接矩阵H;
4.4按照公式(3)得到图像的分类结果。
2.如权利要求1所述的基于群集递归神经网络的图像分类方法,其特征在于:所述的递归神经网络其簇内获胜的神经元按照其活性根据概率来进行确定。