Extreme learning machines are feedforward neural networks for classification, regression, clustering, sparse approximation, compression and feature learning with a single layer or multiple layers of hidden nodes, where the parameters of hidden nodes (not just the weights connecting inputs to hidden nodes) need not be tuned. These hidden nodes can be randomly assigned and never updated (i.e. they are random projection but with nonlinear transforms), or can be inherited from their ancestors without being changed. In most cases, the output weights of hidden nodes are usually learned in a single step, which essentially amounts to learning a linear model. The name “extreme learning machine” (ELM) was given to such models by its main inventor GuangBin Huang.
According to their creators, these models are able to produce good generalization performance and learn thousands of times faster than networks trained using backpropagation.^{[1]} In literature, it also shows that these models can outperform support vector machines (SVM) and SVM provides suboptimal solutions in both classification and regression applications.^{[2]}^{[3]}^{[4]}
History[edit]
From 20012010, ELM research mainly focused on the unified learning framework for “generalized” singlehidden layer feedforward neural networks (SLFNs), including but not limited to sigmoid networks, RBF networks, threshold networks^{[5]}, trigonometric networks, fuzzy inference systems, Fourier series^{[6]}^{[7]}, Laplacian transform, wavelet networks^{[8]}, etc. One significant achievements made in those years is to successfully prove the universal approximation and classification capabilities of ELM in theory^{[6]}^{[9]}^{[10]}.
From 2010 to 2015, ELM research extended to the unified learning framework for kernel learning, SVM and a few typical feature learning methods such as Principal Component Analysis (PCA) and Nonnegative Matrix Factorization (NMF). It is shown that SVM actually provides suboptimal solutions compared to ELM, and ELM can provide the whitebox kernel mapping, which is implemented by ELM random feature mapping, instead of the blackbox kernel used in SVM. PCA and NMF can be considered as special cases where linear hidden nodes are used in ELM^{[11]}^{[12]}.
From 2015 onwards, an increased focus has been placed on hierarchical implementations^{[13]}^{[14]} of ELM. Additionally since 2011, significant biological studies have been made that support certain ELM theories^{[15]}^{[16]}^{[17]}.
In a recent announcement from Google Scholar: “Classic Papers: Articles That Have Stood The Test of Time“, two ELM papers have been listed in the “Top 10 in Artificial Intelligence for 2006,” taking positions 2 and 7.
Algorithms[edit]
Given a single hidden layer of ELM, suppose that the output function of the
i
{displaystyle i}
th hidden node is
h
i
(
x
)
=
G
(
a
i
,
b
i
,
x
)
{displaystyle h_{i}(mathbf {x} )=G(mathbf {a} _{i},b_{i},mathbf {x} )}
, where
a
i
{displaystyle mathbf {a} _{i}}
and
b
i
{displaystyle b_{i}}
are the parameters of the
i
{displaystyle i}
th hidden node. The output function of the ELM for SLFNs with
L
{displaystyle L}
hidden nodes is:
f
L
(
x
)
=
∑
i
=
1
L
β
i
h
i
(
x
)
{displaystyle f_{L}({bf {x}})=sum _{i=1}^{L}{boldsymbol {beta }}_{i}h_{i}({bf {x}})}
, where
β
i
{displaystyle {boldsymbol {beta }}_{i}}
is the output weight of the
i
{displaystyle i}
th hidden node.
h
(
x
)
=
[
G
(
h
i
(
x
)
,
.
.
.
,
h
L
(
x
)
)
]
{displaystyle mathbf {h} (mathbf {x} )=[G(h_{i}(mathbf {x} ),…,h_{L}(mathbf {x} ))]}
is the hidden layer output mapping of ELM. Given
N
{displaystyle N}
training samples, the hidden layer output matrix
H
{displaystyle mathbf {H} }
of ELM is given as:
H
=
[
h
(
x
1
)
⋮
h
(
x
N
)
]
=
[
G
(
a
1
,
b
1
,
x
1
)
⋯
G
(
a
L
,
b
L
,
x
1
)
⋮
⋮
⋮
G
(
a
1
,
b
1
,
x
N
)
⋯
G
(
a
L
,
b
L
,
x
N
)
]
{displaystyle {bf {H}}=left[{begin{matrix}{bf {h}}({bf {x}}_{1})\vdots \{bf {h}}({bf {x}}_{N})end{matrix}}right]=left[{begin{matrix}G({bf {a}}_{1},b_{1},{bf {x}}_{1})&cdots &G({bf {a}}_{L},b_{L},{bf {x}}_{1})\vdots &vdots &vdots \G({bf {a}}_{1},b_{1},{bf {x}}_{N})&cdots &G({bf {a}}_{L},b_{L},{bf {x}}_{N})end{matrix}}right]}
and
T
{displaystyle mathbf {T} }
is the training data target matrix:
T
=
[
t
1
⋮
t
N
]
{displaystyle {bf {T}}=left[{begin{matrix}{bf {t}}_{1}\vdots \{bf {t}}_{N}end{matrix}}right]}
Generally speaking, ELM is a kind of regularization neural networks but with nontuned hidden layer mappings (formed by either random hidden nodes, kernels or other implementations), its objective function is:
Minimize:
‖
β
‖
p
σ
1
+
C
‖
H
β
−
T
‖
q
σ
2
{displaystyle {text{Minimize: }}{boldsymbol {beta }}_{p}^{sigma _{1}}+C{bf {H}}{boldsymbol {beta }}{bf {T}}_{q}^{sigma _{2}}}
where
σ
1
>
0
,
σ
2
>
0
,
p
,
q
=
0
,
1
2
,
1
,
2
,
⋯
,
+
∞
{displaystyle sigma _{1}>0,sigma _{2}>0,p,q=0,{frac {1}{2}},1,2,cdots ,+infty }
.
Different combinations of
σ
1
{displaystyle sigma _{1}}
,
σ
2
{displaystyle sigma _{2}}
,
p
{displaystyle p}
and
q
{displaystyle q}
can be used and result in different learning algorithms for regression, classification, sparse coding, compression, feature learning and clustering.
As a special case, a simplest ELM training algorithm learns a model of the form (for single hidden layer sigmoid neural networks):

Y
^=
W
2
σ
(W
1
x
){displaystyle mathbf {hat {Y}} =mathbf {W} _{2}sigma (mathbf {W} _{1}x)}
where W_{1} is the matrix of inputtohiddenlayer weights,
σ
{displaystyle sigma }
is an activation function, and W_{2} is the matrix of hiddentooutputlayer weights. The algorithm proceeds as follows:
 Fill W_{1} with random values (e.g, Gaussian random noise);
 estimate W_{2} by leastsquares fit to a matrix of response variables Y, computed using the pseudoinverse ⋅^{+}, given a design matrix X:

W
2
=
σ
(W
1
X
)
+
Y
{displaystyle mathbf {W} _{2}=sigma (mathbf {W} _{1}mathbf {X} )^{+}mathbf {Y} }

Architectures[edit]
In most cases, ELM is used as a single hidden layer feedforward network (SLFN) including but not limited to sigmoid networks, RBF networks, threshold networks, fuzzy inference networks, complex neural networks, wavelet networks, Fourier transform, Laplacian transform, etc. Due to its different learning algorithm implementations for regression, classification, sparse coding, compression, feature learning and clustering, multi ELMs have been used to form multi hidden layer networks, deep learning or hierarchical networks^{[13]}^{[14]}^{[18]}.
A hidden node in ELM is a computational element, which need not be considered as classical neuron. A hidden node in ELM can be classical artificial neurons, basis functions, or a subnetwork formed by some hidden nodes.^{[9]}.
Theories[edit]
Both universal approximation and classification capabilities^{[2]}^{[3]} have been proved for ELM in literature. Especially, GuangBin Huang and his team spent almost seven years (20012008) on the rigorous proofs of ELM’s universal approximation capability^{[6]}^{[9]}^{[10]}.
Universal approximation capability[edit]
In theory, any nonconstant piecewise continuous function can be used as activation function in ELM hidden nodes, such an activation function need not be differential. If tuning the parameters of hidden nodes could make SLFNs approximate any target function
f
(
x
)
{displaystyle f(mathbf {x} )}
, then hidden node parameters can be randomly generated according to any continuous distribution probability, and
lim
L
→
∞
‖
∑
i
=
1
L
β
i
h
i
(
x
)
−
f
(
x
)
‖
=
0
{displaystyle lim _{Lrightarrow infty }leftsum _{i=1}^{L}{boldsymbol {beta }}_{i}h_{i}({bf {x}})f({bf {x}})right=0}
holds with probability one with appropriate output weights
β
{displaystyle {boldsymbol {beta }}}
.
Classification capability[edit]
Given any nonconstant piecewise continuous function as the activation function in SLFNs, if tuning the parameters of hidden nodes can make SLFNs approximate any target function
f
(
x
)
{displaystyle f(mathbf {x} )}
, then SLFNs with random hidden layer mapping
h
(
x
)
{displaystyle mathbf {h} (mathbf {x} )}
can separate arbitrary disjoint regions of any shapes.
Neurons[edit]
Wide type of nonlinear piecewise continuous functions
G
(
a
,
b
,
x
)
{displaystyle G(mathbf {a} ,b,mathbf {x} )}
can be used in hidden neurons of ELM, for example:
Real domain[edit]
Sigmoid function:
G
(
a
,
b
,
x
)
=
1
1
+
exp
(
−
(
a
⋅
x
+
b
)
)
{displaystyle G(mathbf {a} ,b,mathbf {x} )={frac {1}{1+exp((mathbf {a} cdot mathbf {x} +b))}}}
Fourier function:
G
(
a
,
b
,
x
)
=
sin
(
a
⋅
x
+
b
)
{displaystyle G(mathbf {a} ,b,mathbf {x} )=sin(mathbf {a} cdot mathbf {x} +b)}
Hardlimit function:
G
(
a
,
b
,
x
)
=
{
1
,
if
a
⋅
x
−
b
≥
0
0
,
otherwise
{displaystyle G(mathbf {a} ,b,mathbf {x} )={begin{cases}1,&{text{if }}{bf {a}}cdot {bf {x}}bgeq 0\0,&{text{otherwise}}end{cases}}}
Gaussian function:
G
(
a
,
b
,
x
)
=
exp
(
−
b
‖
x
−
a
‖
2
)
{displaystyle G(mathbf {a} ,b,mathbf {x} )=exp(bmathbf {x} mathbf {a} ^{2})}
Multiquadrics function:
G
(
a
,
b
,
x
)
=
(
‖
x
−
a
‖
2
+
b
2
)
1
/
2
{displaystyle G(mathbf {a} ,b,mathbf {x} )=(mathbf {x} mathbf {a} ^{2}+b^{2})^{1/2}}
Wavelet:
G
(
a
,
b
,
x
)
=
‖
a
‖
−
1
/
2
Ψ
(
x
−
a
b
)
{displaystyle G(mathbf {a} ,b,mathbf {x} )=a^{1/2}Psi left({frac {mathbf {x} mathbf {a} }{b}}right)}
where
Ψ
{displaystyle Psi }
is a single mother wavelet function.
Complex domain[edit]
Circular functions:
tan
(
z
)
=
e
i
z
−
e
−
i
z
i
(
e
i
z
+
e
−
i
z
)
{displaystyle tan(z)={frac {e^{iz}e^{iz}}{i(e^{iz}+e^{iz})}}}
sin
(
z
)
=
e
i
z
−
e
−
i
z
2
i
{displaystyle sin(z)={frac {e^{iz}e^{iz}}{2i}}}
Inverse circular functions:
arctan
(
z
)
=
∫
0
z
d
t
1
+
t
2
{displaystyle arctan(z)=int _{0}^{z}{frac {dt}{1+t^{2}}}}
arccos
(
z
)
=
∫
0
z
d
t
(
1
−
t
2
)
1
/
2
{displaystyle arccos(z)=int _{0}^{z}{frac {dt}{(1t^{2})^{1/2}}}}
Hyperbolic functions:
tanh
(
z
)
=
e
z
−
e
−
z
e
z
+
e
−
z
{displaystyle tanh(z)={frac {e^{z}e^{z}}{e^{z}+e^{z}}}}
sinh
(
z
)
=
e
z
−
e
−
z
2
{displaystyle sinh(z)={frac {e^{z}e^{z}}{2}}}
Inverse hyperbolic functions:
arctanh
(
z
)
=
∫
0
z
d
t
1
−
t
2
{displaystyle {text{arctanh}}(z)=int _{0}^{z}{frac {dt}{1t^{2}}}}
arcsinh
(
z
)
=
∫
0
z
d
t
(
1
+
t
2
)
1
/
2
{displaystyle {text{arcsinh}}(z)=int _{0}^{z}{frac {dt}{(1+t^{2})^{1/2}}}}
Reliability[edit]
The blackbox character of neural networks in general and extreme learning machines (ELM) in particular is one of the major concerns that repels engineers from application in unsafe automation tasks. This particular issue was approached by means of several different techniques. One approach is to reduce the dependence on the random input.^{[19]}^{[20]} Another approach focuses on the incorporation of continuous constraints into the learning process of ELMs^{[21]}^{[22]} which are derived from prior knowledge about the specific task. This is reasonable, because machine learning solutions have to guarantee a safe operation in many application domains. The mentioned studies revealed that the special form of ELMs, with its functional separation and the linear readout weights, is particularly well suited for the efficient incorporation of continuous constraints in predefined regions of the input space.
Controversy[edit]
There are two main complaints from academic community concerning this work, the first one is about “reinventing and ignoring previous ideas”, the second one is about “improper naming and popularizing”, as shown in some debates in 2008 and 2015 ^{[23]}. In particular, it was pointed out in a letter^{[24]} to the editor of IEEE Transactions on Neural Networks that the idea of using a hidden layer connected to the inputs by random untrained weights was already suggested in the original papers on RBF networks in the late 1980s; GuangBin Huang replied by pointing out subtle differences.^{[25]} In a 2015 paper^{[3]}, Huang responded to complaints about his invention of the name ELM for alreadyexisting methods, complaining of “very negative and unhelpful comments on ELM in neither academic nor professional manner due to various reasons and intentions” and an “irresponsible anonymous attack which intends to destroy harmony research environment”, arguing that his work “provides a unifying learning platform” for various types of neural nets,^{[3]} including hierarchical structured ELM.^{[18]} In 2015, Huang also gave a formal rebuttal to what he considered as “malign and attack.”^{[26]} Recent research replaces the random weights with constrained random weights.^{[2]}^{[27]}
Open sources[edit]
See also[edit]
References[edit]
 ^ Huang, GuangBin; Zhu, QinYu; Siew, CheeKheong (2006). “Extreme learning machine: theory and applications”. Neurocomputing. 70 (1): 489–501. CiteSeerX 10.1.1.217.3692. doi:10.1016/j.neucom.2005.12.126.
 ^ ^{a} ^{b} ^{c} Huang, GuangBin; Hongming Zhou; Xiaojian Ding; and Rui Zhang (2012). “Extreme Learning Machine for Regression and Multiclass Classification” (PDF). IEEE Transactions on Systems, Man and Cybernetics – Part B: Cybernetics. 42 (2): 513–529. CiteSeerX 10.1.1.298.1213. doi:10.1109/tsmcb.2011.2168604. PMID 21984515.
 ^ ^{a} ^{b} ^{c} ^{d} Huang, GuangBin (2015). “What are Extreme Learning Machines? Filling the Gap Between Frank Rosenblatt’s Dream and John von Neumann’s Puzzle” (PDF). Cognitive Computing. 7 (3): 263–278. doi:10.1007/s1255901593330.
 ^ Huang, GuangBin (2014). “An Insight into Extreme Learning Machines: Random Neurons, Random Features and Kernels” (PDF). Cognitive Computation. 6 (3): 376–390. doi:10.1007/s1255901492552.
 ^ Huang, GuangBin, QinYu Zhu, K. Z. Mao, CheeKheong Siew, P. Saratchandran, and N. Sundararajan (2006). “Can Threshold Networks Be Trained Directly?” (PDF). IEEE Transactions on Circuits and SystemsII: Express Briefs. 53 (3): 187–191. doi:10.1109/tcsii.2005.857540.
 ^ ^{a} ^{b} ^{c} Huang, GuangBin, Lei Chen, and CheeKheong Siew (2006). “Universal Approximation Using Incremental Constructive Feedforward Networks with Random Hidden Nodes” (PDF). IEEE Transactions on Neural Networks. 17 (4): 879–892. doi:10.1109/tnn.2006.875977. PMID 16856652.
 ^ Rahimi, Ali, and Benjamin Recht (2008). “Weighted Sums of Random Kitchen Sinks: Replacing Minimization with Randomization in Learning” (PDF). Advances in Neural Information Processing Systems 21.
 ^ Cao, Jiuwen, Zhiping Lin, GuangBin Huang (2010). “Composite Function Wavelet Neural Networks with Extreme Learning Machine”. Neurocomputing. 73 (7–9): 1405–1416. doi:10.1016/j.neucom.2009.12.007.
 ^ ^{a} ^{b} ^{c} Huang, GuangBin, Lei Chen (2007). “Convex Incremental Extreme Learning Machine” (PDF). Neurocomputing. 70 (16–18): 3056–3062. doi:10.1016/j.neucom.2007.02.009.
 ^ ^{a} ^{b} Huang, GuangBin, and Lei Chen (2008). “Enhanced Random Search Based Incremental Extreme Learning Machine” (PDF). Neurocomputing. 71 (16–18): 3460–3468. CiteSeerX 10.1.1.217.3009. doi:10.1016/j.neucom.2007.10.008.
 ^ He, Qing, Xin Jin, Changying Du, Fuzhen Zhuang, Zhongzhi Shi (2014). “Clustering in Extreme Learning Machine Feature Space” (PDF). Neurocomputing. 128: 88–95. doi:10.1016/j.neucom.2012.12.063.
 ^ Kasun, Liyanaarachchi Lekamalage Chamara, Yan Yang, GuangBin Huang, and Zhengyou Zhang (2016). “Dimension Reduction With Extreme Learning Machine” (PDF). IEEE Transactions on Image Processing. 25 (8): 3906–3918. doi:10.1109/tip.2016.2570569. PMID 27214902.
 ^ ^{a} ^{b} Huang, GuangBin, Zuo Bai, and Liyanaarachchi Lekamalage Chamara Kasun, and Chi Man Vong (2015). “Local Receptive Fields Based Extreme Learning Machine” (PDF). IEEE Computational Intelligence Magazine. 10 (2): 18–29. doi:10.1109/mci.2015.2405316.
 ^ ^{a} ^{b} Tang, Jiexiong, Chenwei Deng, and GuangBin Huang (2016). “Extreme Learning Machine for Multilayer Perceptron” (PDF). IEEE Transactions on Neural Networks and Learning Systems. 27 (4): 809–821. doi:10.1109/tnnls.2015.2424995. PMID 25966483.
 ^ Barak, Omri; Rigotti, Mattia; and Fusi, Stefano (2013). “The Sparseness of Mixed Selectivity Neurons Controls the GeneralizationDiscrimination Tradeoff”. Journal of Neuroscience. 33 (9): 3844–3856. doi:10.1523/jneurosci.275312.2013. PMC 6119179. PMID 23447596.
 ^ Rigotti, Mattia; Barak, Omri; Warden, Melissa R.; Wang, XiaoJing; Daw, Nathaniel D.; Miller, Earl K.; and Fusi, Stefano (2013). “The Importance of Mixed Selectivity in Complex Cognitive Tasks”. Nature. 497 (7451): 585–590. doi:10.1038/nature12160. PMC 4412347. PMID 23685452.
 ^ Fusi, Stefano, Earl K Miller and Mattia Rigotti (2015). “Why Neurons Mix: High Dimensionality for Higher Cognition” (PDF). Current Opinion in Neurobiology. 37: 66–74. doi:10.1016/j.conb.2016.01.010. PMID 26851755.
 ^ ^{a} ^{b} Zhu, W.; Miao, J.; Qing, L.; Huang, G. B. (20150701). Hierarchical Extreme Learning Machine for unsupervised representation learning. 2015 International Joint Conference on Neural Networks (IJCNN). pp. 1–8. doi:10.1109/IJCNN.2015.7280669. ISBN 9781479919604.
 ^ Neumann, Klaus; Steil, Jochen J. (2011). “Batch intrinsic plasticity for extreme learning machines”. Proc. Of International Conference on Artificial Neural Networks: 339–346.
 ^ Neumann, Klaus; Steil, Jochen J. (2013). “Optimizing extreme learning machines via ridge regression and batch intrinsic plasticity”. Neurocomputing. 102: 23–30. doi:10.1016/j.neucom.2012.01.041.
 ^ Neumann, Klaus; Rolf, Matthias; Steil, Jochen J. (2013). “Reliable integration of continuous constraints into extreme learning machines”. International Journal of Uncertainty, Fuzziness and KnowledgeBased Systems. 21 (supp02): 35–50. doi:10.1142/S021848851340014X. ISSN 02184885.
 ^ Neumann, Klaus (2014). Reliability. University Library Bielefeld. pp. 49–74.
 ^ “The Official Homepage on Origins of Extreme Learning Machines (ELM)”. Retrieved 15 December 2018.
 ^ Wang, Lipo P.; Wan, Chunru R. “Comments on “The Extreme Learning Machine““. IEEE Trans. Neural Networks. CiteSeerX 10.1.1.217.2330.
 ^ Huang, GuangBin (2008). “Reply to “comments on ‘the extreme learning machine’ ““. IEEE Transactions on Neural Networks. 19 (8): 1495–1496. doi:10.1109/tnn.2008.2002275.
 ^ GuangBin, Huang (2015). “WHO behind the malign and attack on ELM, GOAL of the attack and ESSENCE of ELM” (PDF). www.extremelearningmachines.org.
 ^ Zhu, W.; Miao, J.; Qing, L. (20140701). Constrained Extreme Learning Machine: A novel highly discriminative random feedforward neural network. 2014 International Joint Conference on Neural Networks (IJCNN). pp. 800–807. doi:10.1109/IJCNN.2014.6889761. ISBN 9781479914845.
 ^ Akusok, Anton; Bjork, KajMikael; Miche, Yoan; Lendasse, Amaury (2015). “HighPerformance Extreme Learning Machines: A Complete Toolbox for Big Data Applications”. IEEE Open Access. 3: 1011–1025. doi:10.1109/access.2015.2450498.