HOME

TheInfoList



OR:

In theoretical computer science and formal language theory, a weighted automaton or weighted finite-state machine is a generalization of a finite-state machine in which the edges have weights, for example real numbers or integers. Finite-state machines are only capable of answering decision problems; they take as input a
string String or strings may refer to: *String (structure), a long flexible structure made from threads twisted together, which is used to tie, bind, or hang other objects Arts, entertainment, and media Films * ''Strings'' (1991 film), a Canadian anim ...
and produce a
Boolean Any kind of logic, function, expression, or theory based on the work of George Boole is considered Boolean. Related to this, "Boolean" may refer to: * Boolean data type, a form of data with only two possible values (usually "true" and "false" ...
output, i.e. either "accept" or "reject". In contrast, weighted automata produce a quantitative output, for example a count of ''how many'' answers are possible on a given input string, or a probability of ''how likely'' the input string is according to a
probability distribution In probability theory and statistics, a probability distribution is the mathematical function that gives the probabilities of occurrence of different possible outcomes for an experiment. It is a mathematical description of a random phenomenon i ...
. chs.1-4, pp.3-26, 69-71, 122-126. They are one of the simplest studied models of quantitative automata. The definition of a weighted automaton is generally given over an arbitrary semiring R, an
abstract Abstract may refer to: * ''Abstract'' (album), 1962 album by Joe Harriott * Abstract of title a summary of the documents affecting title to parcel of land * Abstract (law), a summary of a legal document * Abstract (summary), in academic publishi ...
set with an addition operation + and a multiplication operation \times. The automaton consists of a finite set of states, a finite input alphabet of characters \Sigma and edges which are labeled with both a character in \Sigma and a weight in R. The weight of any path in the automaton is defined to be the product of weights along the path, and the weight of a string is the sum of the weights of all paths which are labeled with that string. The weighted automaton thus defines a function from \Sigma^* to R. Weighted automata
generalize A generalization is a form of abstraction whereby common properties of specific instances are formulated as general concepts or claims. Generalizations posit the existence of a domain or set of elements, as well as one or more common characteri ...
deterministic finite automata (DFAs) and nondeterministic finite automata (NFAs), which correspond to weighted automata over the Boolean semiring, where addition is logical disjunction and multiplication is logical conjunction. In the DFA case, there is only one accepting path for any input string, so disjunction is not applied. When the weights are real numbers and the outgoing weights for each state add to one, weighted automata can be considered a probabilistic model and are also known as
probabilistic automata In mathematics and computer science, the probabilistic automaton (PA) is a generalization of the nondeterministic finite automaton; it includes the probability of a given transition into the finite state machine, transition function, turning it int ...
. These machines define a probability distribution over all strings, and are related to other probabilistic models such as Markov decision processes and
Markov chain A Markov chain or Markov process is a stochastic model describing a sequence of possible events in which the probability of each event depends only on the state attained in the previous event. Informally, this may be thought of as, "What happe ...
s. Weighted automata have applications in
natural language processing Natural language processing (NLP) is an interdisciplinary subfield of linguistics, computer science, and artificial intelligence concerned with the interactions between computers and human language, in particular how to program computers to pro ...
where they are used to assign weights to words and sentences, as well as in
image compression Image compression is a type of data compression applied to digital images, to reduce their cost for storage or transmission. Algorithms may take advantage of visual perception and the statistical properties of image data to provide superior r ...
. They were first introduced by Marcel-Paul Schützenberger in his 1961 paper ''On the definition of a family of automata.'' Since their introduction, many extensions have been proposed, for example nested weighted automata, cost register automata, and weighted finite-state transducers. Researchers have studied weighted automata from the perspective of
learning Learning is the process of acquiring new understanding, knowledge, behaviors, skills, value (personal and cultural), values, attitudes, and preferences. The ability to learn is possessed by humans, animals, and some machine learning, machines ...
a machine from its input-output behavior (see computational learning theory) and studying decidability questions.


Definition

A
commutative semiring In abstract algebra, a semiring is an algebraic structure similar to a ring, but without the requirement that each element must have an additive inverse. The term rig is also used occasionally—this originated as a joke, suggesting that rigs are ...
(or rig) is a set ''R'' equipped with two distinguished elements 0 \ne 1 and addition and multiplication operations \oplus and \otimes such that \oplus is commutative and
associative In mathematics, the associative property is a property of some binary operations, which means that rearranging the parentheses in an expression will not change the result. In propositional logic, associativity is a valid rule of replacement f ...
with identity 0, \otimes is commutative and associative with identity 1, \otimes distributes over \oplus, and 0 is an absorbing element for \otimes. A weighted automaton over R is a tuple \mathcal = (Q, \Sigma, \Delta, I, F) where: * Q is a finite set of states. * \Sigma is a finite alphabet. * \Delta \subseteq Q \times \Sigma \times R \times Q is a finite set of transitions (q, \sigma, w, q'), where \sigma is called a character and w is called a weight. * I: Q \to R is an initial weight function. * F: Q \to R is a final weight function. A path on input w \in \Sigma^* is a finite path in the graph, where the concatenation of the character labels equals w. The weight of the path q_0, q_1, \ldots, q_n is the product (\otimes) of the weights along the path, additionally multiplied by the initial and final weights I(q_0) \otimes I(q_n). The weight of the word w is the sum (\oplus) of the weights of all paths on input w (or 0 if there are no accepting paths). In this way the machine defines a function ![ \mathcal !">\mathcal_.html" ;"title="!
![ \mathcal ! \Sigma^* \to R. The underlying NFA of \mathcal is an Nondeterministic finite automaton">NFA formed by removing all transitions with weight 0 and then erasing all of the weights on the transitions \Delta, so that the new transition set lies in Q \times \Sigma \times Q. The initial states and final states are the set of states q such that I(q) \ne 0 and F(q) \ne 0, respectively.


Variations

* A weighted automaton is deterministic Determinism is a philosophical view, where all events are determined completely by previously existing causes. Deterministic theories throughout the history of philosophy have developed from diverse and sometimes overlapping motives and consi ...
if the underlying NFA is deterministic and unambiguous if the underlying NFA is unambiguous. In these cases, there is always exactly one accepting path, so the \oplus operation is never applied and can be omitted from the definition. * It is possible to extend the definition to allow epsilon transitions (q, \epsilon, w, q'), where \epsilon is the empty string. In this case, one must then require that there are no
cycles of epsilon transitions. This does not increase the expressiveness of weighted automata. If epsilon transitions are allowed, the initial weights and final weights can be replaced by initial and final sets of states without loss of expressiveness. * The transition function can be given as a matrix ring">matrix Matrix most commonly refers to: * ''The Matrix'' (franchise), an American media franchise ** '' The Matrix'', a 1999 science-fiction action film ** "The Matrix", a fictional setting, a virtual reality environment, within ''The Matrix'' (franchi ...
\Delta_\sigma \in R^ with entries in R for each \sigma, rather than a set of transitions. The entry of the matrix at (q, q') is the sum of all transitions labeled (q, \sigma, q'). * Some authors omit the initial and final weight functions I and F. Instead, I and F are replaced by a set of initial and final states. If epsilon transitions are not present, this technically decreases expressiveness as it forces ![ \mathcal !](\varepsilon) to depend only on the number of states that are both initial and final. * Some authors restrict to specific semirings, such as \mathbb or \mathbb, particularly when studying decidability results. * The requirement that there is a zero element for \oplus is sometimes omitted; in this case the machine defines a partial function from \Sigma^* to R rather than a total function.


See also


References

{{reflist Finite automata