感知机模型损失定义:
其中M表示误分类结点的集合;
由于多层感知机算法的局限性,提出了误差逆传播算法即BP算法;(其不仅被用于多层前馈神经网络,也可用于其他神经网络。)
BP算法实现过程
★解决BP算法中过拟合问题:
★全局最小与局部极小
●跳出局部极小方法:(1)以多组不同参数初始化多个神经网络,训练后取其中误差最小的解作为最终参数;即从局部极小选择更可能接近全局最小的结果。(2)使用“模拟退火”技术,在每一步都以一定概率接受比当前结果更差的结果,从而跳出局部极小。(3)随机梯度下降,与标准梯度下降法精确计算梯度不同,随机梯度下降法在计算梯度时加入了随机因素。于是,即便陷入局部极小点,它计算出的梯度仍可能不为零,这样就有机会跳出局部极小继续搜索。
基于Sklearn框架的MLP算法实现:
名称 | 原理 | 网络核心 | 训练过程 | 其他 |
RBF(Radial Basis Fuction--径向基函数)网络 | 一种单隐层前馈神经网络,使用径向基函数作为隐层神经元激活函数,输出层是对隐藏层的线性组合。 | c,w分别为隐层神经元对应的中心和权重 | 1)确定神经元中心c,常用随机采用、聚类等; 2)利用BP算法确定参数w,b; | RBF神经网络具有“局部映射”特性。BP神经网络是对非线性映射的全局逼近 。 |
ART(Adaptive Resonance Theory)自适应谐振网络 | 包含比较层、识别层、识别阈值和重置模块,以竞争学习的方式进行学习;是一种无监督学习过程; |
| ||
SOM(Self-Organizing Map)自组织映射网络 | 一种竞争学习型的无监督神经网络,将高维输入数据映射到低维空间,保持输入数据在高位空间的拓扑(高维空间的相似样本点映射到低维空间中邻近的神经元),将距离小的个体集合划分为同一类别,而将距离大的个体集合划分为不同的类别。 | 1)接受输入:首先计算本次迭代的学习率和学习半径,并且从训练集中随机选取一个样本。 2)寻找获胜节点:计算数据集中其他样本与此样本的距离,从中找到点积最小的获胜节点。 3)计算优胜领域:根据这两个节点计算出聚类的领域,并找出此领域中的所有节点。 4)调整权值:根据学习率、样本数据调整权重。 5)根据计算结果,为数据集分配类别和标签。 6)评估结果:SOM网络属于无监督聚类,输出的结果就是聚类后的标签。如果训练集已经被分好类,即具有分类标签,那么通过新旧标签的比较就可以反映聚类结果的准确度。 | ||
级联相关网络 | 级联相关神经网络是从一个小网络开始,自动训练和添加隐含单元,最终形成一个多层的结构。 | 1)候选神经元连结到所有的输入和隐含神经元(图中的虚线),并且候选神经元的输出不连结到网络上; 2)固定住图中的实线部分,只训练候选神经元的权重(也就是图中的虚线); 3)当权重训练好之后,就将候选神经元安装到图中空白的层上,也就是第四个区域,这时候选项的连接权就不能再改变了; 4)将候选神经元连结到网络的输出上,这时候选神经元被激活,开始训练网络的所有输出连接权; | ||
Elman网络 | Elman是一种动态递归神经网络,包括输入层、隐藏层、承接层和输出层。 |
| ||
Boltzmann(玻尔兹曼机)机 | 是一种基于能量的模型;包括两层:显层和隐层,显层为数据的输入输出,隐层为数据的内在表达; | 通过调整网络权值使训练集中的模式在网络状态中以相同的概率再现。 | 1)正向学习阶段或输入期:即向网络输入一对输入输出模式,将网络输入输出节点的状态钳制到期望的状态,而让隐节点自由活动以捕捉模式对之间的对应规律; 2)反向学习阶段或自由活动期:对于异联想学习,钳制住输入节点而然隐含节点和输出节点自由活动;对于自联想学习,可以让其可见节点和隐节点都自由活动,已体现网络对输入输出对应规律的模拟情况。输入输出的对应规律表现为网络到达热平衡时,相连节点状态同时为一的平均概率。期望对应规律与模拟对应规律之间的差别就表现为两个学习阶段对应的平均概率的差值,此差值做为权值调整的依据。 |
不同神经网络对比参考文献:
ART:https://blog.csdn.net/u013468614/article/details/94751690
SOM: https://blog.csdn.net/jyh_AI/article/details/82024431
级联相关网络: https://blog.csdn.net/xc_xc_xc/article/details/53163478
Elman: https://blog.csdn.net/fengzhimohan/article/details/80847979
Boltzmann机:https://www.cnblogs.com/pythonlearing/p/9978246.html