暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

多层感知器分类器

淮海路小佩奇 2023-09-27
97

多层感知器分类器 (Multilayer Perceptron classifier,MLPC) 是一种多层的前馈神经网络模型,所谓前馈型神经网络,指其从输入层开始只接收前一层的输入,并把计算结果输出到后一层,并不会给前一层有所反馈,整个过程可以使用有向无环图来表示。该类型的神经网络由三层组成,分别是输入层,一个或多个隐层,输出层。中间的节点使用sigmoid (logistic)函数,输出层的节点使用softmax函数。MLPC学习过程中使用BP算法,优化问题抽象成logistic loss function并使用L-BFGS进行优化。

目前使用 BP(反向传播,Back Propagation) 算法来训练多层感知器,BP 算法的学习目的是对网络的连接权值进行调整,使得调整后的网络对任一输入都能得到所期望的输出。BP 算法名称里的反向传播指的是该算法在训练网络的过程中逐层反向传递误差,逐一修改神经元间的连接权值,以使网络对输入信息经过计算后所得到的输出能达到期望的误差。

MLPC算法在机器视觉,金融风险分析以及其他科学领域有很多应用。在焊接机器人的Eye-in-Hand视觉系统,基于机器视觉的焊接工件自动化识别与分类算法,就是以高斯混合模型、多层感知神经网络和支持向量机分类器为基础的。根据工件特征,提取区域面积、凸性、圆度、小孔数目、外接圆面积比等几何特征和几何距作为分类器的训练数据输入量,完成分类器的训练后,能对不同焊接工件进行分类和识别。金融风险分析中,有研究采用多层感知器神经网络算法为基础,对某小贷公司的小微企业信贷数据库中的信贷记录进行了信贷评估,并将该结果与决策向量机、线性判别、二次判别和逻辑回归等数据挖掘方法进行了比较。分析结果表明,从总体上看,多重感知器神经网络算法优于传统的基于参数的分类方法,即多层感知器神经网络算法表现最为出色,可以作为金融机构进行小微信贷风险评估的辅助决策模型。


算法介绍

多层感知器的基本程序:

1)非线性映射:足够多样本->学习训练、能学习和存储大量输入-输出模式映射关系。只要能提供足够多的样本模式对供BP网络进行学习训练,它便能完成由n维输入空间到m维输出空间的非线性映射。

2)泛化:输入新样本->完成正确的输入、输出映射

3)容错:个别样本误差不能左右对权矩阵的调整。

BP神经网络算法是在BP神经网络现有算法的基础上提出的,是通过任意选定一组权值,将给定的目标输出直接作为线性方程的代数和来建立线性方程组的算法。

BP算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传人,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始地进行的。权值不断调整的过程,也就是网络的学习训练过程。此过程一直进行到网络输出的误差减少到可接受的程度,或进行到预先设定的学习次数为止。

BP算法流程如下:

a) 向传播:给各连接权值分别赋一个区间(-1,1)内的随机数,选择一个数据输入,从第一层开始,计算每一层输出am (m = 0, 1, 2, …, M-1)并保存各层输出。

b) 反向传播:计算最后一层输出和目标输出的差e = t – a ,并根据公式s= -2FM(nM)(t-a)计算最后一层的敏感性SM,其中为网络的第M层输出函数对净输入n求导,最后一层为线性函数,求导为1。按照公式计算前一层的敏感性,直到第一层,其中FM(nM)为第m层到m-1层的权值。

c) 调整权值:可以从第一层开始,也可以从最后一层开始进行调权,可按照下公式调节权值:


d) 选择下一个输入,继续上面的过程,直到网络收敛为止。

BP算法实际上是一种简单的最速下降静态寻优算法,在修正W(k)时,只是按照k时刻的负梯度方式进行修正,而没有考虑到以前积累的经验,即以前时刻的梯度方向,从而使学习过程发生振荡,收敛缓慢。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论