feedback_embed
Author: Bagus Tris Atmaja (with Claude Code) Affiliation: NAIST Date: 2026.09
Auditory feedback embedding of the Lombard machine speech chain (Novitasari et al., IEEE/ACM TASLP 2022). The SNR embedding Z_SNR and the ASR-loss embedding Z_ASR are combined with the TTS encoder output:
h^e = h^e_trm + Z_SPK + Z_SNR + Z_ASR (Eq. 8)
Both embeddings can be given at the utterance level (one vector per utterance) or at the token level (one vector per phoneme, i.e. short-term feedback for dynamic noise environments).
FeedbackEmbedPrenet
Bases: Module
Embed the auditory feedback (SNR + ASR loss) and add it to the encoder output.
Source code in speechain/module/prenet/feedback_embed.py
embed_asr_loss(asr_loss)
(batch,) or (batch, len) ASR losses -> (batch, d_model) or (batch, len, d_model).
forward(enc_text, snr_emb=None, asr_loss=None, snr_coeff=None, asr_coeff=None)
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
enc_text
|
Tensor
|
(batch, text_maxlen, d_model) TTS encoder output. |
required |
snr_emb
|
Tensor
|
(batch, snr_emb_dim) or (batch, text_maxlen, snr_emb_dim) SNR embedding from the SNR predictor. None means no SNR feedback. |
None
|
asr_loss
|
Tensor
|
(batch,) or (batch, text_maxlen) ASR loss of the noisy speech. None means no ASR feedback. |
None
|
snr_coeff, asr_coeff
|
float Override the default coefficients. |
required |
Returns:
| Type | Description |
|---|---|
Tensor
|
(batch, text_maxlen, d_model) encoder output combined with the feedback. |
Source code in speechain/module/prenet/feedback_embed.py
module_init(d_model, snr_emb_dim=None, asr_loss_hidden=64, snr_coeff=1.0, asr_coeff=1.0)
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
d_model
|
int
|
int Dimension of the TTS encoder output. |
required |
snr_emb_dim
|
int
|
int Dimension of the SNR embedding produced by the SNR predictor. If it differs from d_model, a linear projection is used. |
None
|
asr_loss_hidden
|
int
|
int Hidden size of the ASR-loss embedding MLP. |
64
|
snr_coeff
|
float
|
float Default coefficient of Z_SNR (Fig. 3a of the paper). |
1.0
|
asr_coeff
|
float
|
float Default coefficient of Z_ASR. |
1.0
|