Sobes.tech
Middle — Senior

O que é a perda CTC e onde ela é aplicada em ASR?

sobes.tech IA

Resposta da IA

A perda CTC (Connectionist Temporal Classification) é uma função de perda usada para treinar modelos que prevêem sequências com dados de entrada e saída não alinhados, por exemplo, em tarefas de reconhecimento de voz (ASR).

O principal problema no ASR é que o comprimento do sinal de áudio de entrada e a transcrição de texto não coincidem, e o alinhamento entre eles é desconhecido. A CTC permite que o modelo aprenda sem um alinhamento explícito, considerando automaticamente todas as possíveis correspondências entre os quadros de entrada e os símbolos de saída.

Como funciona a CTC:

  • O modelo prevê em cada passo temporal uma distribuição de probabilidades sobre os símbolos (incluindo um símbolo especial "blank" — vazio).
  • A CTC calcula a probabilidade da sequência correta somando todas as rotas possíveis que podem ser reduzidas à sequência alvo após remover os símbolos vazios e repetições.
  • A função de perda é o logaritmo negativo dessa probabilidade.

Aplicação em ASR:

  • Treinamento de modelos como RNN, LSTM, Transformer, para converter áudio em texto.
  • Permite não requerer uma alinhamento preciso entre áudio e texto.

Exemplo: se o modelo prevê uma sequência de símbolos com símbolos vazios e repetições, a CTC agrega todas as rotas que correspondem à transcrição alvo.

Dessa forma, a perda CTC é um componente chave para treinar sistemas de reconhecimento de fala automática, especialmente quando o alinhamento entre áudio e texto é desconhecido ou difícil de obter.