<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Neuroinform.</journal-id>
<journal-title>Frontiers in Neuroinformatics</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Neuroinform.</abbrev-journal-title>
<issn pub-type="epub">1662-5196</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fninf.2017.00039</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Neuroscience</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Bioinspired Architecture Selection for Multitask Learning</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name><surname>Bueno-Crespo</surname> <given-names>Andr&#x000E9;s</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="author-notes" rid="fn001"><sup>&#x0002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/414833/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Mench&#x000F3;n-Lara</surname> <given-names>Rosa-Mar&#x000ED;a</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<xref ref-type="author-notes" rid="fn002"><sup>&#x02020;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/430205/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Mart&#x000ED;nez-Espa&#x000F1;a</surname> <given-names>Raquel</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/421866/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Sancho-G&#x000F3;mez</surname> <given-names>Jos&#x000E9;-Luis</given-names></name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/449415/overview"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>Department of Computer Science, Universidad Cat&#x000F3;lica de Murcia</institution> <country>Murcia, Spain</country></aff>
<aff id="aff2"><sup>2</sup><institution>Department of Information and Communications Technologies, Universidad Polit&#x000E9;cnica de Cartagena</institution> <country>Cartagena, Spain</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Jose Manuel Ferrandez, Universidad Polit&#x000E9;cnica de Cartagena, Spain</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Emilio Soria-Olivas, Universitat de Val&#x000E8;ncia, Spain; D. Andina, Universidad Polit&#x000E9;cnica de Madrid (UPM), Spain; Francisco J. Gonz&#x000E1;lez-Serrano, Universidad Carlos III de Madrid, Spain</p></fn>
<fn fn-type="corresp" id="fn001"><p>&#x0002A;Correspondence: Andr&#x000E9;s Bueno-Crespo <email>abueno&#x00040;ucam.edu</email></p></fn>
<fn fn-type="present-address" id="fn002"><p>&#x02020;Present Address: Rosa-Mar&#x000ED;a Mench&#x000F3;n-Lara, Image Processing Laboratory, ETSI Telecomunicaci&#x000F3;n, Universidad de Valladolid, Valladolid, Spain</p></fn></author-notes>
<pub-date pub-type="epub">
<day>22</day>
<month>06</month>
<year>2017</year>
</pub-date>
<pub-date pub-type="collection">
<year>2017</year>
</pub-date>
<volume>11</volume>
<elocation-id>39</elocation-id>
<history>
<date date-type="received">
<day>08</day>
<month>03</month>
<year>2017</year>
</date>
<date date-type="accepted">
<day>06</day>
<month>06</month>
<year>2017</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x000A9; 2017 Bueno-Crespo, Mench&#x000F3;n-Lara, Mart&#x000ED;nez-Espa&#x000F1;a and Sancho-G&#x000F3;mez.</copyright-statement>
<copyright-year>2017</copyright-year>
<copyright-holder>Bueno-Crespo, Mench&#x000F3;n-Lara, Mart&#x000ED;nez-Espa&#x000F1;a and Sancho-G&#x000F3;mez</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/"><p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) or licensor are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p></license>
</permissions>
<abstract>
<p>Faced with a new concept to learn, our brain does not work in isolation. It uses all previously learned knowledge. In addition, the brain is able to isolate the knowledge that does not benefit us, and to use what is actually useful. In machine learning, we do not usually benefit from the knowledge of other learned tasks. However, there is a methodology called Multitask Learning (MTL), which is based on the idea that learning a task along with other related tasks produces a transfer of information between them, what can be advantageous for learning the first one. This paper presents a new method to completely design MTL architectures, by including the selection of the most helpful subtasks for the learning of the main task, and the optimal network connections. In this sense, the proposed method realizes a complete design of the MTL schemes. The method is simple and uses the advantages of the Extreme Learning Machine to automatically design a MTL machine, eliminating those factors that hinder, or do not benefit, the learning process of the main task. This architecture is unique and it is obtained without testing/error methodologies that increase the computational complexity. The results obtained over several real problems show the good performances of the designed networks with this method.</p>
</abstract>
<kwd-group>
<kwd>neural networks</kwd>
<kwd>multitask learning</kwd>
<kwd>architecture design</kwd>
<kwd>extreme learning machine</kwd>
<kwd>multilayer perceptron</kwd>
</kwd-group>
<counts>
<fig-count count="6"/>
<table-count count="5"/>
<equation-count count="4"/>
<ref-count count="32"/>
<page-count count="9"/>
<word-count count="5418"/>
</counts>
</article-meta>
</front>
<body>
<sec sec-type="intro" id="s1">
<title>1. Introduction</title>
<p>The Hebbian learning in neural networks consists in establishing new synapses according to new lived experiences. Thus, this learning is directly related to the so-called structural plasticity which is the brain&#x00027;s ability to alter their physical structure in response to the learning of new information, skills, or habits. This means that when a human being modifies the knowledge about a particular field with new information (both from the same field and from other related fields), new neural connections are established and others are inhibited. This is how human beings can improve knowledge on a specific topic: by incorporating new experiences or related knowledge.</p>
<p>In this context, Multitask Learning (MTL) is a type of machine learning that tries to mimic the structural plasticity of human beings (Baxter, <xref ref-type="bibr" rid="B2">1993</xref>; Caruana, <xref ref-type="bibr" rid="B5">1995</xref>, <xref ref-type="bibr" rid="B6">1998</xref>; Silver and Mercer, <xref ref-type="bibr" rid="B28">2001</xref>). By using a shared representation, the MTL method learns simultaneously a problem (called the main task) along with other related problems (called secondary tasks). Thus, the artificial neural connections obtained by MTL are different from those obtained when the main task is learned by means of a single task learning (STL) scheme. This often leads to a better model for the main task, because there exists a transfer of information from the secondaries to the main task, i.e., the learning of the main task is modified by the information of the secondary tasks. However, in real world applications, it is not always easy to find tasks related with the main one, or to evaluate whether the relationship between them can produce a positive information transfer. Moreover, for machine learning, it is extremely difficult to determine whether the simultaneously training of several tasks can produce a better performance for one of them (considered the main task), in comparison with the result obtained when it is individually trained. This is because a task can contain information that can be helpful or harmful.</p>
<p>In Bueno-Crespo et al. (<xref ref-type="bibr" rid="B4">2015</xref>), a method to select related tasks with the main one is presented. Now, this method is used as a part of a new procedure to completely design MTL architectures. A particular pruning connections procedure leads to a positive transfer of information from the secondary tasks to the main task because only the most relevant connections are preserved. In this sense, the proposed method performs a complete design of the MTL networks. To achieve this, the method takes advantage of the benefits of Extreme Learning Machine algorithm (ELM) (Huang et al., <xref ref-type="bibr" rid="B14">2006</xref>), specifically the Optimally Pruned ELM (OP-ELM) (Miche et al., <xref ref-type="bibr" rid="B22">2010</xref>), and the Architecture Selection based on ELM (ASELM) procedures (Bueno-Crespo et al., <xref ref-type="bibr" rid="B3">2013</xref>).</p>
<p>The rest of the paper is organized as follows: Section 2. describes the ASELM algorithm to design Multilayer Perceptrons (MLP). A summarized description of MTL is presented in Section 3. The proposed method is described in Section 4. Section 5 shows the results and finally, conclusions and prospective works close the paper.</p>
</sec>
<sec id="s2">
<title>2. Architecture selection using extreme learning machine</title>
<p>The Extreme Learning Machine (ELM) is based on the concept that if the MLP input weights are fixed to random values, the MLP can be considered as a linear system and the output weights can be easily obtained by using the pseudo-inverse of the hidden neurons outputs matrix <bold>H</bold> for a given training set. Although related ideas were previously analyzed in other works (Pao et al., <xref ref-type="bibr" rid="B25">1994</xref>; Igelnik and Pao, <xref ref-type="bibr" rid="B15">1997</xref>), Huang was the author who formalized it (Huang and Chen, <xref ref-type="bibr" rid="B11">2007</xref>; Huang et al., <xref ref-type="bibr" rid="B13">2011</xref>). He demonstrated that the ELM is an universal approximator for a wide range of random computational nodes, and all the hidden node parameters can randomly be generated according to any continuous probability distribution without any prior knowledge. Thus, given a set of <italic>N</italic> input vectors, a MLP can approximate <italic>N</italic> cases with zero error, <inline-formula><mml:math id="M1"><mml:munderover accentunder="false" accent="false"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:munderover><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>y</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>t</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>, being <inline-formula><mml:math id="M2"><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>y</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mo>&#x0211D;</mml:mo></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> the output network for the input vector <inline-formula><mml:math id="M3"><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext mathvariant="bold">x</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mo>&#x0211D;</mml:mo></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> with target vector <inline-formula><mml:math id="M4"><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>t</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mo>&#x0211D;</mml:mo></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula>. Thus, there exist <inline-formula><mml:math id="M5"><mml:msub><mml:mrow><mml:mo>&#x003B2;</mml:mo></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mo>&#x0211D;</mml:mo></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula>, <inline-formula><mml:math id="M6"><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext mathvariant="bold">w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mo>&#x0211D;</mml:mo></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> and <italic>b</italic><sub><italic>j</italic></sub> &#x02208; &#x0211D; such that,</p>
<disp-formula id="E1"><label>(1)</label><mml:math id="M7"><mml:mtable class="eqnarray" columnalign="right center left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>y</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munderover accentunder="false" accent="false"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:munderover></mml:mstyle><mml:msub><mml:mrow><mml:mo>&#x003B2;</mml:mo></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant='bold'><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>&#x000B7;</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant='bold'><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant='bold'><mml:mtext>t</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:mi>N</mml:mi><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M8"><mml:msub><mml:mrow><mml:mo>&#x003B2;</mml:mo></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mo>&#x003B2;</mml:mo></mml:mrow><mml:mrow><mml:mi>j</mml:mi><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003B2;</mml:mo></mml:mrow><mml:mrow><mml:mi>j</mml:mi><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003B2;</mml:mo></mml:mrow><mml:mrow><mml:mi>j</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> is the weight vector connecting the <italic>j</italic>th hidden node with the output nodes, <inline-formula><mml:math id="M9"><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext mathvariant="bold">w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> is the weight vector connecting the <italic>j</italic>th hidden node with the input nodes, and <italic>b</italic><sub><italic>j</italic></sub> is the bias of the <italic>j</italic>th hidden node.</p>
<p>For a network with <italic>M</italic> hidden nodes, the previous <italic>N</italic> equations can be expressed by</p>
<disp-formula id="E2"><label>(2)</label><mml:math id="M10"><mml:mtable class="eqnarray" columnalign="right center left"><mml:mtr><mml:mtd><mml:mstyle mathvariant="bold"><mml:mtext>H</mml:mtext></mml:mstyle><mml:mstyle mathvariant="bold"><mml:mtext>B</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>T</mml:mtext></mml:mstyle><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where</p>
<disp-formula id="E3"><label>(3)</label><mml:math id="M11"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mstyle mathvariant="bold"><mml:mtext>H</mml:mtext></mml:mstyle><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mrow><mml:mo stretchy="true">[</mml:mo><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x000B7;</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mo>&#x02026;</mml:mo></mml:mtd><mml:mtd><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:msub><mml:mo>&#x000B7;</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x022EE;</mml:mo></mml:mtd><mml:mtd><mml:mo>&#x02026;</mml:mo></mml:mtd><mml:mtd><mml:mo>&#x022EE;</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x000B7;</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mo>&#x02026;</mml:mo></mml:mtd><mml:mtd><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:msub><mml:mo>&#x000B7;</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo stretchy="true">]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>N</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:mi>M</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E6"><label>(4)</label><mml:math id="M14"><mml:mtable class="eqnarray" columnalign="right center left"><mml:mtr><mml:mtd><mml:mstyle mathvariant="bold"><mml:mtext>B</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mrow><mml:mo stretchy="true">[</mml:mo><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mo>&#x003B2;</mml:mo></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x022EE;</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mo>&#x003B2;</mml:mo></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup></mml:mtd></mml:mtr></mml:mtable><mml:mo stretchy="true">]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>M</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mtext class="textrm" mathvariant="normal">and&#x000A0;</mml:mtext><mml:mstyle mathvariant="bold"><mml:mtext>T</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mrow><mml:mo stretchy="true">[</mml:mo><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none none none none none none none none none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>t</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>&#x022EE;</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>t</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msubsup></mml:mtd></mml:mtr></mml:mtable><mml:mo stretchy="true">]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>N</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <bold>H</bold> &#x02208; &#x0211D;<sup><italic>N</italic>&#x000D7;<italic>M</italic></sup> is the hidden layer output matrix of the MLP, <bold>B</bold> &#x02208; &#x0211D;<sup><italic>M</italic>&#x000D7;<italic>m</italic></sup> is the output weight matrix, and <bold>T</bold> &#x02208; &#x0211D;<sup><italic>N</italic>&#x000D7;<italic>m</italic></sup> is the target matrix of the <italic>N</italic> training cases. Thus, as <bold>w</bold><sub><italic>j</italic></sub> and <italic>b</italic><sub><italic>j</italic></sub> with <italic>j</italic> &#x0003D; 1, &#x02026;, <italic>N</italic>, are randomly selected, the MLP training is given by the solution of the least square problem of Equation (2), i.e., the optimal output weight layer is <inline-formula><mml:math id="M15"><mml:mover accent="true"><mml:mrow><mml:mstyle class="text"><mml:mtext mathvariant="bold">B</mml:mtext></mml:mstyle></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mstyle class="text"><mml:mtext mathvariant="bold">H</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mo>&#x02021;</mml:mo></mml:mrow></mml:msup><mml:mstyle class="text"><mml:mtext mathvariant="bold">T</mml:mtext></mml:mstyle></mml:math></inline-formula>, where <bold>H</bold><sup>&#x02021;</sup> is the Moore-Penrose pseudo-inverse (Serre, <xref ref-type="bibr" rid="B27">2002</xref>).</p>
<p>ELM for training MLPs can be therefore summarized as shown in Algorithm <xref ref-type="table" rid="A1">1</xref>.</p>
<table-wrap position="float" id="A1">
<caption><p><bold>Algorithm 1</bold> Extreme Learning Machine (ELM)</p></caption>
<table frame="hsides" rules="groups">
<tbody>
<tr>
<td/>
<td align="left" valign="top">Given a training set <inline-formula><mml:math id="M16"><mml:mrow><mml:mi mathvariant="-tex-caligraphic">D</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>x</mml:mi></mml:mstyle><mml:mi>i</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>t</mml:mi></mml:mstyle><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x0007C;</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>x</mml:mi></mml:mstyle><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mi>&#x0211D;</mml:mi><mml:mi>n</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>t</mml:mi></mml:mstyle><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mi>&#x0211D;</mml:mi><mml:mi>m</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:mi>N</mml:mi></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, an activation function <italic>f</italic> and an hidden neuron number <italic>M</italic>,</td>
</tr>
<tr>
<td align="left" valign="top">1:</td>
<td align="left" valign="top">Assign arbitrary input weights <bold>w</bold><sub><italic>j</italic></sub> and biases <italic>b</italic><sub><italic>j</italic></sub>, <italic>j</italic> &#x0003D; 1, &#x02026;, <italic>M</italic>.</td>
</tr>
<tr>
<td align="left" valign="top">2:</td>
<td align="left" valign="top">Compute the hidden layer output matrix <bold>H</bold> using Equation (3).</td>
</tr>
<tr>
<td align="left" valign="top">3:</td>
<td align="left" valign="top">Calculate the output weight matrix <bold>B</bold> &#x0003D; <bold>H</bold><sup>&#x02021;</sup><bold>T</bold>, where <bold>B</bold> and <bold>T</bold> are both defined in Equation (4).</td>
</tr> 
</tbody>
</table>
</table-wrap>
<p>ELM provides a fast and efficient MLP training (Huang et al., <xref ref-type="bibr" rid="B14">2006</xref>), but it needs to fix the number of hidden neurons to obtain a good generalization capability. In order to avoid the exhaustive search for the optimal value of <italic>M</italic>, several pruned methods have been proposed (Mateo and Lendasse, <xref ref-type="bibr" rid="B18">2008</xref>; Miche et al., <xref ref-type="bibr" rid="B20">2008a</xref>,<xref ref-type="bibr" rid="B23">b</xref>; Rong et al., <xref ref-type="bibr" rid="B26">2008</xref>; Miche and Lendasse, <xref ref-type="bibr" rid="B21">2009</xref>; Miche et al., <xref ref-type="bibr" rid="B22">2010</xref>). Among them, the most commonly used is the ELM Optimally Pruned (OP-ELM) (Miche et al., <xref ref-type="bibr" rid="B22">2010</xref>). The OP-ELM sets a very high initial number of hidden neurons (<italic>M</italic>&#x0226B;<italic>N</italic>) and, by using Least Angle Regression algorithm (LARS) (Simil&#x000E4; and Tikka, <xref ref-type="bibr" rid="B29">2005</xref>), sorts the neurons according to their importance to solve the problem (Equation 2). The pruning of neurons is done by utilizing Leave-One-Out Cross-Validation (LOO-CV) and choosing the combination of neurons (which have been previously sorted by the LARS algorithm) that provides lower LOO error. The LOO-CV error is efficiently computed using the Allen&#x00027;s formula (Miche et al., <xref ref-type="bibr" rid="B22">2010</xref>). For more detail, a summary of the OP-ELM algorithm is shown in Algorithm <xref ref-type="table" rid="A2">2</xref> (Garc&#x000ED;a-Laencina et al., <xref ref-type="bibr" rid="B8">2011</xref>).</p>
<table-wrap position="float" id="A2">
<caption><p><bold>Algorithm 2</bold> Optimally Pruned-ELM (OP-ELM)</p></caption>
<table frame="hsides" rules="groups">
<tbody>
<tr>
<td/>
<td align="left" valign="top">Given a training set <inline-formula><mml:math id="M17"><mml:mrow><mml:mi mathvariant="-tex-caligraphic">D</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>x</mml:mi></mml:mstyle><mml:mi>j</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>t</mml:mi></mml:mstyle><mml:mi>j</mml:mi></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x0007C;</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>x</mml:mi></mml:mstyle><mml:mi>j</mml:mi></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mi>&#x0211D;</mml:mi><mml:mi>n</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>t</mml:mi></mml:mstyle><mml:mi>j</mml:mi></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mi>&#x0211D;</mml:mi><mml:mi>m</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:mi>N</mml:mi></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, a mix of activation functions (sigmoid, gaussian, and linear), and a large number of neurons <italic>M</italic>,</td>
</tr>
<tr>
<td align="left" valign="top">1:</td>
<td align="left" valign="top">Randomly assign input weights <inline-formula><mml:math id="M18"><mml:msubsup><mml:mrow><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>M</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula>.</td>
</tr>
<tr>
<td align="left" valign="top">2:</td>
<td align="left" valign="top">Calculate the hidden layer output matrix <bold>H</bold> using <bold>X</bold> and input weights.</td>
</tr>
<tr>
<td align="left" valign="top">3:</td>
<td align="left" valign="top">Ranking the hidden outputs using the MRSR algorithm, i.e., <bold>H</bold> is ranked, and set <bold>H</bold><sup>0</sup> as an empty matrix.</td>
</tr>
<tr>
<td align="left" valign="top">4:</td>
<td align="left" valign="top"><bold>for</bold> <italic>k</italic> &#x0003D; 1 to <italic>N</italic> <bold>do</bold></td>
</tr>
<tr>
<td align="left" valign="top">5:</td>
<td align="left" valign="top">Add the <italic>k</italic>-th node to the model &#x02192; <inline-formula><mml:math id="M19"><mml:msup><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>H</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>H</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>k</mml:mi><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>h</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>, being <bold>h</bold><sub><italic>k</italic></sub> the <italic>k</italic>-th column of <bold>H</bold>.</td>
</tr>
<tr>
<td align="left" valign="top">6:</td>
<td align="left" valign="top">Computes LOO error (<inline-formula><mml:math id="M20"><mml:msubsup><mml:mrow><mml:mo>&#x003F5;</mml:mo></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>P</mml:mi><mml:mi>R</mml:mi><mml:mi>E</mml:mi><mml:mi>S</mml:mi><mml:mi>S</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula>) with <bold>H</bold><sup><italic>k</italic></sup>.</td>
</tr>
<tr>
<td align="left" valign="top">7:</td>
<td align="left" valign="top"><bold>end for</bold></td>
</tr>
<tr>
<td align="left" valign="top">8:</td>
<td align="left" valign="top">Select the network size (<italic>M</italic><sup>&#x0002A;</sup>) according to <inline-formula><mml:math id="M21"><mml:msubsup><mml:mrow><mml:mo>&#x003F5;</mml:mo></mml:mrow><mml:mrow><mml:mi>P</mml:mi><mml:mi>R</mml:mi><mml:mi>E</mml:mi><mml:mi>S</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mrow><mml:msup><mml:mrow><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mo>&#x0002A;</mml:mo></mml:mrow></mml:msup></mml:mrow></mml:msubsup><mml:mo>&#x0003C;</mml:mo><mml:msubsup><mml:mrow><mml:mo>&#x003F5;</mml:mo></mml:mrow><mml:mrow><mml:mi>P</mml:mi><mml:mi>R</mml:mi><mml:mi>E</mml:mi><mml:mi>S</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mo>&#x02200;</mml:mo><mml:mi>k</mml:mi><mml:mo>&#x02208;</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:mi>M</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>.</td>
</tr>
<tr>
<td align="left" valign="top">9:</td>
<td align="left" valign="top">Calculate the output weights matrix: <bold>B</bold><sup>&#x0002A;</sup> &#x0003D; (<bold>H</bold><sup>&#x0002A;</sup>)<sup>&#x02021;</sup><bold>T</bold>.</td>
</tr> 
</tbody>
</table>
</table-wrap>
<p>Recently, a new method to design MLP architectures has been presented in Bueno-Crespo et al. (<xref ref-type="bibr" rid="B3">2013</xref>). It is called ASELM (&#x0201C;Architecture Selection Using Extreme Learning Machine&#x0201D;) and is based on the OP-ELM. Thus, once the initial MLP architecture is defined, the OP-ELM optimally discards those hidden neurons whose combination of input variables is not relevant to the target task. Because of the binary value of the input weights, the selection of hidden nodes implies also the selection of those relevant connections between the input and hidden layers. Thus, only input connections corresponding to selected hidden neurons and with input weights values equal to 1 will be part of the final architecture. A summary of the ASELM algorithm is shown below (Algorithm <xref ref-type="table" rid="A3">3</xref>).</p>
<table-wrap position="float" id="A3">
<caption><p><bold>Algorithm 3</bold> Architecture Selection ELM (ASELM)</p></caption>
<table frame="hsides" rules="groups">
<tbody>
<tr>
<td/>
<td align="left" valign="top">Given a training set <inline-formula><mml:math id="M22"><mml:mrow><mml:mi mathvariant="-tex-caligraphic">D</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mrow><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>x</mml:mi></mml:mstyle><mml:mi>i</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>t</mml:mi></mml:mstyle><mml:mi>i</mml:mi></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x0007C;</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>x</mml:mi></mml:mstyle><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mi>&#x0211D;</mml:mi><mml:mi>n</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msub><mml:mstyle mathvariant='bold' mathsize='normal'><mml:mi>t</mml:mi></mml:mstyle><mml:mi>i</mml:mi></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mi>&#x0211D;</mml:mi><mml:mi>m</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mo>&#x02026;</mml:mo><mml:mo>,</mml:mo><mml:mi>N</mml:mi></mml:mrow><mml:mo>}</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula>, activation function <italic>f</italic>, an hidden neuron number 2<sup><italic>n</italic></sup>&#x02212;1, where <italic>n</italic> is the number of input features, proceed as follows:</td>
</tr>
<tr>
<td align="left" valign="top">1:</td>
<td align="left" valign="top">The weights of the input layer are initialized with binary values by considering all possible combinations of inputs. The case of all weights set to zero is discarded.</td>
</tr>
<tr>
<td align="left" valign="top">2:</td>
<td align="left" valign="top">MLP network is trained by the OP-ELM and, then, useless hidden neurons are discarded according to the ranking given by LARS and LOO-CV procedure.</td>
</tr>
<tr>
<td align="left" valign="top">3:</td>
<td align="left" valign="top">The final MLP architecture is given by the selected hidden neurons with its corresponding input(s) weight(s) equal to one.</td>
</tr> 
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s3">
<title>3. Multitask learning architecture</title>
<p>The MTL architecture for a neural network is similar to the classical scheme STL (Single Task Learning). They differ in that MTL scheme has an output for each task to be learned, whereas STL scheme has a separate network for each one (Figure <xref ref-type="fig" rid="F1">1</xref>). Thus, when we speak about MTL, we are referring to a type of learning where a main task and other tasks (considered as secondary tasks) are learned all at once in order to help learning of the main one.</p>
<fig id="F1" position="float">
<label>Figure 1</label>
<caption><p>Different learning schemes. In <bold>(A)</bold>, a STL architecture is shown. It is used to solve a single task alone. In <bold>(B)</bold>, a set of tasks are learned simultaneously by means of a MTL architecture. In this case, there is a common part (from the input to the hidden layer) and a specific part (from the hidden layer to the output) for each task.</p></caption>
<graphic xlink:href="fninf-11-00039-g0001.tif"/>
</fig>
<p>In a MTL scheme, there is a common part shared by all tasks and a specific one for each task. The common part is formed by the weights connections from the input features to the hidden layer, allowing common internal representation for all tasks (Caruana, <xref ref-type="bibr" rid="B7">1993</xref>). Thanks to this internal representation, learning can be transferred from one task to another (Caruana, <xref ref-type="bibr" rid="B6">1998</xref>). The specific part, formed by the weights that connect the hidden layer to the output layer, specifically allows modeling each task from the common representation. The main problem with this type of learning is to find tasks related to the main one. Even in case of finding them, it may be difficult to know the kind of relationship they have, because it can be a positive or negative influence to learn the main task.</p>
</sec>
<sec id="s4">
<title>4. Proposed method</title>
<p>The method proposed in this paper is called <italic>MTL</italic><sub><italic>ASELM</italic></sub> since it is based on the ASELM to design MTL architectures. To do this, it is necessary to introduce a couple of modifications to the original method so as to adapt it to MTL. Firstly, the targets of secondary tasks will be used as new input features (removing them from the outputs of the classic MTL scheme) so that a similar architecture to that shown in Figure <xref ref-type="fig" rid="F1">1A</xref> is obtained. There is only a single output corresponding to the main task and an input vector composed now by the original input features and the targets of secondary tasks. This network is designed and trained using ASELM which, as it was commented before, realizes a selection of hidden nodes that implies also the selection of those relevant connections between the input and hidden layer. The selection of relevant secondary tasks is now performed since they are part of the input vector.</p>
<p>In a second stage, a MTL architecture is created. The secondary tasks selected in the previous stage as the most relevant to learn the main task are included as output components in the MTL neural network. A scheme of the proposed method can be seen in Figure <xref ref-type="fig" rid="F2">2</xref>.</p>
<fig id="F2" position="float">
<label>Figure 2</label>
<caption><p>Flowchart of the proposed method.</p></caption>
<graphic xlink:href="fninf-11-00039-g0002.tif"/>
</fig>
<p>This idea of exchanging outputs for inputs is not new. Caruana proposed that some inputs may work better as outputs, i.e., as new secondary tasks (Caruana, <xref ref-type="bibr" rid="B6">1998</xref>). This idea is very interesting in machine learning and it has been used, for example, for developing efficient procedures to classify patterns with missing data (Garc&#x000ED;a-Laencina et al., <xref ref-type="bibr" rid="B9">2010</xref>, <xref ref-type="bibr" rid="B10">2013</xref>).</p>
<p><italic>MTL</italic><sub><italic>ASELM</italic></sub> method allows pruning to take place both at the hidden layer and the output layer, at the same time that provides a unique solution. This uniqueness comes from the binary initialization of the hidden weights, which eliminates the random component thereof.</p>
<p>To further clarify the <italic>MTL</italic><sub><italic>ASELM</italic></sub> method, the following section includes an example of how the method is applied step by step to solve a particular problem (Logic Domain problem).</p>
</sec>
<sec id="s5">
<title>5. Experiments</title>
<p>In order to show the goodness of the <italic>MTL</italic><sub><italic>ASELM</italic></sub> method for designing an MTL architecture, results of classification test obtained with the single-task learning (STL), classic multitask learning (MTL), and <italic>MTL</italic><sub><italic>ASELM</italic></sub> have been compared. While the <italic>MTL</italic><sub><italic>ASELM</italic></sub> architecture is directly obtained by the proposed method, the best architecture for STL and MTL has been selected by cross-validation. For experiments, the three architectures are trained using the stochastic back-propagation with a cross-validation with 10-fold &#x000D7; 30 initializations. &#x0201C;Logic Domain,&#x0201D; &#x0201C;Monk&#x00027;s Problems,&#x0201D; &#x0201C;Telugu,&#x0201D; &#x0201C;Iris Data,&#x0201D; and &#x0201C;User Knowledge Modeling&#x0201D; datasets, will be used to show the performance of the method. These data sets are available at the UCI ML Repository (Asuncion and Newman, <xref ref-type="bibr" rid="B1">2007</xref>), excepting &#x0201C;Logic Domain&#x0201D; problem (McCracken, <xref ref-type="bibr" rid="B19">2003</xref>). Specific details about results for each dataset are described below.</p>
<p>&#x0201C;Logic Domain&#x0201D; dataset is used to see how MTL architecture is created by the <italic>MTL</italic><sub><italic>ASELM</italic></sub> method. This dataset is a toy problem specially designed for multitask learning. In this problem, targets are represented by the combination of four real variables (from seven inputs: <italic>x</italic><sub>1</sub>,&#x02026;,<italic>x</italic><sub>7</sub>), considering the first task as the main task, and the others as secondary ones.</p>
<p>Table <xref ref-type="table" rid="T1">1</xref> shows the logical expression for each task. Note, that the main task (<italic>T</italic><sub><italic>p</italic></sub>) is only determined by the first four features of the problem. The secondary tasks share one or more variables with the main one. Nevertheless, only the second secondary task (<italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub>) shares a common logic subexpression (<italic>x</italic><sub>3</sub> &#x0003E; 0.5 &#x02228; <italic>x</italic><sub>4</sub> &#x0003E; 0.5) with the main task.</p>
<table-wrap position="float" id="T1">
<label>Table 1</label>
<caption><p>Description of the &#x0201C;Logic Domain&#x0201D; tasks.</p></caption>
<table frame="hsides" rules="groups">
<thead><tr>
<th valign="top" align="left"><bold>Task</bold></th>
<th valign="top" align="left"><bold>Logical expression</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left"><italic>T</italic><sub><italic>P</italic></sub></td>
<td valign="top" align="left">(<italic>x</italic><sub>1</sub> &#x0003E; 0.5 &#x02228;<italic>x</italic><sub>2</sub> &#x0003E; 0.5) &#x02227; (<italic>x</italic><sub>3</sub> &#x0003E; 0.5 &#x02228;<italic>x</italic><sub>4</sub> &#x0003E; 0.5)</td>
</tr>
<tr>
<td valign="top" align="left"><italic>T</italic><sub><italic>Sec</italic><sub>1</sub></sub></td>
<td valign="top" align="left">(<italic>x</italic><sub>2</sub> &#x0003E; 0.5 &#x02228;<italic>x</italic><sub>3</sub> &#x0003E; 0.5) &#x02227; (<italic>x</italic><sub>4</sub> &#x0003E; 0.5 &#x02228;<italic>x</italic><sub>5</sub> &#x0003E; 0.5)</td>
</tr>
<tr>
<td valign="top" align="left"><italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub></td>
<td valign="top" align="left">(<italic>x</italic><sub>3</sub> &#x0003E; 0.5 &#x02228;<italic>x</italic><sub>4</sub> &#x0003E; 0.5) &#x02227; (<italic>x</italic><sub>5</sub> &#x0003E; 0.5 &#x02228;<italic>x</italic><sub>6</sub> &#x0003E; 0.5)</td>
</tr>
<tr>
<td valign="top" align="left"><italic>T</italic><sub><italic>Sec</italic><sub>3</sub></sub></td>
<td valign="top" align="left">(<italic>x</italic><sub>4</sub> &#x0003E; 0.5 &#x02228;<italic>x</italic><sub>5</sub> &#x0003E; 0.5) &#x02227; (<italic>x</italic><sub>6</sub> &#x0003E; 0.5 &#x02228;<italic>x</italic><sub>7</sub> &#x0003E; 0.5)</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>Each task is described by a logical combination of four input features</italic>.</p>
</table-wrap-foot>
</table-wrap>
<p>Initially, the neural network architecture is composed by <italic>M</italic> &#x0003D; 1023 (2<sup><italic>n</italic></sup> &#x02212; 1, with <italic>n</italic> &#x0003D; 10; seven input features &#x0002B; three extra features corresponding to three secondary tasks) hidden units (see Figure <xref ref-type="fig" rid="F3">3</xref>). This suppose a large enough hidden layer number according to the ELM theory. Once this model is trained with ASELM method, the result is quite significant. The ASELM selects only two hidden neurons as the most relevant to learn the main task (Bueno-Crespo et al., <xref ref-type="bibr" rid="B3">2013</xref>). By relevance order, these hidden weights are <bold>w</bold><sub>194</sub> &#x0003D; [0 0 1 1 0 0 0 0 1 0] and <bold>w</bold><sub>768</sub> &#x0003D; [1 1 0 0 0 0 0 0 0 0] corresponding to hidden neuron number 194 and 768, respectively. For simplicity, we will be referred to them as first neuron or <bold>w</bold><sub>1</sub> and second neuron or <bold>w</bold><sub>2</sub>. From <bold>w</bold><sub>1</sub>, it can be observed that the first selected hidden neuron is only connected to input features <italic>x</italic><sub>3</sub> and <italic>x</italic><sub>4</sub>, as well as the second secondary task (<italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub>). From <bold>w</bold><sub>2</sub>, it follows that only <italic>x</italic><sub>1</sub> and <italic>x</italic><sub>2</sub> contribute to learning through their connection to the second hidden neuron (see Figure <xref ref-type="fig" rid="F3">3</xref>).</p>
<fig id="F3" position="float">
<label>Figure 3</label>
<caption><p>Logic Domain problem. Scheme to learn the main task using secondary tasks as inputs. 1023 neurons in the hidden layer have been generated. After ASELM is applied only two hidden neurons are selected whose weight vectors are shown in black boxes. The first neuron has three connections corresponding to the input features <italic>x</italic><sub>3</sub> and <italic>x</italic><sub>4</sub> and the second secondary task (<italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub>). The second neuron is represented only by the input features <italic>x</italic><sub>1</sub> and <italic>x</italic><sub>2</sub>.</p></caption>
<graphic xlink:href="fninf-11-00039-g0003.tif"/>
</fig>
<p>This means that only <italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub> is influencing in the learning of the <italic>T</italic><sub><italic>P</italic></sub> through the first neuron that learns the input features <italic>x</italic><sub>3</sub> and <italic>x</italic><sub>4</sub>, which is an expected result according to the previous comment indicating the relationship between <italic>T</italic><sub><italic>p</italic></sub> and <italic>T</italic><sub><italic>sec</italic><sub>2</sub></sub> (see Table <xref ref-type="table" rid="T1">1</xref>). The second selected hidden neuron is only composed by the input features <italic>x</italic><sub>1</sub> and <italic>x</italic><sub>2</sub>, without any input connection from the secondary tasks. Figure <xref ref-type="fig" rid="F4">4</xref> shows the final architecture given by ASELM method.</p>
<fig id="F4" position="float">
<label>Figure 4</label>
<caption><p>Logic Domain problem. Intermediate scheme where connections are pruned after ASELM. It can be observed how the input features <italic>x</italic><sub>5</sub>, <italic>x</italic><sub>6</sub>, and <italic>x</italic><sub>7</sub>, all hidden nodes least two, and secondary tasks <italic>T</italic><sub><italic>Sec</italic><sub>1</sub></sub> and <italic>T</italic><sub><italic>Sec</italic><sub>3</sub></sub> are removed because they are irrelevant for the learning of the <italic>T</italic><sub><italic>P</italic></sub>.</p></caption>
<graphic xlink:href="fninf-11-00039-g0004.tif"/>
</fig>
<p>Next, a MTL architecture is created considering as outputs those corresponding to the main task and secondary ones selected in the previous stage. The latter are incorporated into the output layer preserving the connections established by the ASELM. In our case, only <italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub> has been selected. Figure <xref ref-type="fig" rid="F5">5</xref> shows the final <italic>MTL</italic><sub><italic>ASELM</italic></sub> architecture. <italic>MTL</italic><sub><italic>ASELM</italic></sub> has removed the input features <italic>x</italic><sub>5</sub>, <italic>x</italic><sub>6</sub>, and <italic>x</italic><sub>7</sub>, and has selected only 2 neurons in the hidden layer from the 1023 neurons initially considered.</p>
<fig id="F5" position="float">
<label>Figure 5</label>
<caption><p>Logic Domain problem. Final architecture obtained with <italic>MTL</italic><sub><italic>ASELM</italic></sub>. <italic>T</italic><sub><italic>P</italic></sub> shares a hidden layer neuron with <italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub>, which learns the common part of both tasks.</p></caption>
<graphic xlink:href="fninf-11-00039-g0005.tif"/>
</fig>
<p>Figure <xref ref-type="fig" rid="F6">6</xref> shows the <italic>MTL</italic><sub><italic>ASELM</italic></sub> schemes for other studied datasets. &#x0201C;Monk&#x00027;s Problems&#x0201D; dataset is a collection of three toy problems that present the same domain (six input features). In this problem, the targets associated to each task are described by the logical relations. Thus, Monk 1 (<italic>T</italic><sub><italic>P</italic></sub>) is described by (<italic>x</italic><sub>1</sub> &#x0003D; <italic>x</italic><sub>2</sub>) &#x02228; (<italic>x</italic><sub>5</sub> &#x0003D; 1); in Monk 2 (<italic>T</italic><sub><italic>Sec</italic><sub>1</sub></sub>) exactly two identities from <italic>x</italic><sub>1</sub> &#x0003D; 1, <italic>x</italic><sub>2</sub> &#x0003D; 1, <italic>x</italic><sub>3</sub> &#x0003D; 1, <italic>x</italic><sub>4</sub> &#x0003D; 1, <italic>x</italic><sub>5</sub> &#x0003D; 1, <italic>x</italic><sub>6</sub> &#x0003D; 1 must be satisfied; and in Monk 3 (<italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub>), (<italic>x</italic><sub>5</sub> &#x0003D; 3 and <italic>x</italic><sub>4</sub> &#x0003D; 1) or (<italic>x</italic><sub>5</sub> &#x02260; 4 and <italic>x</italic><sub>2</sub> &#x02260; 3) have to be fulfilled. <italic>MTL</italic><sub><italic>ASELM</italic></sub> selects 14 neurons in the hidden layer from a total of 255. Figure <xref ref-type="fig" rid="F6">6A</xref> presents the first five neurons and the last one for the selected architecture. For example, if we observe the first neuron, it connects the input feature <italic>x</italic><sub>5</sub> with the outputs of <italic>T</italic><sub><italic>P</italic></sub> and <italic>T</italic><sub><italic>Sec</italic><sub>1</sub></sub>, but not with <italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub>. It can be observed that target associated to <italic>T</italic><sub><italic>P</italic></sub> and <italic>T</italic><sub><italic>Sec</italic><sub>1</sub></sub> match the value of <italic>x</italic><sub>5</sub>, what does not happen for <italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub>.</p>
<fig id="F6" position="float">
<label>Figure 6</label>
<caption><p>Final <italic>MTL</italic><sub><italic>ASELM</italic></sub> architectures for &#x0201C;Monk&#x00027;s Problems&#x0201D; <bold>(A)</bold>, &#x0201C;Telugu&#x0201D; <bold>(B)</bold>, &#x0201C;Iris Data&#x0201D; <bold>(C)</bold>, and &#x0201C;User Knowledge Modeling&#x0201D; <bold>(D)</bold>.</p></caption>
<graphic xlink:href="fninf-11-00039-g0006.tif"/>
</fig>
<p>&#x0201C;Telugu&#x0201D; language dataset represents one of six languages designated a classical language of India. This datasets consists of three input features that represent language formants. For &#x0201C;Telugu,&#x0201D; <italic>MTL</italic><sub><italic>ASELM</italic></sub> selects 4 neurons in the hidden layer from a total of 255 initial neurons. Figure <xref ref-type="fig" rid="F6">6B</xref> shows the final architecture obtained. As can be seen, this architecture uses only two of the three input features, what is quite interesting because in dialects with fewer than six vowels, two formants are only required to classify (Pal and Majumder, <xref ref-type="bibr" rid="B24">1977</xref>).</p>
<p>&#x0201C;Iris Data&#x0201D; (Figure <xref ref-type="fig" rid="F6">6C</xref>) represent a dataset of three types of flowers represented by four input features. For this dataset, 5 neurons are selected in the hidden layer from a total of 63 neurons. It can be observed that the input feature <italic>x</italic><sub>1</sub> has been removed. The results show that the proposed method has a much more simplified architecture than classical multitask learning, although the classification test is similar due to the simplicity of the problem (see Table <xref ref-type="table" rid="T2">2</xref>).</p>
<table-wrap position="float" id="T2">
<label>Table 2</label>
<caption><p>Classification Test &#x0201C;CT&#x0201D; (mean &#x000B1; standard deviation) with different schemes on several datasets.</p></caption>
<table frame="hsides" rules="groups">
<thead><tr>
<th valign="top" align="left"><bold>Dataset</bold></th>
<th valign="top" align="left"><bold>Scheme</bold></th>
<th valign="top" align="center"><bold>CT (mean &#x000B1;std)</bold></th>
<th valign="top" align="left"><bold>Removed</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Logic Domain</td>
<td valign="top" align="left"><italic>STL</italic></td>
<td valign="top" align="center">0.730 &#x000B1; 0.038</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic></td>
<td valign="top" align="center">0.702 &#x000B1; 0.026</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic><sub><italic>ASELM</italic></sub></td>
<td valign="top" align="center">0.746 &#x000B1; 0.035</td>
<td valign="top" align="left"><italic>x</italic><sub>5</sub>, <italic>x</italic><sub>6</sub>, and <italic>x</italic><sub>7</sub></td>
</tr>
<tr style="border-top: thin solid #000000;">
<td valign="top" align="left">Monk&#x00027;s Problems</td>
<td valign="top" align="left"><italic>STL</italic></td>
<td valign="top" align="center">0.954 &#x000B1; 0.016</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic></td>
<td valign="top" align="center">0.982 &#x000B1; 0.026</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic><sub><italic>ASELM</italic></sub></td>
<td valign="top" align="center">0.991 &#x000B1; 0.016</td>
<td valign="top" align="left">none</td>
</tr>
<tr style="border-top: thin solid #000000;">
<td valign="top" align="left">Telugu</td>
<td valign="top" align="left"><italic>STL</italic></td>
<td valign="top" align="center">0.836 &#x000B1; 0.012</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic></td>
<td valign="top" align="center">0.841 &#x000B1; 0.011</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic><sub><italic>ASELM</italic></sub></td>
<td valign="top" align="center">0.866 &#x000B1; 0.026</td>
<td valign="top" align="left"><italic>x</italic><sub>1</sub></td>
</tr>
<tr style="border-top: thin solid #000000;">
<td valign="top" align="left">Iris Data</td>
<td valign="top" align="left"><italic>STL</italic></td>
<td valign="top" align="center">0.978 &#x000B1; 0.005</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic></td>
<td valign="top" align="center">0.973 &#x000B1; 0.014</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic><sub><italic>ASELM</italic></sub></td>
<td valign="top" align="center">0.970 &#x000B1; 0.003</td>
<td valign="top" align="left"><italic>x</italic><sub>1</sub></td>
</tr>
<tr style="border-top: thin solid #000000;">
<td valign="top" align="left">User Knowledge Modeling</td>
<td valign="top" align="left"><italic>STL</italic></td>
<td valign="top" align="center">0.913 &#x000B1; 0.019</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic></td>
<td valign="top" align="center">0.928 &#x000B1; 0.036</td>
<td/>
</tr>
<tr>
<td/>
<td valign="top" align="left"><italic>MTL</italic><sub><italic>ASELM</italic></sub></td>
<td valign="top" align="center">0.950 &#x000B1; 0.006</td>
<td valign="top" align="left"><italic>x</italic><sub>4</sub></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p><italic>For MTL<sub>ASELM</sub>, removed inputs are shown</italic>.</p>
</table-wrap-foot>
</table-wrap>
<p>&#x0201C;User Knowledge Modeling&#x0201D; (Figure <xref ref-type="fig" rid="F6">6D</xref>) is the real dataset about the students&#x00027; knowledge status about the subject of Electrical DC Machines. The target is represented by four levels (very low, low, middle, and high). To give a multitasking approach a pairwise combination has been made (<italic>T</italic><sub><italic>P</italic></sub> &#x0003D; (very low &#x02228; low), <italic>T</italic><sub><italic>Sec</italic><sub>1</sub></sub> &#x0003D; (low &#x02228; middle), and <italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub> &#x0003D; (middle &#x02228; high)). It can be observed that <italic>T</italic><sub><italic>Sec</italic><sub>1</sub></sub> is removed. It is because <italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub> is more important to <italic>T</italic><sub><italic>P</italic></sub>, since <italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub> represents its opposite. Finally, 5 neurons are selected in the hidden layer from a total of 127 initial neurons.</p>
<p>Table <xref ref-type="table" rid="T2">2</xref> shows the classification accuracy results for all the data sets. Because the Logic Domain is an easy problem to solve for an MLP in an STL scheme, the number of samples has been reduced to 50 so that multitask learning can be appreciated. With all training samples, the result between STL and <italic>MTL</italic><sub><italic>ASELM</italic></sub> is practically invaluable. Taking into account this reduction of samples for the Logic Domain problem, <italic>MTL</italic><sub><italic>ASELM</italic></sub> presents better classification accuracy than STL and MTL. However, STL is better than the classic MTL, since MTL presents a completely interconnected scheme that is positively influenced by the related task (<italic>T</italic><sub><italic>Sec</italic><sub>2</sub></sub>) and negatively by unrelated tasks (<italic>T</italic><sub><italic>Sec</italic><sub>1</sub></sub> y <italic>T</italic><sub><italic>Sec</italic><sub>3</sub></sub>). This is not a general rule but it is an empirical result that shows that there are tasks that help the main task and others that are harmful.</p>
<p>For the rest of the data sets, the <italic>MTL</italic><sub><italic>ASELM</italic></sub> always provides the best results on average with a low standard deviation. This robustness in the solution is due to the particular initialization of the hidden weights that <italic>MTL</italic><sub><italic>ASELM</italic></sub> realizes.</p>
<p>To validate this assertion, a non-parametric statistical test has been performed. Specifically, the Wilcoxon Signed Ranks Test is used (Kruskal, <xref ref-type="bibr" rid="B16">1957</xref>). A peer review has been performed. Comparing <italic>MTL</italic><sub><italic>ASELM</italic></sub> to STL, the <italic>p</italic>-value obtained is 0.078, which indicates that there are significant differences to 92%, being the best <italic>MTL</italic><sub><italic>ASELM</italic></sub>. Likewise, when applying the test with <italic>MTL</italic><sub><italic>ASELM</italic></sub> against classic MTL, the <italic>p</italic> &#x0003D; 0.080 indicates that there are significant differences to 92%, being <italic>MTL</italic><sub><italic>ASELM</italic></sub> better than MTL. However, there are no significant differences between STL and MTL, since the <italic>p</italic> &#x0003D; 0.683.</p>
</sec>
<sec id="s6">
<title>6. Discussion and future work</title>
<p>This paper presents a method to select tasks to be used in a MTL scheme providing information about weight connection, hidden nodes, input features, and most helpful secondary tasks for the learning of the main task. This method has been named <italic>MTL</italic><sub><italic>ASELM</italic></sub> because it is based on the ASELM algorithm (Bueno-Crespo et al., <xref ref-type="bibr" rid="B3">2013</xref>), which proves to be an efficient method and single solution for the complete design of a MLP (input features, weights connections, and hidden nodes). By using secondary tasks as input features, <italic>MTL</italic><sub><italic>ASELM</italic></sub> applies the ASELM on the initial network which only has a single output corresponding to the main task. Thus, irrelevant nodes and connections are eliminated, what implies a selection of features (among which are the secondary tasks). After this stage, a final network is built with a dimension in the output layer equal to the number of secondary tasks selected as relevant plus one. Thus, the main drawback of multitask learning is eliminated, i.e., the negative influence of unrelated tasks. In addition, the modification of ASELM method to adapt it for a multitask scheme is achieved not only to eliminate connections from inputs features to hidden layer, but also from hidden to output layer. It is worth highlighting that, as well as ASELM, the <italic>MTL</italic><sub><italic>ASELM</italic></sub> method provides a single solution. This is due the fact that a binary initial selection of the hidden weights substitutes any random initialization process. Another important advantage is that it requires no parameter to be configured by the user. In the experiments section, it has been observed over real problems that the method <italic>MTL</italic><sub><italic>ASELM</italic></sub> gets a simplified solution with good generalization capabilities, in comparison to those obtained by a fully connected solution given by the classic MTL scheme.</p>
<p>Authors are working on extending the method to other learning models, such as Radial Basis Functions (RBF). Applying <italic>MTL</italic><sub><italic>ASELM</italic></sub> to regression problems is another research field since the ASELM is optimized for classification according to Huang et al. (<xref ref-type="bibr" rid="B12">2010</xref>). This limitation of the present method is due to the nature of ELM method, which is based on the pseudoinverse calculation. In this regard, we are working to use the sequential calculation pseudoinverse of Moore-Penrose (Van Heeswijk et al., <xref ref-type="bibr" rid="B32">2011</xref>; Tapson and Van Schaik, <xref ref-type="bibr" rid="B30">2013</xref>). Another line of research is to extend this method in the field of Deep Learning since new works on MultiTask Learning have lately appeared, most of them within the scope of Deep Learning (Liu et al., <xref ref-type="bibr" rid="B17">2015</xref>; Thanda and Venkatesan, <xref ref-type="bibr" rid="B31">2017</xref>).</p>
</sec>
<sec id="s7">
<title>Author contributions</title>
<p>AB: Proposed method, software programming, experiments, reviews, results, and conclusions. RMML: Introduction, software programming, contributions of ideas and reviews. RME: Method description, contributions of ideas and reviews. JS: Work direction, architecture selection, contributions of ideas, reviews, conclusions, and future work.</p>
<sec>
<title>Conflict of interest statement</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest. The handling Editor declared a shared affiliation, though no other collaboration, with several of the authors RMML and JS, and the handling Editor states that the process met the standards of a fair and objective review.</p>
</sec>
</sec>
</body>
<back>
<ack><p>This work has been supported by Spanish MINECO under grant TIN2016-78799-P (AEI/FEDER, UE). This paper is an extension of the one presented at the IWINAC 2015 conference (6th INTERNATIONAL WORK-CONFERENCE on the INTERPLAY between NATURAL and ARTIFICIAL COMPUTATION). Dedicated to the memory of Ph.D. Pedro Jos&#x000E9; Garc&#x000ED;a-Laencina.</p>
</ack>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Asuncion</surname> <given-names>A.</given-names></name> <name><surname>Newman</surname> <given-names>D.-J.</given-names></name></person-group> (<year>2007</year>). <source>UCI Machine Learning Repository.</source> <publisher-loc>Irvine, CA</publisher-loc>: <publisher-name>Department of Information and Computer Science, University of California</publisher-name>. Available online at: <ext-link ext-link-type="uri" xlink:href="http://archive.ics.uci.edu/ml/">http://archive.ics.uci.edu/ml/</ext-link></citation>
</ref>
<ref id="B2">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Baxter</surname> <given-names>J.</given-names></name></person-group> (<year>1993</year>). <article-title>The evolution of learning algorithms for artificial neural networks</article-title>. <source>Complex Syst.</source></citation>
</ref>
<ref id="B3">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bueno-Crespo</surname> <given-names>A.</given-names></name> <name><surname>Garc&#x000ED;a-Laencina</surname> <given-names>P. J.</given-names></name> <name><surname>Sancho-G&#x000F3;mez</surname> <given-names>J.-L.</given-names></name></person-group> (<year>2013</year>). <article-title>Neural architecture design based on extreme learning machine</article-title>. <source>Neural Netw.</source> <volume>48</volume>, <fpage>19</fpage>&#x02013;<lpage>24</lpage>. <pub-id pub-id-type="doi">10.1016/j.neunet.2013.06.010</pub-id><pub-id pub-id-type="pmid">23892908</pub-id></citation>
</ref>
<ref id="B4">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Bueno-Crespo</surname> <given-names>A.</given-names></name> <name><surname>Mench&#x000F3;n-Lara</surname> <given-names>R.-M.</given-names></name> <name><surname>Sancho-G&#x000F3;mez</surname> <given-names>J.-L.</given-names></name></person-group> (<year>2015</year>). <article-title>Related tasks selection to multitask learning schemes</article-title>, in <source>International Work-Conference on the Interplay between Natural and Artificial Computation</source> (<publisher-loc>Elche</publisher-loc>: <publisher-name>Springer</publisher-name>), <fpage>213</fpage>&#x02013;<lpage>221</lpage>. <pub-id pub-id-type="doi">10.1007/978-3-319-18833-1_23</pub-id></citation>
</ref>
<ref id="B5">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Caruana</surname> <given-names>R.</given-names></name></person-group> (<year>1995</year>). <article-title>Learning many related tasks at the same time with backpropagation</article-title>. <source>Adv. Neural Inform. Process. Syst.</source> <volume>7</volume>, <fpage>657</fpage>&#x02013;<lpage>664</lpage>.</citation>
</ref>
<ref id="B6">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Caruana</surname> <given-names>R.</given-names></name></person-group> (<year>1998</year>). <article-title>Multitask learning</article-title>, in <source>Learning to Learn</source> (<publisher-name>Springer</publisher-name>), <fpage>95</fpage>&#x02013;<lpage>133</lpage>.</citation>
</ref>
<ref id="B7">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Caruana</surname> <given-names>R.-A.</given-names></name></person-group> (<year>1993</year>). <article-title>Multitask connectionist learning</article-title>, in <source>Proceedings of the 1993 Connectionist Models Summer School</source> (<publisher-loc>Boulder</publisher-loc>).</citation>
</ref>
<ref id="B8">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Garc&#x000ED;a-Laencina</surname> <given-names>P.-J.</given-names></name> <name><surname>Bueno-Crespo</surname> <given-names>A.</given-names></name> <name><surname>Sancho-G&#x000F3;mez</surname> <given-names>J.-L.</given-names></name></person-group> (<year>2011</year>). <article-title>Design and training of neural architectures using extreme learning machine</article-title>, in <source>Neurocomputing: Learning, Architectures and Modeling</source>, ed <person-group person-group-type="editor"><name><surname>Mueller</surname> <given-names>E. T.</given-names></name></person-group> (<publisher-name>Nova Science Publishers</publisher-name>), <fpage>119</fpage>&#x02013;<lpage>145</lpage>.</citation>
</ref>
<ref id="B9">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Garc&#x000ED;a-Laencina</surname> <given-names>P.-J.</given-names></name> <name><surname>Sancho-G&#x000F3;mez</surname> <given-names>J.-L.</given-names></name> <name><surname>Figueiras-Vidal</surname> <given-names>A.-R.</given-names></name></person-group> (<year>2010</year>). <article-title>Pattern classification with missing data: a review</article-title>. <source>Neural Comput. Appl.</source> <volume>19</volume>, <fpage>263</fpage>&#x02013;<lpage>282</lpage>. <pub-id pub-id-type="doi">10.1007/s00521-009-0295-6</pub-id></citation>
</ref>
<ref id="B10">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Garc&#x000ED;a-Laencina</surname> <given-names>P.-J.</given-names></name> <name><surname>Sancho-G&#x000F3;mez</surname> <given-names>J.-L.</given-names></name> <name><surname>Figueiras-Vidal</surname> <given-names>A.-R.</given-names></name></person-group> (<year>2013</year>). <article-title>Classifying patterns with missing values using multi-task learning perceptrons</article-title>. <source>Expert Syst. Appl.</source> <volume>40</volume>, <fpage>1333</fpage>&#x02013;<lpage>1341</lpage>. <pub-id pub-id-type="doi">10.1016/j.eswa.2012.08.057</pub-id></citation>
</ref>
<ref id="B11">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname> <given-names>G.-B.</given-names></name> <name><surname>Chen</surname> <given-names>L.</given-names></name></person-group> (<year>2007</year>). <article-title>Convex incremental extreme learning machine</article-title>. <source>Neurocomputing</source> <volume>70</volume>, <fpage>3056</fpage>&#x02013;<lpage>3062</lpage>. <pub-id pub-id-type="doi">10.1016/j.neucom.2007.02.009</pub-id></citation>
</ref>
<ref id="B12">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname> <given-names>G.-B.</given-names></name> <name><surname>Ding</surname> <given-names>X.</given-names></name> <name><surname>Zhou</surname> <given-names>H.</given-names></name></person-group> (<year>2010</year>). <article-title>Optimization method based extreme learning machine for classification</article-title>. <source>Neurocomputing</source> <volume>74</volume>, <fpage>155</fpage>&#x02013;<lpage>163</lpage>. <pub-id pub-id-type="doi">10.1016/j.neucom.2010.02.019</pub-id></citation>
</ref>
<ref id="B13">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname> <given-names>G.-B.</given-names></name> <name><surname>Wang</surname> <given-names>D.</given-names></name> <name><surname>Lan</surname> <given-names>Y.</given-names></name></person-group> (<year>2011</year>). <article-title>Extreme learning machines: a survey</article-title>. <source>Int. J. Mach. Learn. Cybernet.</source> <volume>2</volume>, <fpage>107</fpage>&#x02013;<lpage>122</lpage>. <pub-id pub-id-type="doi">10.1007/s13042-011-0019-y</pub-id></citation>
</ref>
<ref id="B14">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname> <given-names>G.-B.</given-names></name> <name><surname>Zhu</surname> <given-names>Q.-Y.</given-names></name> <name><surname>Siew</surname> <given-names>C.-K.</given-names></name></person-group> (<year>2006</year>). <article-title>Extreme learning machine: theory and applications</article-title>. <source>Neurocomputing</source> <volume>70</volume>, <fpage>489</fpage>&#x02013;<lpage>501</lpage>. <pub-id pub-id-type="doi">10.1016/j.neucom.2005.12.126</pub-id></citation>
</ref>
<ref id="B15">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Igelnik</surname> <given-names>B.</given-names></name> <name><surname>Pao</surname> <given-names>Y.-H.</given-names></name></person-group> (<year>1997</year>). <article-title>Stochastic choice of basis functions in adaptive function approximation and the functional-link net</article-title>. <source>IEEE Trans. Neural Netw.</source> <volume>8</volume>, <fpage>452</fpage>&#x02013;<lpage>454</lpage>. <pub-id pub-id-type="pmid">18255650</pub-id></citation>
</ref>
<ref id="B16">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kruskal</surname> <given-names>W.-H.</given-names></name></person-group> (<year>1957</year>). <article-title>Historical notes on the wilcoxon unpaired two-sample test</article-title>. <source>J. Am. Stat. Assoc.</source> <volume>52</volume>, <fpage>356</fpage>&#x02013;<lpage>360</lpage>. <pub-id pub-id-type="doi">10.1080/01621459.1957.10501395</pub-id></citation>
</ref>
<ref id="B17">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Liu</surname> <given-names>X.</given-names></name> <name><surname>Gao</surname> <given-names>J.</given-names></name> <name><surname>He</surname> <given-names>X.</given-names></name> <name><surname>Deng</surname> <given-names>L.</given-names></name> <name><surname>Duh</surname> <given-names>K.</given-names></name> <name><surname>Wang</surname> <given-names>Y.-Y.</given-names></name></person-group> (<year>2015</year>). <article-title>Representation learning using multi-task deep neural networks for semantic classification and information retrieval</article-title>, in <source>HLT-NAACL</source> (<publisher-loc>Denver</publisher-loc>), <fpage>912</fpage>&#x02013;<lpage>921</lpage>. <pub-id pub-id-type="doi">10.3115/v1/n15-1092</pub-id></citation>
</ref>
<ref id="B18">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Mateo</surname> <given-names>F.</given-names></name> <name><surname>Lendasse</surname> <given-names>A.</given-names></name></person-group> (<year>2008</year>). <article-title>A variable selection approach based on the delta test for extreme learning machine models</article-title>, in <source>Proceedings of the European Symposium on Time Series Prediction</source> (<publisher-loc>Porvoo</publisher-loc>), <fpage>57</fpage>&#x02013;<lpage>66</lpage>.</citation>
</ref>
<ref id="B19">
<citation citation-type="thesis"><person-group person-group-type="author"><name><surname>McCracken</surname> <given-names>P.-J.</given-names></name></person-group> (<year>2003</year>). <source>Selective Representational Transfer Using Stochastic Noise</source>. Honurs thesis, <publisher-name>Jodrey School of Computer Science, Acadia University</publisher-name>.</citation>
</ref>
<ref id="B20">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Miche</surname> <given-names>Y.</given-names></name> <name><surname>Bas</surname> <given-names>P.</given-names></name> <name><surname>Jutten</surname> <given-names>C.</given-names></name> <name><surname>Simula</surname> <given-names>O.</given-names></name> <name><surname>Lendasse</surname> <given-names>A.</given-names></name></person-group> (<year>2008a</year>). <article-title>A methodology for building regression models using extreme learning machine: OP-ELM</article-title>, in <source>Proceedings of European Symposium on Artificial Neural Networks (ESANN)</source> (<publisher-loc>Bruges</publisher-loc>), <fpage>247</fpage>&#x02013;<lpage>252</lpage>.</citation>
</ref>
<ref id="B21">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Miche</surname> <given-names>Y.</given-names></name> <name><surname>Lendasse</surname> <given-names>A.</given-names></name></person-group> (<year>2009</year>). <article-title>A faster model selection criterion for OP-ELM and OP-KNN: Hannan-quinn criterion</article-title>, in <source>European Symposium on Artificial Neural Networks (ESANN)</source>, <volume>Vol. 9</volume> (<publisher-loc>Bruges</publisher-loc>), <fpage>177</fpage>&#x02013;<lpage>182</lpage>.</citation>
</ref>
<ref id="B22">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Miche</surname> <given-names>Y.</given-names></name> <name><surname>Sorjamaa</surname> <given-names>A.</given-names></name> <name><surname>Bas</surname> <given-names>P.</given-names></name> <name><surname>Simula</surname> <given-names>O.</given-names></name> <name><surname>Jutten</surname> <given-names>C.</given-names></name> <name><surname>Lendasse</surname> <given-names>A.</given-names></name></person-group> (<year>2010</year>). <article-title>OP-ELM: optimally pruned extreme learning machine</article-title>. <source>IEEE Trans. Neural Netw.</source> <volume>21</volume>, <fpage>158</fpage>&#x02013;<lpage>162</lpage>. <pub-id pub-id-type="doi">10.1109/TNN.2009.2036259</pub-id><pub-id pub-id-type="pmid">20007026</pub-id></citation>
</ref>
<ref id="B23">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Miche</surname> <given-names>Y.</given-names></name> <name><surname>Sorjamaa</surname> <given-names>A.</given-names></name> <name><surname>Lendasse</surname> <given-names>A.</given-names></name></person-group> (<year>2008b</year>). <article-title>OP-ELM: theory, experiments and a toolbox</article-title>, in <source>International Conference on Artificial Neural Networks</source> (<publisher-loc>Prague</publisher-loc>: <publisher-name>Springer</publisher-name>), <fpage>145</fpage>&#x02013;<lpage>154</lpage>. <pub-id pub-id-type="doi">10.1007/978-3-540-87536-9_16</pub-id></citation>
</ref>
<ref id="B24">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Pal</surname> <given-names>S.-K.</given-names></name> <name><surname>Majumder</surname> <given-names>D.-D.</given-names></name></person-group> (<year>1977</year>). <article-title>Fuzzy sets and decision making approaches in vowel and speaker recognition</article-title>. <source>IEEE Trans. Syst. Man Cybernet.</source> <volume>7</volume>, <fpage>625</fpage>&#x02013;<lpage>629</lpage>. <pub-id pub-id-type="doi">10.1109/TSMC.1977.4309789</pub-id></citation>
</ref>
<ref id="B25">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Pao</surname> <given-names>Y.-H.</given-names></name> <name><surname>Park</surname> <given-names>G.-H.</given-names></name> <name><surname>Sobajic</surname> <given-names>D.-J.</given-names></name></person-group> (<year>1994</year>). <article-title>Learning and generalization characteristics of the random vector functional-link net</article-title>. <source>Neurocomputing</source> <volume>6</volume>, <fpage>163</fpage>&#x02013;<lpage>180</lpage>. <pub-id pub-id-type="doi">10.1016/0925-2312(94)90053-1</pub-id></citation>
</ref>
<ref id="B26">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Rong</surname> <given-names>H.-J.</given-names></name> <name><surname>Ong</surname> <given-names>Y.-S.</given-names></name> <name><surname>Tan</surname> <given-names>A.-H.</given-names></name> <name><surname>Zhu</surname> <given-names>Z.</given-names></name></person-group> (<year>2008</year>). <article-title>A fast pruned-extreme learning machine for classification problem</article-title>. <source>Neurocomputing</source> <volume>72</volume>, <fpage>359</fpage>&#x02013;<lpage>366</lpage>. <pub-id pub-id-type="doi">10.1016/j.neucom.2008.01.005</pub-id></citation>
</ref>
<ref id="B27">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Serre</surname> <given-names>D.</given-names></name></person-group> (<year>2002</year>). <source>Matrices: Theory and Applications. Graduate Texts in Mathematics</source>. <publisher-loc>New York, NY</publisher-loc>: <publisher-name>Springer</publisher-name>.</citation>
</ref>
<ref id="B28">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Silver</surname> <given-names>D.</given-names></name> <name><surname>Mercer</surname> <given-names>R.</given-names></name></person-group> (<year>2001</year>). <article-title>Selective functional transfer: Inductive bias from related tasks</article-title>, in <source>IASTED International Conference on Artificial Intelligence and Soft Computing (ASC2001)</source> (<publisher-loc>Cancum</publisher-loc>), <fpage>182</fpage>&#x02013;<lpage>189</lpage>.</citation>
</ref>
<ref id="B29">
<citation citation-type="book"><person-group person-group-type="author"><name><surname>Simil&#x000E4;</surname> <given-names>T.</given-names></name> <name><surname>Tikka</surname> <given-names>J.</given-names></name></person-group> (<year>2005</year>). <article-title>Multiresponse sparse regression with application to multidimensional scaling</article-title>, in <source>International Conference on Artificial Neural Networks</source>, eds <person-group person-group-type="editor"><name><surname>Duch</surname> <given-names>W.</given-names></name> <name><surname>Kacprzyk</surname> <given-names>J.</given-names></name> <name><surname>Oja</surname> <given-names>E.</given-names></name> <name><surname>Zadro&#x0017C;ny</surname> <given-names>S.</given-names></name></person-group> (<publisher-loc>Heidelburg</publisher-loc>: <publisher-name>Springer</publisher-name>), <fpage>97</fpage>&#x02013;<lpage>102</lpage>.</citation>
</ref>
<ref id="B30">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tapson</surname> <given-names>J.</given-names></name> <name><surname>Van Schaik</surname> <given-names>A.</given-names></name></person-group> (<year>2013</year>). <article-title>Learning the pseudoinverse solution to network weights</article-title>. <source>Neural Netw.</source> <volume>45</volume>, <fpage>94</fpage>&#x02013;<lpage>100</lpage>. <pub-id pub-id-type="doi">10.1016/j.neunet.2013.02.008</pub-id><pub-id pub-id-type="pmid">23541926</pub-id></citation>
</ref>
<ref id="B31">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Thanda</surname> <given-names>A.</given-names></name> <name><surname>Venkatesan</surname> <given-names>S.-M.</given-names></name></person-group> (<year>2017</year>). <article-title>Multi-task learning of deep neural networks for audio visual automatic speech recognition</article-title>. <source>arXiv:1701.02477</source>.</citation>
</ref>
<ref id="B32">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Van Heeswijk</surname> <given-names>M.</given-names></name> <name><surname>Miche</surname> <given-names>Y.</given-names></name> <name><surname>Oja</surname> <given-names>E.</given-names></name> <name><surname>Lendasse</surname> <given-names>A.</given-names></name></person-group> (<year>2011</year>). <article-title>GPU-accelerated and parallelized ELM ensembles for large-scale regression</article-title>. <source>Neurocomputing</source> <volume>74</volume>, <fpage>2430</fpage>&#x02013;<lpage>2437</lpage>. <pub-id pub-id-type="doi">10.1016/j.neucom.2010.11.034</pub-id></citation>
</ref>
</ref-list>
</back>
</article>