极限学习机简介
极限学习机是一种简单单层前馈神经网络(SLFN)机器学习学习算法。理论上,极限学习机算法(ELM)倾向于提供良好的性能(学习速度极快)。
与传统的前馈网络学习算法(如反向传播BP算法)不同,ELM不使用基于梯度的技术。使用此方法,所有参数都将进行一次调优。该算法不需要迭代训练。
ELM实现
1.创建随机权重矩阵并为输入层设置偏差。
权重矩阵和偏差的大小为(jxk)和(1 xk),其中j是隐藏节点的数量,k是输入节点的数量。
2.计算隐藏层输出矩阵
初始隐藏层输出矩阵是通过将训练数据X与权重矩阵的转置相乘而得出的
3.选择激活函数
您可以选择所需的任何激活函数。但是在此示例中,我将选择sigmoid激活函数。
4.计算Moore-Penrose伪逆
可以使用几种方法来计算H的Moore-Penrose广义逆。这些方法可以包括但不限于正交投影法,正交化方法,迭代方法和奇异值分解(SVD)。
5.计算输出权重矩阵beta
6.对机器学习测试数据集重复步骤2,创建一个新的H矩阵。之后,创建名为的结果矩阵。
数据
我们将使用sklearn的make_classification机器学习库生成随机分类数据。
模型
模型的Python实现如下:
测试模型
测试模型的Python实现示例如下:
Accuracy: 0.89
我们的模型得出的准确度为0.89。可以通过许多方式来改变模型性能,例如:
激活函数隐藏的神经元数数据是否归一化最后
极限学习机器算法是神经网络中最有效的机器学习算法之一。由于进行了非迭代训练,因此所有参数均被调优一次,这导致较高的训练速度
举报/反馈

不靠谱的猫

563获赞 776粉丝
爱编程,喜欢学习,努力工作,享受生活。
科技领域创作者
关注
0
0
收藏
分享