1. A method of training an acoustic model in a speech recognition system, comprising: accessing a training corpus; using the training corpus to calculate model parameter values for an initial form of an acoustic model; a processor iteratively updating model parameter values for the acoustic model, each iteration comprising: calculating a plurality of scores for each token with regard to a correct class and a plurality of competing classes from a set of model parameter values determined for the acoustic model before the iteration; determining a value for a loss function based on the calculated scores and a margin wherein the loss function is computed as: l r ⁡ ( d r ⁡ ( X r , Λ ) ) = 1 1 + ⅇ - ad ⁡ ( X r , Λ ) + β ⁡ ( I ) ; where l r (d r (X r ,Λ)) is the value for the loss function, d r (X r , Λ) is a misclassification measure for a token X r determined from the plurality of scores for the token X r , Λ represents the set of model parameter values for the acoustic model, α is a constant, β(I) is the margin, and I is an iteration argument, wherein for at least two different iterations that form part of iteratively updating model parameter values for a same acoustic model, the value of β(I) is different; updating the set of model parameter values to create a revised set of model parameter values based upon the value of the loss function; and outputting the a final revised set of model parameter values for the acoustic model.