5. A computer-implemented method comprising: determining, with a data processing apparatus having one or more processors, a group of candidate translations for each source sentence in a plurality of source sentences; and for one or more iterations: calculating, with the data processing apparatus, a first aggregate error surface and an optimal model parameter for each feature function in a plurality of feature functions for a linear statistical machine translation model; ranking, with the data processing apparatus, the plurality of feature functions according to a quality criterion; calculating, with the data processing apparatus, a second aggregate error surface and an optimal number of updates for ranked feature functions; determining, with the data processing apparatus, a group of feature functions from the plurality of feature functions using the optimal number of updates for ranked feature functions, the group of feature functions including a particular feature function if updating the particular feature function with the respective optimal model parameter does not increase an error count; and updating, with the data processing apparatus, each feature function of the group of feature functions with the corresponding optimal model parameter.
5. A computer-implemented method comprising: determining, with a data processing apparatus having one or more processors, a group of candidate translations for each source sentence in a plurality of source sentences; and for one or more iterations: calculating, with the data processing apparatus, a first aggregate error surface and an optimal model parameter for each feature function in a plurality of feature functions for a linear statistical machine translation model; ranking, with the data processing apparatus, the plurality of feature functions according to a quality criterion; calculating, with the data processing apparatus, a second aggregate error surface and an optimal number of updates for ranked feature functions; determining, with the data processing apparatus, a group of feature functions from the plurality of feature functions using the optimal number of updates for ranked feature functions, the group of feature functions including a particular feature function if updating the particular feature function with the respective optimal model parameter does not increase an error count; and updating, with the data processing apparatus, each feature function of the group of feature functions with the corresponding optimal model parameter. 11. The method of claim 5 , further comprising: recalculating the second aggregate error surface and the optimal number of updates for ranked feature functions using the determined group of feature functions.