极限学习机(Extreme Learning Machine)被认为是有史以来最牛的神经网络发明之一,甚至有一个专门研究极限学习机神经网络结构的会议。

极限学习机的支持者认为,极限学习机可以在训练实例很少的情况下,以指数级的速度完成标准任务。另一方面,它在机器学习领域的影响力并不大,它还受到了许多深度学习专家批评,其中包括Yann LeCun,他认为它得到的宣传和信誉远远超过了应得的。

极限学习机体系结构由两层组成:第一个是随机初始化并且不可更改的,而第二个是可训练的。实际上,网络随机地将数据投影到一个新的空间,并执行一次多重回归(当然,然后将其通过输出激活函数传递)。

随机投影需要一种降维或增维方法,它将随机矩阵乘以输入,尽管这个想法听起来很奇怪,但从战略分布中随机抽取实际上可以很好地运行(我们稍后将通过直观的类比看到)。它采用随机失真的方式,如果操作准确,可以让网络的其余部分适应,打开学习的大门。

事实上,正是由于这种随机性,极限学习机在隐含层节点相对较小的情况下,具有万能逼近定理。

随机投影的概念早在神经网络发展的领域就已经被探讨过了,在20世纪80年代和90年代,当时,有一种观点认为极限学习机并不是什么新鲜事物;只不过是新瓶装旧酒罢了。许多其他架构,如回响状态机和液态状态机,也利用了随机跳转连接和其他随机源。

然而,极限学习机和其他神经网络结构最大的不同可能是它不使用反向传播。相反,由于网络可训练的那一半只是一个简单的多元回归,所以参数的训练方法与回归中拟合系数的方法大致相同,这代表了神经网络训练方式的根本转变。

自从传统的人工神经网络诞生以来,几乎每一个神经网络都是通过迭代更新来优化的。这种方法已经存在了很长时间,人们必须假设它在被多次尝试和测试后已经是最好的方法,但研究人员承认标准的反向传播存在很多问题,比如训练速度非常慢,或者陷入非常诱人的局部极小值。

另一方面,极限学习机使用了一个更加数学化的公式来设置权重,而且无需深入数学计算,我们可以考虑使用随机层来补偿更多计算上昂贵的细节,否则它将被替换。如果奏效的话,从技术上讲,这个大获成功的“Droupout层”是一种随机的投射。

由于极限学习机同时采用了随机性和无反向传播算法,它们的训练速度比标准的神经网络要快得多。

再者,它们是否表现得更好又是另一个问题。

图源:UNSPLASH

人们可以说,极限学习机比标准更反映出人类如何学习神经网络,仅仅几个例子就能很快解决简单的任务,但迭代神经网络需要通过运行,并且至少得有成千上万的样品被推广和执行才可以。

与机器相比,人类可能有自己的弱点,但他们在学习与示例比率(示例是指他们接触到的训练示例的数量)方面的巨大优势使我们真正变得聪明。

极限学习机的概念非常简单,简单到有些人可能会说它愚蠢。Yann LeCun是很伟大的计算机科学家和深度学习领军人,他宣称随机连接第一层是你可以做的最愚蠢的事,他列举了更先进的方法来非线性地变换矢量维数,例如SVM中使用的核方法,该方法通过反向传播定位进一步加强。

LeCun认为,极限学习机本质上是一个支持向量机,而它的转换核更差;极限学习机能够解决的问题范围有限,使用支持向量机可能会更好地建模。唯一的反驳观点是使用随机核而不是专用核的计算效率,因为支持向量机是出了名的高功率模型;而极限学习机可能造成的性能降低是否值得,这还有待讨论。

比较极限学习机和SVMs的一种方法

然而,不管是不是极限学习机,我们得到的经验就是在简单的神经网络和其他模型中使用随机投影或过滤器,在各种现在被认为是简单的标准训练任务中,如MNIST,能显示出惊人的效果。

虽然性能不是顶级的,但事实上,此经过严格审查并且其概念近乎荒谬的架构可以在最新的神经网络在排行榜上独占鳌头。此外,它具有更轻量级的架构和指数较小的计算费用,很多人对此感兴趣。

为什么使用随机固定连接器?

这是一个重要的问题:如果极限学习机的性能与普通的backprop-NN网络一样好(甚至更好),则可以使其中的随机连接起作用。虽然它的数学原理并不直观,但《极限学习机》原稿的作者Guang Bin-Huang用一个寓言来说明了这个概念。

你想用石头填充一个湖,直到得到一个用石头填充的水平表面,你可以看到空湖的底部,它是一个曲线(表示数据的函数)。工程师仔细地计算了湖泊的大小,填湖的石头的大小,以及在优化任务中过多地发挥作用的其他小因素。

把石头填到湖里,这是一项虽然不好但还可以接受的工作

与此同时,农村的农民炸毁了附近的山,开始扔或推掉掉到湖里的石头。当农村的农民捡起一块石头(隐藏层节点),他不需要知道湖的大小或石头的大小,他只是随意向四处扔石头。如果一个区域的岩石开始堆积在地表之上,农民就会拿起锤子砸碎它(各种参数正则化),抚平地表。

当工程师还在计算岩石的高度、体积和湖的形状时,农民已经填满了湖。对农夫来说,扔多少石头并不重要,他的动作只会更快。

虽然把这个比喻直接应用不同的场景中不总是恰当,但这能直观地解释极限学习机的性质和在随机模型中所起的作用。极限学习机的精华之处就在于天真并不总是一件坏事:更简单的解决方案可以更好地解决不那么复杂的问题。

关键点:

  • 极限学习机使用一种固定的、随机的第一层和可训练的第二层。这基本上是一个随机的预测,接着是多重回归。
  • 支持者认为极限学习机能够很快在简单的情况下学会用很少的例子来学习,程序的优点是很简单并且没有需要选择参数的负担,如架构,优化,和损失。另一方面,反对者认为,SVM会更适用于这种场景,极限学习机不适合更复杂的问题,它只是在重塑一个非常古老的想法。
  • 极限学习机通常不能很好地执行复杂的任务,但是它可以很好地执行简单的任务,这可以作为一个很好的理由来探索轻量级架构、非反向传播模型拟合和随机投影的世界。

你怎么看待极限学习机呢?

图源: MEDIUM

参考文献:https://towardsdatascience.com/some-call-it-genius-others-call-it-stupid-the-most-controversial-neural-network-ever-created-2224ed22795a

争议最大的神经网络:绝顶聪明or傻透顶了 ?相关推荐

  1. 深度学习 | BN层原理浅谈

    深度学习 | BN层原理浅谈 文章目录 深度学习 | BN层原理浅谈 一. 背景 二. BN层作用 三. 计算原理 四. 注意事项 为什么BN层一般用在线性层和卷积层的后面,而不是放在激活函数后 为什 ...

  2. 大一上:英语复习:Word in use(新视野大学英语读写教程1:第一、三、四、六单元翻译+注释)【四大人工智能翻译辅助系统助力翻译更准确】

    文档下载地址:https://pan.baidu.com/s/1qYDT6rU Word  in  use Unit  1 A 1.Given  the  chance to  show  his  ...

  3. 大型神经网络可能初具意识:OpenAI首席科学家引争议,众大佬吵成一团

    边策 萧箫 发自 凹非寺 量子位 | 公众号 QbitAI "今天的大型神经网络可能已经初具意识了." OpenAI首席科学家Ilya Sutskever在Twitter上撂下这句 ...

  4. 猴子?狒狒?傻傻分不清楚——制作tfrecord数据集并利用卷积神经网络训练实例

    去年年底学习了深度学习的相关知识,但是寒假回来之后忘得也差不多了...为了巩固下所学知识,近期利用卷积神经网络做了一个小实例.卷积神经网络是一种多层神经网络,擅长处理图像特别是大图像的相关机器学习问题 ...

  5. 人工智能、神经网络、深度学习、机器学习傻傻分不清?来看看AI奠基人的解答!...

    文章发布于公号[数智物语] (ID:decision_engine),关注公号不错过每一篇干货. 数智物语(公众号ID:decision_engine)出品 策划.编写:卷毛雅各布 数智物语本期推荐书 ...

  6. 人工智能、神经网络、深度学习、机器学习傻傻分不清?来看看AI奠基人的解答!

    文章发布于公号[数智物语] (ID:decision_engine),关注公号不错过每一篇干货. 数智物语(公众号ID:decision_engine)出品 策划.编写:卷毛雅各布 数智物语本期推荐书 ...

  7. 神经网络入门经典书籍,人工神经网络书籍推荐

    能推荐几本学习人工神经网络的经典教材吗? . <模式识别与机器学习>[加]SimonHaykin<神经网络与模式识别>[加]SimonHaykin(原<神经网络原理> ...

  8. 神经网络入门经典书籍,神经网络的书籍推荐

    有没有好理解的关于神经网络的书推荐 肯定是matlab用的神经网络设计了,通俗易懂,很多实例!!戴葵翻译的美国经典神经网络<神经网络设计>神经网络概念非常简单(如果是科班出身),看一个下午 ...

  9. 大话卷积神经网络CNN,小白也能看懂的深度学习算法教程,全程干货建议收藏!...

    来源 | 程序员管小亮 本文创作的主要目的,是对时下最火最流行的深度学习算法的基础知识做一个简介,作者看过许多教程,感觉对小白不是特别友好,尤其是在踩过好多坑之后,于是便有了写这篇文章的想法. 由于文 ...

最新文章

  1. idea maven中的profiles是干什么的
  2. Shell——常用工具(cut、sed、awk、sort)
  3. 深度学习基础知识介绍
  4. Scala学习(一)--Scala基础学习
  5. Linux下日志分析的几个常用命令
  6. 汇编程序的编辑、编译、连接与执行(附带DOSBox安装)
  7. 谁的世界,哪一个梦想?
  8. Jenkins持续集成案例之-运维部署方式
  9. java判断题及答案_Java面试题及解析(判断题)
  10. twig模板基本学习
  11. 我的Android进阶之旅------Android ListView优化详解
  12. python基本规则语法
  13. maxon电机中文名_MAXON电机完全手册(全系列).pdf
  14. cactiez v11使用配置mysql_安装cactiez v11对windows和linux系统进行监控
  15. Stimulsoft Reports报告工具,Stimulsoft创建和构建报告
  16. iOS杂谈15—APP被苹果APPStore拒绝的各种原因
  17. 挑选代表( 招商银行信用卡中心)
  18. 谷歌翻译 无法翻译此网页解决方案
  19. pyqt5制作指示灯
  20. c语言编程格式缺少语句,17个C语言新手编程时常犯的错误及解决方式

热门文章

  1. git bash的安装和配置教程
  2. 线性回归—求解介绍及回归扩展
  3. Unreal Engin_画廊制作笔记 _010给墙画添加灯光
  4. 如何基于知识图谱技术构建现代搜索引擎系统、智能问答系统、智能推荐系统?
  5. C# 将OFD转为PDF
  6. web后台管理系统框架
  7. 使用Charles不能抓取到Ios手机的数据包
  8. 学习臧圩人Java面试题解惑系列总结
  9. 【软考 系统架构设计师】案例分析⑥ Web应用系统架构设计
  10. 跑了这么久,物流机器人怎么还没跑进千家万户?