Extreme Learning Machine
Extreme Learning Machine
作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/
1. ELM
2004年南洋理工大学黄广斌提出了ELM算法。极限学习机(ELM Extreme Learning Machine)是一种快速的的单隐层前馈神经网络(SLFN)训练算法。
该算法的特点是在网络参数的确定过程中,隐层节点参数(a,b)随机选取,在训练过程中无需调节,只需要设置隐含层神经元的个数,便可以获得唯一的最优解;而网络的外权(即输出权值)是通过最小化平方损失函数得到的最小二乘解(最终化归成求解一个矩阵的 Moore-Penrose 广义逆问题).这样网络参数的确定过程中无需任何迭代步骤,从而大大降低了网络参数的调节时间。与传统的训练方法相比,该方法具有学习速度快、泛化性能好等优点。


2. H-ELM
Hierarchical Extreme Learning Machine (H-ELM)是2015年提出的一个ELM的改进算法。分为两个阶段:
1. 非监督式的特征编码。在第一阶段,基于ELM的稀疏自编码器被设计用来从输入数据中抽取多层的稀疏特征。通过逐层自编码获得每层的权重矩阵,权重确定后,无需微调。
2. 监督式的特征分类。在第二阶段,第一阶段获得的高层次特征(维度可能比原始数据大)将被一个随机矩阵打散,将打散后的数据作为原始ELM的输入,最后用原始ELM来解决分类或者回归问题。
与ELM的区别在于自编码阶段,权重矩阵的惩罚项用的是L1范数,参数的更新公式用Fast Iterative Shrinkage-thresholding (FISTA)求解,而ELM的权重惩罚项用的L2范数,用岭回归求解。



3. RVFL
Random Vector Functional-link Network (RVFL)算法是1994年提出的算法,与ELM相比,它增加了从输入层到输出层的连接权重。输入层到隐层的权重与隐层的偏置还是随机赋权,只有输入层到输出层与隐层到输出层的权重需要用最小二乘法或者其他方法求解。

4. 参考
[1] ELM官方网址:Extreme Learning Machines
[2] Huang G B, Zhu Q Y, Siew C K. Extreme learning machine: theory and applications[J]. Neurocomputing, 2006, 70(1-3): 489-501.
[4] 论战Yann LeCun:谁能解释极限学习机(ELM)牛X在哪里?
[5] Tang J, Deng C, Huang G B. Extreme learning machine for multilayer perceptron[J]. IEEE transactions on neural networks and learning systems, 2015, 27(4): 809-821.
[6] Pao Y H, Park G H, Sobajic D J. Learning and generalization characteristics of the random vector functional-link net[J]. Neurocomputing, 1994, 6(2): 163-180.
[7] 伪逆总结 - CSDN
[8] 对ELM的质疑:Extreme Learning Machine: Duplicates Others' Papers from 1988-2007
[9] 王常飞. 融合分层极限学习机算法研究[D]. 湘潭大学, 2018.
[10] 软阈值迭代算法(ISTA)和快速软阈值迭代算法(FISTA)
Extreme Learning Machine的更多相关文章
- paper 102:极限学习机(Extreme Learning Machine)
原文地址:http://blog.csdn.net/google19890102/article/details/18222103 极限学习机(Extreme Learning Machine) ...
- Extreme Learning Machine(ELM)的工程哲学
Extreme Learning Machine(ELM)的工程哲学 David_Wang2015 发布于2015年5月6日 11:29 工程问题往往需要的是一定精度范围内的结果,而不是“真正的”结果 ...
- 使用Cross-validation (CV) 调整Extreme learning Machine (ELM) 最优参数的实现(matlab)
ELM算法模型是最近几年得到广泛重视的模型,它不同于现在广为火热的DNN. ELM使用传统的三层神经网络,只包含一个隐含层,但又不同于传统的神经网络.ELM是一种简单易用.有效的单隐层前馈神经网络SL ...
- Extreme Learning Machine 翻译
本文是作者这几天翻译的一篇经典的ELM文章,是第一稿,所以有很多错误以及不足之处. 另外由于此编辑器不支持MathType所以好多公式没有显示出来,原稿是word文档. 联系:250101249@qq ...
- 超限学习机 (Extreme Learning Machine, ELM) 学习笔记 (一)
1. ELM 是什么 ELM的个人理解: 单隐层的前馈人工神经网络,特别之处在于训练权值的算法: 在单隐层的前馈神经网络中,输入层到隐藏层的权值根据某种分布随机赋予,当我们有了输入层到隐藏层的权值之后 ...
- 极限学习机(Extreme Learning Machine)学习笔记
最近研究上了这个一个东西--极限学习机. 在很多问题中,我大多会碰到两个问题,一个是分类,另一个就是回归.简单来说,分类是给一串数打个标签,回归是把一串数变为一个数. 在这里我们需要处理的数据一般维度 ...
- The Brain as a Universal Learning Machine
The Brain as a Universal Learning Machine This article presents an emerging architectural hypothesis ...
- (原创)Stanford Machine Learning (by Andrew NG) --- (week 6) Advice for Applying Machine Learning & Machine Learning System Design
(1) Advice for applying machine learning Deciding what to try next 现在我们已学习了线性回归.逻辑回归.神经网络等机器学习算法,接下来 ...
- (转) Deep learning architecture diagrams
FastML Machine learning made easy RSS Home Contents Popular Links Backgrounds About Deep learning ar ...
随机推荐
- Debug使用
目录 Debug使用 Debug使用
- 自己用C语言写NXP S32K116 serial bootloader
了解更多关于bootloader 的C语言实现,请加我QQ: 1273623966 (验证信息请填 bootloader),欢迎咨询或定制bootloader(在线升级程序). 每次我有了新的EVA ...
- 详解Net Core Web Api项目与在NginX下发布
前言 本文将介绍Net Core的一些基础知识和如何NginX下发布Net Core的WebApi项目. 测试环境 操作系统:windows 10 开发工具:visual studio 2019 框架 ...
- 0x01 C语言-编写第一个hello world
学习每一个编程语言都是从 "Hello world!" 开始的,这好像就是编程界一条不成文的规定一样. 在这篇文章中,我将教大家编写一个可以输出 "Hello world ...
- 装饰器(Python)
装饰器(decorators)是 Python 的一个重要部分.简单地说:装饰器是修改其他函数的功能的函数,能让我们的代码更容易被扩展,更加简短.举个例子: def login(): print(&q ...
- JavaScript对象模型概念
1.对象的概念 JavaScript只有函数对象才有类的概念,因此创建一个对象,必须使用函数对象.(ES6中可以直接声明一个class,实质上也是一个函数对象). 函数对象的内部有[[Construc ...
- Markdown语法,及其在typora中的快捷键,学写博客吧!!!
前言 Markdown (MD) 是现在最流行的一种文档书写语言格式.平常写笔记,写博客,写计划再好不过了.个人觉得使用很简单,右击鼠标,有你想要的操作. Typora是简洁.操作简单.功能强大.方便 ...
- 9.16java总结
枚举 EnunTest.java 运行结果 falsefalsetrueSMALLMEDIUMLARGE 枚举类型可以直接用==来判断是否相等,即代表数据串,又有数的属性.是引用类型. 浮点数计算 ...
- 服务器控件Repeater
在使用aspx开发中,如果一个页面做纯数据展示,Repeater会比GridView更适合,因为它是轻量级的 下面是最基本的用法: aspx: <table> <asp:Repea ...
- .net core 3.0+unit of work (一)
1.先将unit of work源码下载 2.引入自己的项目 3.根据原始项目示意在自己项目的startup里注册仓储 由于我不想对每个实体都注册一遍,我使用了泛型仓储(core 2.0好像不支持) ...