Jump to content

Solomonoff's theory of inductive inference

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Multipundit (talk | contribs) at 04:12, 15 March 2013. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Around 1960, Ray Solomonoff founded the theory of universal inductive inference, the theory of prediction based on observations; for example, predicting the next symbol based upon a given series of symbols. The only assumption is that the environment follows some unknown but computable probability distribution.

It achieves excellent theoretical results and is based on solid philosophical foundations:[1] It is a mathematically formalized Occam's razor:[2][3][4][5][6] Shorter computable theories have more weight when calculating the probability of the next observation, using all computable theories which perfectly describe previous observations. Marcus Hutter's universal artificial intelligence builds upon this to calculate the expected value of an action.

The proof of the "razor" is based on the known mathematical properties of a probability distribution over a denumerable set (we can use these properties because the infinite set of all programs is a denumerable): the sum S of the probabilities of all programs must be exactly equal to one (as per the definition of probability) thus the probabilities must decrease as we enumerate the infinite set of all programs, otherwise S will be strictly greater than one.

Fundamental ingredients of the theory are the concepts of algorithmic probability and Kolmogorov complexity. The universal prior probability of any prefix p of a computable sequence x is the sum of the probabilities of all programs (for a universal computer) that compute something starting with p. Given some p and any computable but unknown probability distribution from which x is sampled, the universal prior and Bayes' theorem can be used to predict the yet unseen parts of x in optimal fashion.

Though Solomonoff's inductive inference is not computable, several AIXI-derived algorithms approximate it in order to make it run on a modern computer. The more they are given computing power, the more their predictions are close to the predictions of inductive inference (their mathematical limit is Solomonoff's inductive inference).[7][8][9]

Another direction of inductive inference is based on E. Mark Gold's model of learning in the limit from 1967 and has developed since then more and more models of learning.[10] The general scenario is the following: Given a class S of computable functions, is there a learner (that is, recursive functional) which for any input of the form (f(0),f(1),...,f(n)) outputs a hypothesis (an index e with respect to a previously agreed on acceptable numbering of all computable functions; the indexed function should be consistent with the given values of f). A learner M learns a function f if almost all its hypotheses are the same index e, which generates the function f; M learns S if M learns every f in S. Basic results are that all recursively enumerable classes of functions are learnable while the class REC of all computable functions is not learnable. Many related models have been considered and also the learning of classes of recursively enumerable sets from positive data is a topic studied from Gold's pioneering paper in 1967 onwards. A far reaching extension of the Gold’s approach is developed by Schmidhuber's theory of generalized Kolmogorov complexities,[11] which are kinds of super-recursive algorithms.

The third mathematically based direction of inductive inference makes use of the theory of automata and computation. In this context, the process of inductive inference is performed by an abstract automaton called an inductive Turing machine (Burgin, 2005). Inductive Turing machines represent the next step in the development of computer science providing better models for contemporary computers and computer networks (Burgin, 2001) and forming an important class of super-recursive algorithms as they satisfy all conditions in the definition of algorithm. Namely, each inductive Turing machines is a type of effective method in which a definite list of well-defined instructions for completing a task, when given an initial state, will proceed through a well-defined series of successive states, eventually terminating in an end-state. The difference between an inductive Turing machine and a Turing machine is that to produce the result a Turing machine has to stop, while in some cases an inductive Turing machine can do this without stopping. Kleene called procedures that could run forever without stopping by the name calculation procedure or algorithm (Kleene 1952:137). Kleene also demanded that such an algorithm must eventually exhibit "some object" (Kleene 1952:137). This condition is satisfied by inductive Turing machines, as their results are exhibited after a finite number of steps, but inductive Turing machines do not always tell at which step the result has been obtained.

Simple inductive Turing machines are equivalent to other models of computation. More advanced inductive Turing machines are much more powerful. It is proved (Burgin, 2005) that limiting partial recursive functions, trial and error predicates, general Turing machines, and simple inductive Turing machines are equivalent models of computation. However, simple inductive Turing machines and general Turing machines give direct constructions of computing automata, which are thoroughly grounded in physical machines. In contrast, trial and error predicates, limiting recursive functions and limiting partial recursive functions present syntactic systems of symbols with formal rules for their manipulation. Simple inductive Turing machines and general Turing machines are related to limiting partial recursive functions and trial and error predicates as Turing machines are related to partial recursive functions and lambda-calculus.

Note that only simple inductive Turing machines have the same structure (but different functioning semantics of the output mode) as Turing machines. Other types of inductive Turing machines have an essentially more advanced structure due to the structured memory and more powerful instructions. Their utilization for inference and learning allows achieving higher efficiency and better reflects learning of people (Burgin and Klinger, 2004).

Some researchers confuse computations of inductive Turing machines with non-stopping computations or with infinite time computations. First, some of computations of inductive Turing machines halt. As in the case of conventional Turing machines, some halting computations give the result, while others do not give. Second, some non-stopping computations of inductive Turing machines give results, while others do not give. Rules of inductive Turing machines determine when a computation (stopping or non-stopping) gives a result. Namely, an inductive Turing machine produces output from time to time and once this output stops changing, it is considered the result of the computation. It is necessary to know that descriptions of this rule in some papers are incorrect. For instance, Davis (2006: 128) formulates the rule when result is obtained without stopping as "… once the correct output has been produced any subsequent output will simply repeat this correct result." Third, in contrast to the widespread misconception, inductive Turing machines give results (when it happens) always after a finite number of steps (in finite time) in contrast to infinite and infinite-time computations. There are two main distinctions between conventional Turing machines and simple inductive Turing machines. The first distinction is that even simple inductive Turing machines can do much more than conventional Turing machines. The second distinction is that a conventional Turing machine always informs (by halting or by coming to a final state) when the result is obtained, while a simple inductive Turing machine in some cases does inform about reaching the result, while in other cases (where the conventional Turing machine is helpless), it does not inform. People have an illusion that a computer always itself informs (by halting or by other means) when the result is obtained. In contrast to this, users themselves have to decide in many cases whether the computed result is what they need or it is necessary to continue computations. Indeed, everyday desktop computer applications like word processors and spreadsheets spend most of their time waiting in event loops, and do not terminate until directed to do so by users.

Evolutionary approach to inductive inference is accomplished by another class of automata called evolutionary inductive Turing machines (Burgin and Eberbach, 2009; 2012). An ‘’’evolutionary inductive Turing machine’’’ is a (possibly infinite) sequence E = {A[t]; t = 1, 2, 3, ... } of inductive Turing machines A[t] each working on generations X[t] which are coded as words in the alphabet of the machines A[t]. The goal is to build a “population” Z satisfying the inference condition. The automaton A[t] called a component, or a level automaton, of E represents (encodes) a one-level evolutionary algorithm that works with input generations X[i] of the population by applying the variation operators v and selection operator s. The first generation X[0] is given as input to E and is processed by the automaton A[1], which generates/produces the first generation X[1] as its transfer output, which goes to the automaton A[2]. For all t = 1, 2, 3, ... , the automaton A[t] receives the generation X[t - 1] as its input from A[t - 1] and then applies the variation operator v and selection operator s, producing the generation X[i + 1] and sending it to A[t + 1] to continue evolution.


See also

Notes

  1. ^ Samuel Rathmanner and Marcus Hutter. A philosophical treatise of universal induction. Entropy, 13(6):1076–1136, 2011
  2. ^ JJ McCall. Induction: From Kolmogorov and Solomonoff to De Finetti and Back to Kolmogorov - Metroeconomica, 2004 - Wiley Online Library.
  3. ^ D Stork. Foundations of Occam's razor and parsimony in learning from ricoh.com - NIPS 2001 Workshop, 2001
  4. ^ AN Soklakov. Occam's razor as a formal basis for a physical theory from arxiv.org - Foundations of Physics Letters, 2002 - Springer
  5. ^ J HERNANDEZ-ORALLO. Beyond the Turing Test from uclm.es - Journal of Logic, Language, and …, 2000 - dsi.uclm.es
  6. ^ M Hutter. On the existence and convergence of computable universal priors from arxiv.org - Algorithmic Learning Theory, 2003 - Springer
  7. ^ J Veness, KS Ng, M Hutter. "A Monte Carlo AIXI Approximation"- Arxiv preprint arXiv, 2009 arxiv.org
  8. ^ J Veness, KS Ng, M Hutter. Reinforcement Learning via AIXI Approximation from arxiv.org- Arxiv preprint arXiv:1007.2049, 2010 - aaai.org
  9. ^ S Pankov. A computational approximation to the AIXI model from agiri.org - Artificial general intelligence, 2008: proceedings of …, 2008 - books.google.com
  10. ^ E. Mark Gold. Language identification in the limit. Information and Control 10:447 - 474, 1967.
  11. ^ J. Schmidhuber (2002). "Hierarchies of generalized Kolmogorov complexities and nonenumerable universal measures computable in the limit". International Journal of Foundations of Computer Science. 13 (4): 587–612. doi:10.1142/S0129054102001291.

References

  • Angluin, D., and Smith, C. H. (1983) Inductive Inference: Theory and Methods, Comput. Surveys, v. 15, no. 3, pp. 237–269
  • Mark Burgin (2005), Super-recursive algorithms, Monographs in computer science, Springer. ISBN 0-387-95569-0
  • Burgin, M. and Klinger, A. Experience, Generations, and Limits in Machine Learning, Theoretical Computer Science, v. 317, No. 1/3, 2004, pp. 71–91
  • Gasarch, W. and Smith, C. H. (1997) A survey of inductive inference with an emphasis on queries. Complexity, logic, and recursion theory, Lecture Notes in Pure and Appl. Math., 187, Dekker, New York, pp. 225–260.
  • Sanjay Jain, Daniel Osherson, James Royer and Arun Sharma, Systems that Learn: An Introduction to Learning Theory (second edition), The MIT Press, Cambridge, Massachusetts, 1999.
  • Ming Li and Paul Vitanyi, An Introduction to Kolmogorov Complexity and Its Applications, 2nd Edition, Springer Verlag, 1997.
  • Daniel Osherson, Michael Stob and Scott Weinstein, Systems That Learn, An Introduction to Learning Theory for Cognitive and Computer Scientists, Bradford - The MIT Press, Cambridge, Massachusetts, 1986.
  • Ray Solomonoff "Two Kinds of Probabilistic Induction," The Computer Journal, Vol. 42, No. 4, 1999
  • Ray Solomonoff "A Formal Theory of Inductive Inference, Part I" Information and Control, Part I: Vol 7, No. 1, pp. 1–22, March 1964
  • Ray Solomonoff "A Formal Theory of Inductive Inference, Part II" Information and Control, Part II: Vol. 7, No. 2, pp. 224–254, June 1964
  • Hay, Nick. "Universal Semimeasures: An Introduction," CDMTCS Research Report Series, University of Auckland, Feb. 2007.