6. A method comprising: setting parameter values for a set of acoustic models used in speech recognition; for each of a set of utterances, decoding the utterance using the set of acoustic models to identify a set of competitor word sequences for the utterance and for each word sequence determining a probability of the utterance given the word sequence; updating a parameter value in the set of acoustic models using a trainer in a computing device through steps comprising: constructing a recognition lattice for each utterance, the recognition lattice comprising a set of arcs with one word for each arc; for each arc that spans a selected time point: determining a probability, γ i,r,c (t), of a selected state at the selected time point given the arc and a selected utterance using a first forward-backward recursion with the recursions starting at the beginning and the end of the arc; determining a joint probability, p Λ′ (c,X r ), of the arc and the selected utterance using a second forward-backward recursion with the forward recursion starting at the beginning of the utterance and the backward recursion starting at the end of the utterance; determining a probability, p Λ′ (X r ), of the selected utterance; and using the probability of the selected state given the arc and the selected utterance, the joint probability of the arc and the selected utterance and the probability of the selected utterance to form a value for the arc; and summing the values for the arcs that span the selected time point to compute a term Y i , r ⁡ ( t ) = ∑ c : t ∈ [ b q , e q ] ⁢ ⁢ γ i , r , c ⁡ ( t ) · p Λ ′ ⁡ ( c , X r ) p Λ ′ ⁡ ( X r ) used in updating a model parameter for the selected state.
6. A method comprising: setting parameter values for a set of acoustic models used in speech recognition; for each of a set of utterances, decoding the utterance using the set of acoustic models to identify a set of competitor word sequences for the utterance and for each word sequence determining a probability of the utterance given the word sequence; updating a parameter value in the set of acoustic models using a trainer in a computing device through steps comprising: constructing a recognition lattice for each utterance, the recognition lattice comprising a set of arcs with one word for each arc; for each arc that spans a selected time point: determining a probability, γ i,r,c (t), of a selected state at the selected time point given the arc and a selected utterance using a first forward-backward recursion with the recursions starting at the beginning and the end of the arc; determining a joint probability, p Λ′ (c,X r ), of the arc and the selected utterance using a second forward-backward recursion with the forward recursion starting at the beginning of the utterance and the backward recursion starting at the end of the utterance; determining a probability, p Λ′ (X r ), of the selected utterance; and using the probability of the selected state given the arc and the selected utterance, the joint probability of the arc and the selected utterance and the probability of the selected utterance to form a value for the arc; and summing the values for the arcs that span the selected time point to compute a term Y i , r ⁡ ( t ) = ∑ c : t ∈ [ b q , e q ] ⁢ ⁢ γ i , r , c ⁡ ( t ) · p Λ ′ ⁡ ( c , X r ) p Λ ′ ⁡ ( X r ) used in updating a model parameter for the selected state. 10. The method of claim 6 wherein determining the joint probability comprises computing a forward path score from the start of the recognition lattice to the end of the arc and computing a backward path score from the end of the recognition lattice to the end of the arc.