超限学习机 (Extreme Learning Machine, ELM) 学习笔记 (一)
1. ELM 是什么
ELM的个人理解: 单隐层的前馈人工神经网络,特别之处在于训练权值的算法: 在单隐层的前馈神经网络中,输入层到隐藏层的权值根据某种分布随机赋予,当我们有了输入层到隐藏层的权值之后,可以根据最小二乘法得到隐藏层到输出层的权值,这也就是ELM的训练模型过程。
与BP算法不同,BP算法(后向传播算法),输入层到隐藏层的权值,和隐藏层到输出层的权值全部需要迭代求解(梯度下降法)
用一张老图来说明,也就是说上图中的Wi1,Wi2,Wi3 在超限学习机中,是随机的,固定的,不需要迭代求解的。我们的目标只需要求解从隐藏层到输出层的权值。毫无疑问,相对于BP算法,训练速度大大提高了。
2. ELM 的训练过程
在上述公式中,wi 表示输入层到隐藏层的权值, bi表示系统偏置(bias),ß 则是我们的目标:隐藏层到输出层的权值,N 表示训练集的大小,oj 表示分类结果。为了无限逼近训练数据的真实结果,我们希望分类结果与真实结果t一致,那么也就是所以上式可以表示为 (懒了,不想用公式编辑器,TAT)
用矩阵表示,则
其中N 表示训练集的大小,N~ 表示隐藏层结点的数量,g(x)表示active function(激活函数?),g(x)要求无限可微。
怎么求解这个方程就成为了ELM的训练过程,恩。
求解方法:1. 传统的梯度下降法 (不说了,就是BP算法)
2. LS 最小二乘法方法
目标:最小化误差
根据 Hß = T, 如果H 是一个方阵的话,ß可以直接求解为H-1T。
如果H不是, 最小误差的ß 为 ,其中H+ 为H的Moore-Penrose 广义逆。
先写到这里了,基本训练过程已经搞清楚了,可是一个这么简单的算法为什么可以work,还有待研究。。。
最新文章
- Missing Push Notification Entitlement 问题
- Mac 下使用homebrew 安装node后全局安装找不到问题
- 浅谈ScrollView嵌套ListView及ListView嵌套的高度计算
- 原创jquery插件treeTable(转)
- Java——其他容器
- 《精通移动app测试实战:技术、工具和案例》新书上市
- JS判断是不是本页面并且,给标签添加属性和属性值
- CF380C Sereja and Brackets [想法+线段树]
- 《第一行代码》学习笔记2-Android开发特色
- WebService 调用三种方法
- sqlserver学习_01
- FFMPEG结构体分析:AVStream
- linux基础命令--groupadd 创建新的群组
- js操作css样式,null和undefined的区别?
- java06作业归档
- 国内常用的几个NTP时间服务器
- Java基础实践一:for关键字的实现原理
- android下载网络图片并缓存
- iOS - 抖音效果
- javascript 正则(将数字转化为三位分隔的样式)【转】
热门文章
- Define Custom Data Filter Using Pre-Query Trigger In Oracle Forms
- api 接口开发理论 在php中调用接口以及编写接口
- EasyMvc入门教程-高级控件说明(16)信息框控件
- 好工具MyEclise2016 CI下载
- MySQL binlog-do-db选项是危险的[转]
- 防止vue组件渲染不更新
- 网站添加ico图标
- Python Flask 在Sina App Engine (SAE)上安家
- Spring学习十一----------Bean的配置之基于Java的容器注解@Bean
- spring-web中的StringHttpMessageConverter简介