Meta-learning (computer science): Difference between revisions

Content deleted Content added
Removing "more citations needed" (enough already)
Improving references
Line 3:
{{See also|Ensemble learning}}
{{machine learning}}
'''Meta learning'''<ref name="sch1987">{{cite journal | last1 = Schmidhuber | first1 = Jürgen | year = 1987| title = Evolutionary principles in self-referential learning, or on learning how to learn: the meta-meta-... hook | url= http://people.idsia.ch/~juergen/diploma1987ocr.pdf | journal = Diploma Thesis, Tech. Univ. Munich | language = en}}</ref><ref name="scholarpedia">{{cite journal | last1 = Schaul | first1 = Tom | last2 = Schmidhuber | first2 = Jürgen | year = 2010| title = Metalearning | journal = Scholarpedia | volume = 5 | issue = 6| page = 4650 | doi=10.4249/scholarpedia.4650| bibcode = 2010SchpJ...5.4650S | doi-access = free | language = en }}</ref>
is a subfield of [[machine learning]] where automatic learning algorithms are applied to [[meta-data|metadata]] about machine learning experiments. As of 2017, the term had not found a standard interpretation, however the main goal is to use such metadata to understand how automatic learning can become flexible in solving learning problems, hence to improve the performance of existing [[learning algorithms]] or to learn (induce) the learning algorithm itself, hence the alternative term '''learning to learn'''.<ref name="sch1987" />
 
Flexibility is important because each learning algorithm is based on a set of assumptions about the data, its [[inductive bias]].<ref name="utgoff1986">{{Cite journalbook
| author = P. E. Utgoff
| titlechapter = Shift of bias for inductive concept learning
| journaleditor = In R. Michalski, J. Carbonell, & T. Mitchell: Machine Learning
| title = Machine Learning: An Artificial Intelligence Approach
| pages = 163–190
| year = 1986
| language = en
| url = http://books.google.com/books?hl=en&lr=&id=f9RylgKpHZsC&oi=fnd&pg=PA107&ots=VeZN4AF3GH&sig=xDRArOx5vCkRaLTXdFFaAs9Qs78#v=onepage&q=utgoff&f=false
}}</ref> This means that it will only learn well if the bias matches the learning problem. A learning algorithm may perform very well in one ___domain, but not on the next. This poses strong restrictions on the use of [[machine learning]] or [[data mining]] techniques, since the relationship between the learning problem (often some kind of [[database]]) and the effectiveness of different learning algorithms is not yet understood.
 
By using different kinds of metadata, like properties of the learning problem, algorithm properties (like performance measures), or patterns previously derived from the data, it is possible to learn, select, alter or combine different learning algorithms to effectively solve a given learning problem. Critiques of meta learning approaches bear a strong resemblance to the critique of [[metaheuristic]], a possibly related problem. A good analogy to meta-learning, and the inspiration for [[Jürgen Schmidhuber]]'s early work (1987)<ref name="sch1987" /> and [[Yoshua Bengio]] et al.'s work (1991),<ref>{{cite conference|last1=Bengio|first1=Yoshua|last2=Bengio|first2=Samy|last3=Cloutier|first3=Jocelyn|conference=IJCNN'91|url=http://bengio.abracadoudou.com/publications/pdf/bengio_1991_ijcnn.pdf|date=1991|title=Learning to learn a synaptic rule|language=en}}</ref> considers that genetic evolution learns the learning procedure encoded in genes and executed in each individual's brain. In an open-ended hierarchical meta learning system<ref name="sch1987" /> using [[genetic programming]], better evolutionary methods can be learned by meta evolution, which itself can be improved by meta meta evolution, etc.<ref name="sch1987" />
 
== Definition ==
Line 23 ⟶ 26:
** from different domains.
* Learning bias must be chosen dynamically.
''Bias'' refers to the assumptions that influence the choice of explanatory hypotheses<ref>{{Cite book|title=Metalearning - Springer|doi=10.1007/978-3-540-73263-1|series = Cognitive Technologies|year = 2009|isbn = 978-3-540-73262-4|last1 = Brazdil|first1 = Pavel|last2=Carrier|first2=Christophe Giraud|last3=Soares|first3=Carlos|last4=Vilalta|first4=Ricardo|language=en}}</ref> and not the notion of bias represented in the [[bias-variance dilemma]]. Meta learning is concerned with two aspects of learning bias.
* Declarative bias specifies the representation of the space of hypotheses, and affects the size of the search space (e.g., represent hypotheses using linear functions only).
* Procedural bias imposes constraints on the ordering of the inductive hypotheses (e.g., preferring smaller hypotheses).<ref>{{cite journal |last1=Gordon |first1=Diana |last2=Desjardins |first2=Marie |title=Evaluation and Selection of Biases in Machine Learning |journal=Machine Learning |date=1995 |volume=20 |pages=5–22 |doi=10.1023/A:1022630017346 |url=https://link.springer.com/content/pdf/10.1023/A:1022630017346.pdf |access-date=27 March 2020|doi-access=free|language=en }}</ref>
 
==Common approaches==
Line 73 ⟶ 76:
Some approaches which have been viewed as instances of meta learning:
 
* [[Recurrent neural networks]] (RNNs) are universal computers. In 1993, [[Jürgen Schmidhuber]] showed how "self-referential" RNNs can in principle learn by [[backpropagation]] to run their own weight change algorithm, which may be quite different from backpropagation.<ref name="sch1993">{{cite journal | last1 = Schmidhuber | first1 = Jürgen | year = 1993| title = A self-referential weight matrix | journal = Proceedings of ICANN'93, Amsterdam | pages = 446–451 | language = en}}</ref> In 2001, [[Sepp Hochreiter]] & A.S. Younger & P.R. Conwell built a successful supervised meta learner based on [[Long short-term memory]] RNNs. It learned through backpropagation a learning algorithm for quadratic functions that is much faster than backpropagation.<ref name="hoch2001">{{cite journal | last1 = Hochreiter | first1 = Sepp | last2 = Younger | first2 = A. S. | last3 = Conwell | first3 = P. R. | year = 2001| title = Learning to Learn Using Gradient Descent | journal = Proceedings of ICANN'01| pages = 87–94| language = en}}</ref><ref name="scholarpedia" /> Researchers at [[Deepmind]] (Marcin Andrychowicz et al.) extended this approach to optimization in 2017.<ref name="marcin2017">{{cite journal | last1 = Andrychowicz | first1 = Marcin | last2 = Denil | first2 = Misha | last3 = Gomez | first3 = Sergio | last4 = Hoffmann | first4 = Matthew | last5 = Pfau | first5 = David | last6 = Schaul | first6 = Tom | last7 = Shillingford | first7 = Brendan | last8 = de Freitas | first8 = Nando | year = 2017| title = Learning to learn by gradient descent by gradient descent | journal = Proceedings of ICML'17, Sydney, Australia}}</ref>
* In the 1990s, Meta [[Reinforcement Learning]] or Meta RL was achieved in Schmidhuber's research group through self-modifying policies written in a universal programming language that contains special instructions for changing the policy itself. There is a single lifelong trial. The goal of the RL agent is to maximize reward. It learns to accelerate reward intake by continually improving its own learning algorithm which is part of the "self-referential" policy.<ref name="sch1994">{{cite journal | last1 = Schmidhuber | first1 = Jürgen | year = 1994| title = On learning how to learn learning strategies | journal = Technical Report FKI-198-94, Tech. Univ. Munich | language = en | url = http://people.idsia.ch/~juergen/FKI-198-94ocr.pdf}}</ref><ref name="sch1997">{{cite journal | last1 = Schmidhuber | first1 = Jürgen | last2 = Zhao | first2 = J. | last3 = Wiering | first3 = M. | year = 1997| title = Shifting inductive bias with success-story algorithm, adaptive Levin search, and incremental self-improvement | journal = Machine Learning | volume = 28 | pages = 105–130 | doi=10.1023/a:1007383707642| doi-access = free| language = en }}</ref>
* An extreme type of Meta [[Reinforcement Learning]] is embodied by the [[Gödel machine]], a theoretical construct which can inspect and modify any part of its own software which also contains a general [[Automated theorem proving|theorem prover]]. It can achieve [[recursive self-improvement]] in a provably optimal way.<ref name="goedelmachine">{{cite journal | last1 = Schmidhuber | first1 = Jürgen | year = 2006| title = Gödel machines: Fully Self-Referential Optimal Universal Self-Improvers | url=https://archive.org/details/arxiv-cs0309048| journal = In B. Goertzel & C. Pennachin, Eds.: Artificial General Intelligence | pages = 199–226 | language=en}}</ref><ref name="scholarpedia" />
* ''Model-Agnostic Meta-Learning'' (MAML) was introduced in 2017 by [[Chelsea Finn]] et al.<ref name="maml" /> Given a sequence of tasks, the parameters of a given model are trained such that few iterations of gradient descent with few training data from a new task will lead to good generalization performance on that task. MAML "trains the model to be easy to fine-tune."<ref name="maml" /> MAML was successfully applied to few-shot image classification benchmarks and to policy-gradient-based reinforcement learning.<ref name="maml">{{cite arXiv | last1 = Finn | first1 = Chelsea | last2 = Abbeel | first2 = Pieter | last3 = Levine | first3 = Sergey |year = 2017| title = Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks | eprint=1703.03400|class=cs.LG|language=en }}</ref>
* ''Discovering [[meta-knowledge]]'' works by inducing knowledge (e.g. rules) that expresses how each learning method will perform on different learning problems. The metadata is formed by characteristics of the data (general, statistical, information-theoretic,... ) in the learning problem, and characteristics of the learning algorithm (type, parameter settings, performance measures,...). Another learning algorithm then learns how the data characteristics relate to the algorithm characteristics. Given a new learning problem, the data characteristics are measured, and the performance of different learning algorithms are predicted. Hence, one can predict the algorithms best suited for the new problem.
* ''Stacked generalisation'' works by combining multiple (different) learning algorithms. The metadata is formed by the predictions of those different algorithms. Another learning algorithm learns from this metadata to predict which combinations of algorithms give generally good results. Given a new learning problem, the predictions of the selected set of algorithms are combined (e.g. by (weighted) voting) to provide the final prediction. Since each algorithm is deemed to work on a subset of problems, a combination is hoped to be more flexible and able to make good predictions.
Line 83 ⟶ 86:
* ''[[Inductive transfer]]'' studies how the learning process can be improved over time. Metadata consists of knowledge about previous learning episodes and is used to efficiently develop an effective hypothesis for a new task. A related approach is called [[learning to learn]], in which the goal is to use acquired knowledge from one ___domain to help learning in other domains.
* Other approaches using metadata to improve automatic learning are [[learning classifier system]]s, [[case-based reasoning]] and [[constraint satisfaction]].
* Some initial, theoretical work has been initiated to use ''[[Applied Behavioral Analysis]]'' as a foundation for agent-mediated meta-learning about the performances of human learners, and adjust the instructional course of an artificial agent.<ref name="Begoli, PRS-ABA, ABA Ontology">{{cite journal|last1=Begoli|first1=Edmon|title=Procedural-Reasoning Architecture for Applied Behavior Analysis-based Instructions|journal=Doctoral Dissertations|date=May 2014|publisher=University of Tennessee, Knoxville|___location=Knoxville, Tennessee, USA|pages=44–79|url=http://trace.tennessee.edu/utk_graddiss/2749|access-date=14 October 2017|language=en}}</ref>
* [[AutoML]] such as Google Brain's "AI building AI" project, which according to Google briefly exceeded existing [[ImageNet]] benchmarks in 2017.<ref>{{cite news|title=Robots Are Now 'Creating New Robots,' Tech Reporter Says|url=https://www.npr.org/2018/03/15/593863645/robots-are-now-creating-new-robots-tech-reporter-says|access-date=29 March 2018|work=NPR.org|date=2018|language=en}}</ref><ref>{{cite news|title=AutoML for large scale image classification and object detection|url=https://research.googleblog.com/2017/11/automl-for-large-scale-image.html|access-date=29 March 2018|work=Google Research Blog|date=November 2017|language=en}}</ref>
 
<!--==See also==
Line 93 ⟶ 96:
== External links ==
* [http://www.scholarpedia.org/article/Metalearning Metalearning] article in [[Scholarpedia]]
* {{cite journal|last1=Vilalta |first1=R. and |last2=Drissi |first2=Y. (|year=2002). ''[|url=http://axon.cs.byu.edu/Dan/478/misc/Vilalta.pdf |title=A perspective view and survey of meta-learning]'', |journal=Artificial Intelligence Review, |volume=18(|issue=2), |pages=77–95.|language=en}}
* {{cite book|last1=Giraud-Carrier, |first=C., & |last2=Keller, |first2=J. (|year=2002). |title=Dealing with the data flood, |editor-first=J. |editor-last=Meij (ed), |chapter =Meta-Learning. |publisher=STT/Beweton, |___location=The Hague|language=en|url=https://stt.nl/en/futures-studies/dealing-with-the-data-flood/stt65-dealing-with-the-data-flood-mining-data-text-and-multimedia}}
* Brazdil{{cite book|last1=Brazdil|first1=P., |last2=Giraud-Carrier |first2=C., |last3=Soares |first3=C., |last4=Vilalta |first4=R. (|year=2009) [|url=https://books.google.com/books?id=-Gsi_cxZGpcC |title=Metalearning: applications to data mining], |chapter =Metalearning: Concepts and Systems, |publisher=Springer|language=en}}
* Video courses about Meta-Learning with step-by-step explanation of [https://www.youtube.com/watch?v=IkDw22a8BDE MAML], [https://www.youtube.com/watch?v=rHGPfl0pvLY Prototypical Networks], and [https://www.youtube.com/watch?v=j8qDaVfrO_c Relation Networks].