1. An apparatus comprising: at least one processor configured to filter a sequence of input values with an infinite impulse response (IIR) filter having at least one coefficient to obtain a sequence of output values, and to derive a sequence of predicted values based on the sequence of input values, to determine prediction errors between a sequence of predicted values and the sequence of input values, to filter the determined prediction errors, to calculate a partial derivative term based on the determined prediction errors and filtered determined prediction errors, and to update the at least one coefficient based on the partial derivative term; and a memory coupled to the at least one processor, wherein the at least one processor is configured to filter the sequence of input values with multiple prediction filters to obtain multiple sequences of predicted values, each prediction filter having a different set of at least one coefficient, to identify a prediction filter with a smallest prediction error among the multiple prediction filters, and to filter the sequence of input values using the set of at least one coefficient for the identified prediction filter.