A noise attenuation apparatus comprising: - a receiver for receiving an audio signal comprising a desired signal component and a noise signal component; - a first codebook comprising a plurality of desired signal candidates for the desired signal component, each desired signal candidate representing a possible desired signal component; - a second codebook comprising a plurality of noise signal contribution candidates, each noise signal contribution candidate representing a possible noise contribution for the noise signal component; - a segmenter for segmenting the audio signal into time segments; - a noise attenuator arranged to, for each time segment, perform the steps of: generating a plurality of estimated signal candidates by for each of the desired signal candidates of the first codebook generating an estimated signal candidate as a combination of a scaled version of the desired signal candidate and a weighted combination of the noise signal contribution candidates, the scaling of the desired signal candidate and weights of the weighted combination being determined to minimize a cost function indicative of a difference between the estimated signal candidate and the audio signal in the time segment, generating a signal candidate for the audio signal in the time segment from the estimated signal candidates, and attenuating noise of the audio signal in the time segment in response to the signal candidate. - a receiver for receiving an audio signal comprising a desired signal component and a noise signal component; - a first codebook comprising a plurality of desired signal candidates for the desired signal component, each desired signal candidate representing a possible desired signal component; - a second codebook comprising a plurality of noise signal contribution candidates, each noise signal contribution candidate representing a possible noise contribution for the noise signal component; - a segmenter for segmenting the audio signal into time segments; - a noise attenuator arranged to, for each time segment, perform the steps of: generating a plurality of estimated signal candidates by for each of the desired signal candidates of the first codebook generating an estimated signal candidate as a combination of a scaled version of the desired signal candidate and a weighted combination of the noise signal contribution candidates, the scaling of the desired signal candidate and weights of the weighted combination being determined to minimize a cost function indicative of a difference between the estimated signal candidate and the audio signal in the time segment, generating a signal candidate for the audio signal in the time segment from the estimated signal candidates, and attenuating noise of the audio signal in the time segment in response to the signal candidate. generating a plurality of estimated signal candidates by for each of the desired signal candidates of the first codebook generating an estimated signal candidate as a combination of a scaled version of the desired signal candidate and a weighted combination of the noise signal contribution candidates, the scaling of the desired signal candidate and weights of the weighted combination being determined to minimize a cost function indicative of a difference between the estimated signal candidate and the audio signal in the time segment, generating a signal candidate for the audio signal in the time segment from the estimated signal candidates, and attenuating noise of the audio signal in the time segment in response to the signal candidate.