Language identification in the limit
Language identification in the limit is a formal model for inductive inference of formal languages, mainly by computers. It was introduced by E. Mark Gold in a technical report and a journal article with the same title.
In this model, a teacher provides to a learner some presentation of some formal language. The learning is seen as an infinite process. Each time the learner reads an element of the presentation, it should provide a representation for the language.
Gold defines that a learner can identify in the limit a class of languages if, given any presentation of any language in the class, the learner will produce only a finite number of wrong representations, and then stick with the correct representation. However, the learner need not be able to announce its correctness; and the teacher might present a counterexample to any representation arbitrarily long after.
Gold defined two types of presentations:
- Text : an enumeration of all strings the language consists of.
- Complete presentation : an enumeration of all possible strings, each with a label indicating if the string belongs to the language or not.
Learnability
Gold's paper introduces for contrast the stronger models
- Finite identification, and
- Fixed-time identification.
Examples
Teacher | Learner | |
1. | abab | abab |
2. | ba | abab+ba |
3. | baba | abab+ba+baba |
4. | ba | abab+ba+baba |
5. | baba | abab+ba+baba |
6. | abab | abab+ba+baba |
7. | ε | abab+ba+baba+ε |
... | ... |
It is instructive to look at concrete examples of learning sessions the definition of identification in the limit speaks about.
- A fictitious session to learn a regular language L over the alphabet from text presentation. In each step, the teacher gives a string belonging to L, and the learner answers a guess for L, encoded as a regular expression. In step 3, the learner's guess is not consistent with the strings seen so far; in step 4, the teacher gives a string repeatedly. After step 6, the learner sticks to the regular expression *. If this happens to be a description of the language L the teacher has in mind, it is said that the learner has learned that language. If a computer program for the learner's role would exist that was able to successfully learn each regular language, that class of languages would be identifiable in the limit. Gold has shown that this is not the case.
- A particular learning algorithm always guessing L to be just the union of all strings seen so far. If L is a finite language, the learner will eventually guess it correctly, however, without being able to tell when. Although the guess didn't change during step 3 to 6, the learner couldn't be sure to be correct. Gold has shown that the class of finite languages is identifiable in the limit, however, this class is neither finitely nor fixed-time identifiable.
- Learning from complete presentation by telling. In each step, the teacher gives a string and tells whether it belongs to L or not. Each possible string is eventually classified in this way by the teacher.
- Learning from complete presentation by request. The learner gives a query string, the teacher tell whether it belongs to L or not ; the learner then gives a guess for L, followed by the next query string. In this example, the learner happens to query in each step just the same string as given by the teacher in example 3. In general, Gold has shown that each language class identifiable in the request-presentation setting is also identifiable in the telling-presentation setting, since the learner, instead of querying a string, just needs to wait until it is eventually given by the teacher.
Learnability characterization
If a learner is required to be effective, then an indexed class of recursive languages is learnable in the limit if there is an effective procedure that uniformly enumerates tell-tales for each language in the class. It is not hard to see that if an ideal learner is allowed, then an indexed class of languages is learnable in the limit if each language in the class has a tell-tale.
Language classes learnable in the limit
The table shows which language classes are identifiable in the limit in which learning model. On the right-hand side, each language class is a superclass of all lower classes. Each learning model can identify in the limit all classes below it. In particular, the class of finite languages is identifiable in the limit by text presentation, while the class of regular languages is not.Pattern Languages, introduced by Dana Angluin in another 1980 paper, are also identifiable by normal text presentation; they are omitted in the table, since they are [|above] the singleton and below the primitive recursive language class, but incomparable to the classes in between.
Sufficient conditions for learnability
Condition 1 in Angluin's paper is not always easy to verify. Therefore, people come up with various sufficient conditions for the learnability of a language class. See also Induction of regular languages for learnable subclasses of regular languages.Finite thickness
A class of languages has finite thickness if every non-empty set of strings is contained in at most finitely many languages of the class. This is exactly Condition 3 in Angluin's paper. Angluin showed that if a class of recursive languages has finite thickness, then it is learnable in the limit.A class with finite thickness certainly satisfies MEF-condition and MFF-condition; in other words, finite thickness implies M-finite thickness.
Finite elasticity
A class of languages is said to have finite elasticity if for every infinite sequence of strings and every infinite sequence of languages in the class, there exists a finite number n such that implies is inconsistent with.It is shown that a class of recursively enumerable languages is learnable in the limit if it has finite elasticity.
Mind change bound
A bound over the number of hypothesis changes that occur before convergence.Other concepts
Infinite cross property
A language L has infinite cross property within a class of languages if there is an infinite sequence of distinct languages in and a sequence of finite subset such that:- ,
- ,
- , and
- .
It is not hard to see that if there is a language with infinite cross property within a class of languages, then that class of languages has infinite elasticity.
Relations between concepts
- Finite thickness implies finite elasticity; the converse is not true.
- Finite elasticity and conservatively learnable implies the existence of a mind change bound.
- Finite elasticity and M-finite thickness implies the existence of a mind change bound. However, M-finite thickness alone does not imply the existence of a mind change bound; neither does the existence of a mind change bound imply M-finite thickness.
- Existence of a mind change bound implies learnability; the converse is not true.
- If we allow for noncomputable learners, then finite elasticity implies the existence of a mind change bound; the converse is not true.
- If there is no accumulation order for a class of languages, then there is a language that has infinite cross property within the class, which in turn implies infinite elasticity of the class.
Open questions
- If a countable class of recursive languages has a mind change bound for noncomputable learners, does the class also have a mind change bound for computable learners, or is the class unlearnable by a computable learner?