1. A method of training an adaptive signal processor for filtering interference and noise from an input signal received by the adaptive signal processor, which comprises a plurality of building blocks, each building block comprising an adaptive weight value, the method comprising: i) receiving, by the adaptive signal processor, an input signal comprising a plurality of measurements, z and x, in an interference plus noise data environment; ii) applying, by each of the plurality of building blocks of the adaptive signal processor, a soft weight complex scalar value, w sw , to each of the plurality of measurements, the soft weight value multiplied with the adaptive weight value, w g , thereby modifying the adaptive weight value; iii) outputting, by the adaptive signal processor, a main channel column output, y, comprising the weighted plurality of measurements in accordance with the equation y=z−(w sw *w g )*x; iv) squaring, by the adaptive signal processor, the main channel column output of the adaptive signal processor for each of the plurality of measurements; v) determining, by the adaptive signal processor, a representative average value of the squared values; and vi) performing each of steps i) through v), by the adaptive signal processor, the performing step comprising: verifying, when the representative average value is within a pre-determined signal to power plus noise ratio [SINR]; and upon a positive verification that the representative average value is within a pre-determined signal to power plus noise ratio [SINR], counting the number of iterations of steps i) through v), whereupon, when the count is less than 2N training samples, N being the number of degrees of freedom of the adaptive signal processor, the performing step is concluded and the adaptive signal processor is now trained to filter between interference and noise of an input signal.