极限学习机 Extreme Learning Machines 介绍
什么是极限学习机?
极限学习机(ELM, Extreme Learning Machines)是一种前馈神经网络,最早由新加坡南洋理工大学黄广斌教授于2006年提出。其发表的文章中对于极限学习机的描述如下:
该算法具有良好的泛化性能以及极快的学习能力
极限学习机和标准神经网络的区别
ELM 不需要基于梯度的反向传播来调整权重,而是通过 Moore-Penrose generalized inverse来设置权值。
标准的单隐藏层神经网络结构如下:
单隐藏层神经网络
其计算过程如下:
- 输入值乘以权重值
- 加上偏置值
- 进行激活函数计算
- 对每一层重复步骤1~3
- 计算输出值
- 误差反向传播
- 重复步骤1~6
而 ELM 则对其进行了如下改进:去除步骤4;用一次矩阵逆运算替代步骤6;去除步骤7。
极限学习机计算过程
具体地,ELM 计算过程如下:
式中:
L 是隐藏单元的数量;
N 是训练样本的数量;
beta 是第 i 个隐藏层和输出之间的权重向量;
w 是输入和输出之间的权重向量;
g 是激活函数;
b 是偏置向量;
x 是输入向量。
极限学习机的计算过程与标准反向传播神经网络十分类似,但是隐藏层与输出之间的权重矩阵是伪逆矩阵。
将上式可以简写为:
式中:
m 是输出的数量;
H 是隐藏层输出矩阵;
T 是训练集目标矩阵;
ELM 主要相关理论
定理一:
定理二:
定理三:
了解了上述定理后,现在我们要做的是定义我们的代价函数。如果输入权重和隐层层偏差可以随机选择,那么SLFN是一个线性系统。
由于我们考虑的 ELM 是一个线性系统,那么可以设计优化函数:
由于 H 是可逆的,所以计算如下:
ELM 算法
ELM 算法主要过程有:
- w_i,b_i,i=1,L 随机初始化
- 计算隐藏层输出 H
- 计算输出权重矩阵[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gJKy7Hb8-1591837856202)(p6.png)]
- 利用 beta 在新的数据集上进行预测 T
Python 应用案例见https://github.com/burnpiro/elm-pure
其中,基础的 ELM 算法就能够在 MNIST 数据集达到 91%以上的准确率,并且在 intel i7 7820X CPU 平台上通过 3s 就能够计算完成。
性能对比
首次提出 ELM 的论文中,于2006年通过 Pentium 4 1.9GHz CPU 用 ELM 方法对不同的数据集进行了计算,结果如下:
很明显梯度下降比矩阵反转需要更长的训练时间。此结果表中最重要的信息是准确性和节点数。在前两个数据集中,可以看到作者使用了不同大小的BP来获得与ELM相同的结果。在第一种情况下,BP网络的大小是原来的5倍,在第二种情况下,BP网络的大小是原来的2倍。也说明了 ELM 方法在逼近数据集时有很高的精确性。
本文也对两个具有代表性的数据集(CIFAR-10, MNIST)进行了分析,结果如下:
总结
ELM 算法虽然没有传统神经网络的准确度高,但是可以被用于需要即时计算的场景中。
极限学习机 Extreme Learning Machines 介绍相关推荐
- 极限学习机(Extreme Learning Machine)ELM
二.ELM 1.算法介绍及功能 极限学习机(Extreme Learning Machine) ELM是一种针对单隐含层前馈神经网络(Single-hiddenLayerFeedforwardNeur ...
- MATLAB机器学习系列-8 极限学习机(Extreme Learning Machine, ELM)原理及其代码实现
极限学习机(Extreme Learning Machine, ELM) 极限学习机网络结构和BP网络结构类似. 和BP神经网络不同点: 极限学习机输入层到隐含层的权重W是可以随意指定的.BP神经网络 ...
- 极限学习机(Extreme Learning Machine)概述
摘要 当今研究领域的一项事实就是,前向神经网络(feed-forward neural networks)的训练速度比人们所期望的速度要慢很多.并且,在过去的几十年中,前向神经网络在应用领域存在着很大 ...
- 极限学习机(Extreme Learning Machine, ELM)的训练与预测matlab仿真
目录 1.算法概述 2.仿真效果 3.MATLAB仿真源码 1.算法概述 极限学习机(ELM)是当前一类非常热门的机器学习算法,被用来训练单隐层前馈神经网络(SLFN
- 极限学习机(Extreme Learning Machine)(小白之路)
优秀的博客已经很多了,在这里我粘贴一些对我有帮助的博客,感谢大佬们!(既有原理 也有 一些实现[python 和 matlab]): ①极限学习机(Extreme Learning Machine, ...
- 【UWB】ELM,Extreme Learning Machine 极限学习机
文章目录 例子 1 例子 2 Ref. 例子 1 % 任务2: ELM 网络 % Date: 2021-10-15 % Author: Zhao-Jichao clear clc%% 训练 % 导入数 ...
- 【UWB】ELM 极限学习机原理及公式推导
文章目录 简介 Ref: 关于代码实现请参考:[UWB]ELM,Extreme Learning Machine 极限学习机 简介 极限学习机(Extreme Learning Machine) EL ...
- 【ELM预测】基于粒子群算法改进极限学习机ELM实现数据预测matlab源码
一.极限学习机的概念 极限学习机(Extreme Learning Machine) ELM,是由黄广斌提出来的求解单隐层神经网络的算法. ELM最大的特点是对于传统的神经网络,尤其是单隐层前馈神经网 ...
- 【ELM预测】基于极限学习机ELM实现数据预测matlab源码
一.极限学习机的概念 极限学习机(Extreme Learning Machine) ELM,是由黄广斌提出来的求解单隐层神经网络的算法. ELM最大的特点是对于传统的神经网络,尤其是单隐层前馈神经网 ...
最新文章
- vue根据不同权限显示图片_vue如何实现路由权限控制
- ubuntu安装迅雷软件
- promise和Angular中的 $q, defer
- 3.1.3 覆盖与交换
- jQuery插件scrollToTop 4行代码实现网站回到顶部
- php 匹配div正则表达式,Php正则表达式匹配div
- Android 如何全局获取Context
- R6300V2 从 DD-WRT 回刷恢复 官方原厂固件 DD-WRT to R6300V2
- deepin 下安装xdroid
- Racket编程指南——24 命令行工具和你的编辑器选择
- npm出现UNMET DEPENDENCY的一种情况
- 常见的浏览器指纹包含哪些
- Redis主从复制 AKF
- Gitlab关闭开放注册功能
- IT 大牛们的小传,有点academic风格的说^_^
- Linux第四章:1.Linux关机、重启、休眠、切换用户命令大全
- idea配置logback彩色日志
- 生信格式 | BedGraph(基因组浏览器绘制)
- Vue监听器的基本使用(监听属性-深度监听和立即执行)
- 引进软件国际标准,培养高级软件人才
热门文章
- 华为海思 verilog 笔试准备
- matlab对信号的滤波方法
- springboot项目本地运行无问题,Linux系统报错org.thymeleaf.exceptions.TemplateInputException
- python字典经典例题_Python小白--------基础练习题(列表,元组,字典)
- 怎么将服务器上的文件下载到本地电脑上
- NFA到DFA的转换及DFA的简化
- beyond compare java_文件内容比较工具---Text compare Beyond compare
- C语言的fgets() 与 gets()
- 数据结构复习题(线性表)
- HTML Table之展开收起