Lexical choice is the subtask of Natural language generation that involves choosing the content words (nouns, verbs, adjectives, and adverbs) in a generated text. Function words (determiners, for example) are usually chosen during realisation.
The simplest type of lexical choice involves mapping a domain concept (perhaps represented in an ontology) to a word. For example, the concept Finger might be mapped to the word finger.
A more complex situation is when a domain concept is expressed using different words in different situations. For example, the domain concept Value-Change can be expressed in many ways
- The temperature rose: the verb rose is used for a Value-Change in temperature which increases the value
- The temperature fell: the verb fell is used for a Value-Change in temperature which decreases the value
- The rain got heavier: the phrase got heavier is used for a Value-Change in precipitation amount when the precipitation is rain.
Sometimes words can communicate additional contextual information, for example
- The temperature plummeted: the verb plummeted is used for a Value-Change in temperature which decreases the value, when the change is rapid and large
Contextual information is especially significant for vague terms such as tall. For example, a 2m tall man is tall, but a 2m tall horse is small.
Lexical choice modules must be informed by linguistic knowledge of how the system's input data maps onto words. This is a question of semantics, but it is also influenced by syntactic factors (such as collocation effects) and pragmatic factors (such as context).
Hence NLG systems need linguistic models of how meaning is mapped to words in the target domain (genre) of the NLG system. Genre tends to be very important; for example the verb veer has a very specific meaning in weather forecasts (wind direction is changing in a clockwise direction) which it does not have in general English, and a weather-forecast generator must be aware of this genre-specific meaning.
In some cases there are major differences in how different people use the same word; for example, some people use by evening to mean 6PM and others use it to mean midnight. Psycholinguists have shown that when people speak to each other, they agree on a common interpretation via lexical alignment; this is not something which NLG systems can yet do.
Ultimately, lexical choice must deal with the fundamental issue of how language relates to the non-linguistic world. For example, a system which chose colour terms such as red to describe objects in a digital image would need to know which RGB pixel values could generally be described as red; how this was influenced by visual (lighting, other objects in the scene) and linguistic (other objects being discussed) context; what pragmatic connotations were associated with red (for example, when an apple is called red, it is assumed to be ripe as well as have the colour red); and so forth.
Algorithms and models
A number of algorithms and models have been developed for lexical choice in the research community, for example Edmonds developed a model for choosing between near-synonyms (words with similar core meanings but different connotations). However such algorithms and models have not been widely used in applied NLG systems; such systems have instead often used quite simple computational models, and invested development effort in linguistic analysis instead of algorithm development.
- E Reiter and S Sripada (2002). Human Variation and Lexical Choice. Computational Linguistics 28:545-553. 
- S Brennan and H Clark (1996). Conceptual Pacts and Lexical Choice in Conversation. Journal of Experimental Psychology: Learning, Memory, and Cognition 22:1482-1493
- D Roy and E Reiter (2005). Connecting Language to the World. Artificial Intelligence 167:1-12.
- Perera, R. and Nand, P 2015. A Multi-Strategy Approach for Lexicalizing Linked Open Data.
- P Edmonds and G Hirst (2002). Near-Synonymy and Lexical Choice. Computational Linguistics 28:105-144.