分享

Extreme learning machine (ELM) 到底怎么样,有没有做的前途?

 pgl147258 2016-01-19

【WeicongLiu的回答(20票)】:

利益相关:我本科时候做过这个,发过两篇ELM的会议,其中一篇被推荐到某不知名SCI期刊。不过读了phd之后就不做了。

我觉得做ELM这些人最大的问题在于:

1. 喜欢把以前SVM上曾经有过的一些idea直接套用。比如加入一些正则项,或者考虑imbalanced dataset,或者ensemble几个ELM,就可以将原算法改头换面发个新paper。因为以前SVM上这类paper太多了,照搬的话就可以写出很多很多类似的paper。大家可以浏览一下ELM历届会议的list,相信会有体会。这样的paper,贡献会比较局限;

2. 很多做ELM的paper直接把ELM用在某回归/分类的应用上,跟SVM比,因为速度快,所以也算是有贡献,所以也就发出来了。不过实际上,这样的贡献还是很有限的,在那些问题上,1秒和0.01秒其实都没啥差别;

3 做实验太喜欢用比较基础的数据集了,比如UCI,Yale B这种。包括之前黄老师他们做的ELM Auto Encoder,用的也只是MNIST数据集;

4 主要贡献大部分都是黄老师他们自己做出来的,其他人的贡献有限。

所以我的感觉是,做ELM可以发paper,但是很难在理论和应用上有突破进展。当然我也只是个普通学生,从我自己的角度回答下,算是抛砖引玉。我本人对黄老师非常尊敬,本科时候数次发邮件向他请教问题,他都非常耐心地给出了详细的解答。

【张明仁的回答(10票)】:

ELM神经网络与传统方法确实区别比较明显。在优化论中,随机性的引入通常有助于增强算法的泛化能力;而ELM神经网络随机化隐含层的做法,虽然大幅提高了运算速度,但却不可避免地造成了 过拟合的隐患。同时,所谓在理论上证明的ELM神经网络的表达能力,也不过是线性方程组的简单结论,从训练上讲与SVM、核回归等方法无本质差异,因此至少在理论上我不认为ELM有什么大的贡献和创新所在。

而在实际效果上讲,ELM与其他ANN、SVM等算法相比事实上在精度上也没有提高,甚至在一些数据上远远糟糕于以上两者;而在ELM表现比较好的数据集上,其精度又与其他算法不明显。这是因为,从理论上讲,ELM的训练精度提高完完全全依赖于隐含节点个数的提升,而ANN和DNN并不是如此(虽然隐含节点个数的提高通常也能提高二者的训练精度);因此ELM在实际应用中,除非是一些结构非常简单的问题,都有着极高的风险。在我自己做过的系统中,我从来不敢完全信任ELM。

至于看到之前有人说调侃DNN,不知道你是否真的懂ELM和DNN。ELM(甚至我们可以考虑多层的ELM,Deep Elm)可以视作是DNN算法中取消预训练、只进行最后一层微调的产物。也就是说,ELM只是DNN的特殊情况;因此这种极端的简化版模型,其模型精准度不可能比DNN更好。ELM为了速度牺牲了太多数据中有意义的模式;即使单从算法简化的角度讲,ELM也绝非那个能找得到精度与速度之精妙平衡点的候选算法。

总的来说,ELM是否有用的一个关键点,是在于看你认为你的数据中Feature Extraction是否必要。如果有意义的Feature显得毫无意义,那么ELM可以派上用场(但同样的,此时其他算法也都可以一试)。如果数据集比较原始,而且Feature Extraction比较重要,那么ELM则很可能会出现较大误差。如今DeepLearning大行其道,关键原因就是机器学习中Feature问题的重要性被一再重视,而否定Feature存在意义的ELM,必定没有什么做的前途。本科生为了水论文的话可以一玩,不要被高大上的名字误导了。

最后还必须指出,最近ELM被其他一些国内学者(我就不点名了)改头换面,以“神经网络权值直接确定法”等名义进行炒作,在国内外各相关期刊中进行发表,还出版了相关专著,其本质相对于ELM毫无创新,却丝毫不提黄老师的先前研究成果。这种做法,甚至比不上Weicong Liu所说的“在ELM基础上套用SVM等思想进行水论文”。我对其表示很厌恶。

【张扬的回答(3票)】:

我做过约2个月将ELM应用于Sequence Labeling的研究,在假定我的实现没有错误(在elm主页上找的代码,并修改过使其支持一些ELM论文中提到的优化)的前提下,ELM在我所研究的问题上的表现是不令人满意的,或更确切地说,在我2个月的各种尝试下,ELM给出的最好结果没有达到我所用过的任何一个其它模型(包括DNN, RNN, SVM等6种模型)的最差结果。同时,我在另一个Regression问题上做过短期的ELM研究,结果同样是ELM在我采用的所有模型中具有最差的表现。

另外,我的一位朋友与我有类似的经历(做的问题不同,对ELM的具体实现也不同)。

不排除是因为我和我朋友的实现都有问题,或ELM恰巧不适用于我们的问题等因素导致以上结果。

【王冲的回答(3票)】:

看到了这个问题,其实也是我心中的疑惑,ELM和现在大热的deep learning之间看上去除了一个浅层,一个是深层网络这个明显的不同之外,内在似乎还有很多不同和联系,他们各自的优势和内在原因是什么。我的一些想法是

1.ELM一个重要思想是随机化,这个思想在machine learning中有很多算法都体现了这种思想,比如random forest,random projection,deep learning

中的dropout,compressive sensing 中的随机感知矩阵都有这种思想的体现,这里面应该有些必然的联系,但是我还没想好在理论上建立数学模型来说明,期待大神指点。本质上来讲,我觉得ELM通过随机化参数构造一个基函数集或者原子集,然后通过最小二乘或其损失函数来选择这些这些基函数进而拟合目标,这里面其实跟sparsing learning,和random forest的随机+选择的结构有异曲同工之妙。偱此,应该有新的坑可以挖一挖。

2.ELM要有好的效果,感觉就是要根据具体的问题设计足够多的基函数。这样,与deep learning相比,有两个不足,一个是不具备特征学习和抽象的能力,二是不具备分布式特征表示的能力。 所以我们应该根据问题特点,设计适合的网络结构,借鉴ELM和deep learning的思想处理。

先说到这里,有时间再来。

以上不成熟的想法,期待各位大神,黄老师他们指正。

【李丕绩的回答(2票)】:

最近闲下来又看了点ELM方面的资料,关于ELM在reddit有一些讨论:Downsides to Extreme Learning Machines? : MachineLearning,几乎所与人都会有疑问:这么简单的东西怎么会work?如果真的work,为什么没有广泛应用?

为什么会有这样的疑问?

原因无他,ELM几乎就是使用最小二乘进行求解,从输入层到隐藏层权值随机分配,不进行更新;隐藏层到输出层的权值通过最小二乘得到。在输入到隐藏层的映射关系由于使用sigmoid(或者其他变换)已经变成了非线性(而且黄老师也在理论上证明了这种方法是可行的,当然貌似需要样本数要远大于hiden nodes),似乎这样是可以描述从输入到输出的某种特殊的映射关系(通常这种映射是非常复杂的非线性映射)。但是通过解一个非常简单的线性问题把一些超级复杂的非线性关系表达出来,这从直觉上很难接受。

另外ELM并没有拿出令人信服的实验,很多论文都是在一些toy数据集上做,原因并非是对大数据不自信,而是ELM由于不使用迭代求解,所有数据需要一起计算,数据量一旦大起来,肯定会out of memory...这自然也成为被诟病的地方(现在有没有好的解决办法,我不太清楚)。

在数据量越来越庞大,DL的训练越来越拼硬件和时间的今天,ELM实际令人眼前一亮,超快的训练,不错的泛化能力,都是很明显的优势,以后有没有做的潜力,需要踏实做下去才能发现。

踏实科研,自勉~

【劉勤的回答(8票)】:

有没有前途,看哪些人在做,做得怎么样吧。

新浪@黄广斌-ELM 本人开了微博,对ELM算是一个宣传。最近进展除了每年的ELM会议以外,可以参见最近两年IEEE Intelligent System,IEEE Computational Intelligence Magaizne上有关ELM专刊,应该说精彩的内容不少,有很多新的应用出现。

对于爱丽丝欣的质疑,建议看一下JMLR paper中在广阔的数据集上(真的很广阔,感觉是体力活)比较全面地比较了各种分类器,包括ELM,评价比较中肯:

http://jmlr.org/papers/v15/delgado14a.html

有一个疑问可能经常被问起就是,如果够牛掰,为何不在机器学习的顶级会议如ICML,NIPS上,顶级期刊PAMI上见到与此相关的内容(JMLR上有了)?个人看法,这个没什么,一个会议有它一定的偏好,顶级会议尤为如此。Hinton老爷爷专门吐槽过NIPS不接收深度神经网络方面的文章可能是数学味不够。真正NIPS上有DNN是因为它势不可挡了,数学偏好也(暂时)靠边了。这可能是另外一个重要会议诞生的因素,叫做ICLR。ELM办自己的会议,但整体水准上没办法跟这些顶会相比,一方面是ELM本身现在还没有太大突破,另一方面是灌水太多啊。

如Weicong Liu所说,除黄老师组外,其他人贡献有限,这是事实。谁叫它从形式上很简单呢,很难从本质上上有所改进,会不会是shallow model的极限也不好说。从learning model的演化来看,LR,three layer NN,SVM都可以归为shallow model,ELM从速度和精度上在这些model里表现很好,不知道能否再突破。过了shallow model,现在已然是deep model大行其道的时候了,再在原来那些算法上搞搞benchmarks肯定是不行了。开发一个算法,太脱离实际背景,仅仅是比较它在各种benchmarks上的各种性能指标超出前辈,这种做法,不管是不是基于ELM或NN,都很难讲会不会成为以后的标配,得到广泛的认可。因为时代在变,我们也要跟着变。

还有人说ELM跟DNN比较时用的是MNIST,so naive,为什么不用DNN中用得很多的CIFAR10,Caltech 图片数据集?我的体会是,这些图片直接vectorization后接上任何分类器都很差,DNN表现好的很重要的一个因素归功于feature transformation,尤其是第一步convolution and pooling,这个步骤对图像本质刻画很深刻,不是简单vectorization能比的。ELM只是一个分类器,不要苛求它做除分类之外的事情。下次用图片时,经过conv和pool之后再接上ELM试试吧。

至于ELM的快,我认为它不仅仅是一个区别于其他算法的一个简单属性,而是有望取得突破的一个点,快了之后可以改变很多事情,例如实时应用。虽然精度上不占优,但速度上的显著提升在这个实际问题中更为重要,谁能忍受慢而准的交互系统呢?期待有人能做出killer app出来。

我尊敬一切从科学角度上看问题并深入研究的人。

【郭沐宏的回答(2票)】:

ELM还是很好用的,特别是在数据量比较大的时候。我在做研究的时候,特别是高维数据的分类的时候,用传统的CNN训练时间过长,用ELM的时候明显很快就达到了需要的效果。建议大家结合自己的领域知识好好设计ELM的网络结构。黄老师的主页和微博上有很多资料,可以做参考:)

关于toy数据集的问题,这个主要看用ELM做paper时作者有无领域知识,比如做专门做machie learning的人可能用一些经典的数据库说明算法即可,不大可能用特别多的比如CV领域的很专门的数据库来进行大规模的比较。这方面有待做ELM的CV界的朋友们一起来做。在我所在组的专业领域,我们做的几篇用ELM的文章都跟最好的结果持平或者超过这些结果。相信更多的例子会在今年以及以后发表出来的文章中得到验证。当然ELM也不是能够解决所有所有的问题,能够与其他经典机器学习模型比如图模型、bayesian等等结合,取长补短,再结合领域知识,也许才是正确的研究之道吧。

科研最好不要有太多的先入之见,以科学的精神、包容的精神和持续不断的努力,才能在科研之路走得越好。。。

【郑武的回答(0票)】:

本质上来讲,我觉得ELM通过随机化参数构造一个基函数集或者原子集

【杨小兵的回答(0票)】:

refer to:

深度学习(deep learning)和极限学习机(extreme learning machine)的区别和联系之处? - 机器学习

原文地址:知乎

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多