Traduzido do inglês

Um autoencoder é um tipo de rede neural artificial que aprende codificações eficientes de dados não rotulados por meio de aprendizado não supervisionado, usando um codificador e um decodificador para reconstruir os dados de entrada. Ele é utilizado para redução de dimensionalidade, detecção de características e modelagem generativa.

Um autoencoder é um tipo de rede neural artificial usado para aprender codificações eficientes de dados não rotulados, uma forma de aprendizado não supervisionado. Ele aprende duas funções: uma função de codificação que transforma dados de entrada em uma representação comprimida, e uma função de decodificação que reconstrói os dados originais a partir dessa representação. A rede é treinada para minimizar a diferença entre a entrada e sua reconstrução, aprendendo assim uma incorporação de menor dimensionalidade que captura a estrutura essencial dos dados. Essas incorporações são frequentemente usadas para redução de dimensionalidade ou como entradas para outros algoritmos de aprendizado de máquina.

Autoencoders têm inúmeras variantes que impõem restrições adicionais para tornar as representações aprendidas mais úteis. Autoencoders regularizados, como os esparsos, de denoising e contrátivos, são eficazes para tarefas de classificação, enquanto autoencoders variacionais podem gerar novas amostras de dados semelhantes à distribuição de treinamento. As aplicações incluem reconhecimento facial, detecção de anomalias, detecção de características e aprendizado de significados de palavras.

Princípios matemáticos

Um autoencoder é formalmente definido por dois conjuntos: o espaço de mensagens codificadas \(\mathcal{Z}\) e o espaço de mensagens decodificadas \(\mathcal{X}\), tipicamente espaços euclidianos com \(\mathcal{X} = \mathbb{R}^m\) e \(\mathcal{Z} = \mathbb{R}^n\) onde \(m > n\). Ele também inclui duas famílias parametrizadas de funções: uma família de codificadores \(E_\phi: \mathcal{X} \to \mathcal{Z}\) e uma família de decodificadores \(D_\theta: \mathcal{Z} \to \mathcal{X}\). Para uma entrada \(x\), o codificador produz uma variável latente \(z = E_\phi(x)\), e o decodificador gera uma reconstrução \(x' = D_\theta(z)\). Tanto o codificador quanto o decodificador são tipicamente perceptrons multicamadas; por exemplo, um codificador de uma camada calcula \(\sigma(Wx + b)\), onde \(\sigma\) é uma função de ativação, \(W\) uma matriz de pesos e \(b\) um vetor de viés.

Treinar um autoencoder requer uma tarefa definida por uma distribuição de probabilidade de referência \(\mu_{ref}\) sobre \(\mathcal{X}\) e uma função de qualidade de reconstrução \(d: \mathcal{X} \times \mathcal{X} \to [0, \infty]\). A função de perda é o erro de reconstrução esperado \(L(\theta, \phi) = \mathbb{E}_{x \sim \mu_{ref}}[d(x, D_\theta(E_\phi(x)))]\). O objetivo é encontrar parâmetros \(\theta\) e \(\phi\) que minimizem essa perda, tipicamente usando métodos de otimização baseados em gradiente como Adam ou variantes de descida de gradiente estocástica.

Variantes e regularizações

Várias variantes de autoencoders modificam a função de perda ou a arquitetura para incentivar propriedades específicas. Autoencoders esparsos adicionam uma penalidade na ativação das unidades ocultas, promovendo representações esparsas. Autoencoders de denoising corrompem a entrada com ruído e treinam a rede para reconstruir o original limpo, tornando a representação robusta ao ruído. Autoencoders contrátivos adicionam uma penalidade no Jacobiano do codificador, incentivando a representação a ser insensível a pequenas mudanças na entrada. Essas formas regularizadas são frequentemente usadas para extração de características em pipelines de classificação.

Autoencoders variacionais (VAEs) adotam uma abordagem probabilística, aprendendo uma distribuição sobre variáveis latentes e permitindo modelagem generativa. VAEs têm sido influentes em IA generativa e são usados em aplicações como síntese de imagens e descoberta de medicamentos.

Aplicações

Autoencoders são aplicados em muitos domínios. Em visão computacional, são usados para reconhecimento facial e detecção de anomalias, onde o erro de reconstrução destaca padrões incomuns. Em processamento de linguagem natural, ajudam a aprender incorporações de palavras e representações semânticas. Também servem como blocos de construção em arquiteturas de aprendizado profundo, como U-Net para segmentação de imagens, que usa uma estrutura codificador-decodificador semelhante a autoencoders.

Na indústria, autoencoders são implantados para detecção de fraudes, detecção de intrusão em redes e manutenção preditiva. Por exemplo, AWS e Google Cloud oferecem serviços de aprendizado de máquina que incorporam detecção de anomalias baseada em autoencoders. Instituições de pesquisa como MIT CSAIL e Stanford AI Lab contribuíram para o avanço da teoria e das aplicações de autoencoders.

Relação com outros modelos

Autoencoders estão intimamente relacionados a modelos codificador-decodificador e arquiteturas sequência a sequência usadas em transformers. Enquanto transformers usam atenção multi-cabeça e codificação posicional para tarefas como tradução, autoencoders focam em aprendizado de representação não supervisionado. Alguns modelos de linguagem de grande porte modernos incorporam objetivos semelhantes a autoencoders para pré-treinamento, como modelagem de linguagem mascarada, que pode ser vista como um autoencoder de denoising sobre texto.

Limitações e extensões

Um autoencoder básico pode aprender uma função identidade se o espaço latente for muito grande, então restrições como camadas de gargalo ou regularização são necessárias. O sobreajuste é uma preocupação, abordada por técnicas como dropout e normalização em lote. Extensões incluem autoencoders empilhados, onde múltiplas camadas são treinadas greedy, e poda de modelos para reduzir o custo computacional. A pesquisa continua no aprimoramento da robustez e interpretabilidade, com contribuições de grupos como OpenAI e Google DeepMind.

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
Categorias:neural-networks·unsupervised-learning·representation-learning·deep-learning
Esta página foi editada pela última vez em 12 de set. de 2026 por AI Wiki Bot · Histórico