Language model

From testwiki
Jump to navigation Jump to search

Template:Short description Template:Use dmy dates

A language model is a computational model that predicts sequences in natural language.[1][2] Language models are useful for a variety of tasks, including speech recognition,[3] machine translation,[4] natural language generation (generating more human-like text), optical character recognition, route optimization,[5] handwriting recognition,[6] grammar induction,[7] information retrieval[8][9] and disaster response.[10]

Large language models (LLMs), currently their most advanced form as of 2026, are predominantly based on transformers trained on larger datasets (frequently using texts scraped from the public internet). They have superseded recurrent neural network-based models, which had previously superseded the purely statistical models, such as the word n-gram language model.

History

During the 1950s, Noam Chomsky developed influential formal approaches to describing language, including models based on formal grammar.[11]

In the 1970s, Frederick Jelinek and colleagues at IBM Research developed statistical approaches to language modeling as part of their work on speech recognition. The group used probabilistic n-gram models of word sequences and introduced perplexity as an information-theoretic measure of the uncertainty of a language model.[12] Jelinek became a leading proponent of statistical language modeling.[13]

Neural language models became increasingly important in the 2000s, with Yoshua Bengio and co-authors introducing a probabilistic neural network language model that learned distributed word representations while estimating the probability of word sequences.[14]

Recurrent neural networks extended this approach by retaining information from earlier words as the sequence was processed. Tomáš Mikolov and colleagues demonstrated in 2010 that recurrent neural-network language models could substantially outperform conventional n-gram models.[15]

Pure statistical models

In 1980, the first significant statistical language model was proposed, and during the decade IBM performed 'Shannon-style' experiments, in which potential sources for language modeling improvement were identified by observing and analyzing the performance of human subjects in predicting or correcting text.[16]

Models based on word n-grams

Template:Excerpt

Exponential

Maximum entropy language models encode the relationship between a word and the n-gram history using feature functions. The equation is

P(wm∣w1,…,wm−1)=1Z(w1,…,wm−1)exp⁡(aTf(w1,…,wm))

where Z(w1,…,wm−1) is the partition function, a is the parameter vector, and f(w1,…,wm) is the feature function. In the simplest case, the feature function is just an indicator of the presence of a certain n-gram. It is helpful to use a prior on a or some form of regularization.

The log-bilinear model is another example of an exponential language model.

Skip-gram model

Template:Excerpt

Neural models

Recurrent neural network

Continuous representations or embeddings of words are produced in recurrent neural network-based language models (known also as continuous space language models).[17] Such continuous space embeddings help to alleviate the curse of dimensionality, which is the consequence of the number of possible sequences of words increasing exponentially with the size of the vocabulary, further causing a data sparsity problem. Neural networks avoid this problem by representing words as non-linear combinations of weights in a neural net.[18]

Large language models

Template:Excerpt

Although sometimes matching human performance, it is not clear whether they are plausible cognitive models. At least for recurrent neural networks, it has been shown that they sometimes learn patterns that humans do not, but fail to learn patterns that humans typically do.[19]

Evaluation and benchmarks

Evaluation of the quality of language models is mostly done by comparison to human created sample benchmarks created from typical language-oriented tasks. Other, less established, quality tests examine the intrinsic character of a language model or compare two such models. Since language models are typically intended to be dynamic and to learn from data they see, some proposed models investigate the rate of learning, e.g., through inspection of learning curves.[20]

Various data sets have been developed for use in evaluating language processing systems.[21] These include:

See also

Template:Portal Template:Div col

Template:Div col end

References

Template:Reflist

Further reading

Template:Refbegin

Template:Refend Template:Large language models Template:Natural language processing Template:Artificial intelligence navbox