1. A method of compensating an input signal for distortion introduced by an electronic device operating on the input signal to produce an output signal, the method comprising: generating, for each of a plurality of sampling time instances, first and second signal samples representing said input and output signals; generating, for one or more of said sampling time instances, a corresponding set of data samples from said first signal samples and a set of basis functions in a non-linear distortion model of the electronic device or predistorter; normalizing the data samples so that the normalized data samples from each basis function have a pre-determined variance; calculating model weighting coefficients to fit the normalized data samples to the second signal samples according to the non-linear distortion model; determining predistortion weights from the model weighting coefficients; and applying the predistortion weights to the input signal to compensate for the distortion introduced by the electronic device.