ELM的算法及伪代码

时间:2021-08-01 06:41:42

一、ELM算法及其数学模型(也称极限学习机) 目的:高效的特征提取+高准确率分类器设计;监督型学习算法 

(一)背景:神经网络一直是模式识别、系统辨识的重要工具。传统的前馈神经网络有:BP、RBF等。

           (1) 一种基于单层前向馈神经网络(SLFN)简单易用、有效的学习算法。

            (2)只需要设置网络的隐藏节点个数,在算法执行过程中不需要调整网络的输入权重W以及隐元的偏置b,并且产生唯一的最优解

          (3)该算法具有训练参数少、速度非常快等优点

           ***(4)黄广斌对SLFN的研究中指出:对于有限的数据训练集,一个具有N个节点、在任意区间无限可导的激励函数g(x)的SLFN神经网络,能够以零误差逼近任意的线性和非线性函数。

(5)SLFN被简化成了一个线性系统,即ELM.

(6)ELM依然具有良好的泛化能力,并且比BP神经网络、支持矢量机有更快的学习速度和逼近能力。

、输入样本文本

1、现有P组样本,每组样本有N列输出,xi[xi1,xi2,...,xin](i 1,2,...P),

    M列目标输出,表示为ti[ti1,ti2,...,tim],(i  1,2,...,P),对应神经网络的N个输入节点和M个输出节点。

2、

三、目的

     (1)极限学习机的本质上就是SLFN,其训练值是使神经网络的输出Y 尽可能逼近样本的目标输出T。为了达到这一效果,如果激励函数g(x)无限可导,则用样本输入和目标输出求出B就能够满足ELM以极小误差逼近目标输出的要求。

      (2)对ELM的输入权值向量Wij和隐含层节点阈值bj进行随机赋值,完成初始化。

             计算隐含层输出矩阵H,计算输出权值矩阵B=H+*T,即完成了ELM神经网络的建立与初始化。

四、各个变量向量的理论大小

(1)一般情况下H为行满秩矩阵(秩=行数)B=Hn*T;Y=H*B;

(2)L=行-1;%为隐含层个数,%接近输入样本长度,理论越接近效果越好;W(L,列);b(1,L)