← tópicos

Específicos · Ciência de Dados

Deep learning: CNN, RNN/LSTM/GRU, Transformer, autoencoders, GANs

O corpus não cobra o interior das arquiteturas: cobra para que serve cada uma, onde termina cada conceito e toda promessa absoluta — eliminar completamente, a única maneira, independentemente.

Alta19 itens no tópico

A ideia que organiza o assunto

Aprendizado de máquina clássico depende de alguém dizer ao modelo o que olhar: um especialista escolhe os atributos, e o algoritmo apenas aprende a combiná-los. Deep learning inverte a ordem. Empilha camadas e deixa que cada uma construa, a partir da saída da anterior, uma representação um pouco mais abstrata — bordas, depois texturas, depois partes, depois objetos. Profundidade não significa “muitos neurônios”; significa muitos níveis de representação encadeados, e é a rede aprender sozinha esses níveis que dá nome ao campo.

Disso saem três ideias que tornam o resto derivável.

Primeira: o encaixe das caixas. Inteligência artificial contém aprendizado de máquina, que contém deep learning, cuja tecnologia de base é a rede neural artificial com muitas camadas. Aprendizado de máquina abrange muito método sem neurônio algum — árvores, SVM, k-médias, naive Bayes —, de modo que toda definição de aprendizado de máquina que exija rede neural está, na verdade, definindo deep learning com o nome errado. Seis dos dezenove itens do tópico se decidem só por esse encaixe.

Segunda: cada arquitetura é uma aposta sobre o formato do dado. Convolução supõe grade com vizinhança que importa — imagem. Recorrência supõe sequência com ordem e memória — texto, série temporal, fala. Atenção supõe que vale olhar a sequência inteira de uma vez e decidir o que pesa. Par gerador-discriminador e reversão de ruído supõem que o objetivo é produzir amostra nova, não classificar amostra existente. Quase todo item de arquitetura se resolve perguntando qual formato de dado aquela arquitetura pressupõe e se o verbo do enunciado é gerar ou discriminar.

Terceira, e é a que o corpus impõe: a prova não cobra o interior das arquiteturas. Nos dezenove itens deste tópico, as palavras atenção, autoatenção, GRU, pooling, kernel, codificação posicional, embedding e gradiente não aparecem nenhuma vez; RNN aparece uma vez, e apenas como termo de comparação. Seis itens nomeiam uma arquitetura — CNN duas vezes, LSTM, transformer, rede adversária generativa e modelo de difusão uma vez cada — e todos os seis perguntam para que ela serve, não como ela funciona por dentro. O resto do tópico é definição e fronteira de conceito, sobreajuste e subajuste (três itens) e promessa absoluta a ser desmentida. Estude a mecânica para entender; entre na prova sabendo, acima de tudo, a que serve cada arquitetura e onde termina cada conceito.

Por que se usa (e o que custa)

Ganha-se o aprendizado de representações: em dados não estruturados — imagem, áudio, texto bruto —, a rede profunda descobre os atributos que um humano levaria anos para projetar, e o desempenho cresce com a escala de dados e de parâmetros em vez de estagnar. Ganha-se também a transferência: uma rede treinada em uma base enorme serve de ponto de partida para uma tarefa vizinha com poucos exemplos.

Paga-se caro em quatro moedas. Dados: milhões de parâmetros exigem volume de exemplos, sob pena de sobreajuste. Computação: o treinamento é multiplicação de matrizes e cálculo de gradientes repetidos bilhões de vezes, o que só fecha em GPU ou TPU. Opacidade: o que a rede aprendeu fica distribuído em matrizes sem leitura direta, e explicar uma decisão exige técnica à parte. Trabalho que não some: o que a profundidade dispensa é a engenharia manual de atributos, não o pré-processamento — limpeza, tratamento de faltantes, normalização, redimensionamento, tokenização, separação em treino, validação e teste e aumento de dados continuam obrigatórios.

A formulação honesta para a prova: deep learning troca a necessidade de projetar atributos pela necessidade de dados, computação e cuidado com o sobreajuste. Item que anuncie o ganho sem o custo — ou que transforme o ganho em eliminação total de alguma etapa — está errado antes do resto da frase.

Como funciona

A pilha comum a tudo. Camadas de unidades, cada uma calculando soma ponderada mais viés e aplicando uma função de ativação não linear; erro medido na saída por uma função de perda; retropropagação levando esse erro para trás para ajustar os pesos; repetição por épocas. Toda arquitetura abaixo é uma variação de como as camadas se ligam — a mecânica da unidade e do treinamento é assunto do tópico de redes neurais. O que é preciso reter aqui: o treinamento altera pesos e vieses; o número de camadas é decisão de projeto, tomada antes.

CNN — dado em grade. A camada convolucional desliza filtros pequenos sobre a imagem; cada filtro detecta um padrão local onde quer que ele apareça, porque o mesmo conjunto de pesos é reaproveitado em toda a extensão da entrada. Isso dá duas propriedades que a justificam: muito menos parâmetros que uma camada totalmente conectada e invariância a translação. As camadas de agrupamento (pooling) reduzem a resolução e agregam. Empilhando, forma-se a hierarquia que a banca cobra: camadas iniciais respondem a bordas e texturas; camadas profundas, a partes e objetos inteiros. É a arquitetura padrão de visão computacional.

RNN, LSTM e GRU — dado em sequência. A rede recorrente processa um elemento por vez e carrega um estado oculto de um passo para o outro, o que lhe dá memória do que já passou. O problema é que, em sequências longas, o gradiente propagado por muitos passos encolhe até sumir, e a rede esquece o começo. A LSTM resolve com uma célula de estado e três portas — esquecimento, entrada e saída — que decidem o que descartar, o que gravar e o que expor. A GRU é a versão simplificada, com duas portas (atualização e reinício) e sem célula separada: menos parâmetros, treinamento mais rápido, desempenho comparável. Nenhuma das duas é imune ao tamanho do modelo: capacidade de menos subajusta, capacidade de mais sobreajusta.

Transformer e atenção — a sequência inteira de uma vez. A recorrência obriga a processar em ordem, um passo depois do outro, o que impede paralelizar o treinamento e afasta posições distantes por um caminho longo. A autoatenção faz outra coisa: para cada posição, calcula o quanto todas as demais importam para ela e compõe a representação com esses pesos. Todas as posições são tratadas simultaneamente, o que paraleliza o treinamento e liga diretamente termos distantes. Como não há ordem implícita, a posição entra pela codificação posicional. As múltiplas cabeças permitem atender a vários tipos de relação ao mesmo tempo. O preço: o custo da autoatenção cresce com o quadrado do comprimento da sequência — a vantagem do transformer é paralelismo e alcance, não custo menor.

Autoencoder — comprimir e reconstruir. Um codificador reduz a entrada a uma representação compacta e um decodificador tenta reconstruir a entrada a partir dela; treina-se sem rótulo, comparando saída com entrada. Serve a redução de dimensionalidade, remoção de ruído e detecção de anomalia — o que reconstrói mal é o que destoa do padrão aprendido.

GAN — gerar por competição. Duas redes em oposição: a geradora parte de ruído aleatório e produz amostras sintéticas; a discriminadora é treinada para separar amostra real de amostra gerada. Cada uma melhora à custa da outra — a geradora vence quando engana, a discriminadora vence quando não é enganada. A troca de papéis entre as duas é a distorção padrão do assunto.

Modelos de difusão — gerar desfazendo ruído. Treinam-se adicionando ruído a um dado real em muitos passos e aprendendo a reverter cada passo. Na geração, parte-se de ruído puro e aplica-se a reversão até emergir uma amostra nova. São generativos, como as GAN, e não classificadores — hoje são a base dos geradores de imagem.

Hardware. O treinamento se reduz a operações idênticas repetidas sobre matrizes, na passagem para a frente e no cálculo dos gradientes. GPUs, com milhares de núcleos, e TPUs, com unidades dedicadas a produto matricial, executam isso em paralelo; a CPU é otimizada para poucas linhas de execução complexas.

Combater o sobreajuste. Dropout desliga neurônios ao acaso a cada passada, impedindo a rede de depender de um caminho só; parada antecipada interrompe o treinamento quando o erro de validação volta a subir; aumento de dados cria variações plausíveis dos exemplos; regularização L1 e L2 penaliza pesos grandes; normalização em lote estabiliza a escala das ativações. Nenhuma delas é a única maneira de fazer nada.

O que decide os itens

Arquitetura → formato do dado → verbo. A tabela que resolve todos os itens de arquitetura do tópico:

arquiteturaformato do dadoserve paranão é
CNNgrade (imagem, vídeo)extrair características visuais em hierarquiadispensável em reconhecimento de imagem
RNNsequênciamemória de curto prazo passo a passoboa em dependência longa
LSTM / GRUsequência longareter contexto distante com portasimune ao tamanho do modelo
Transformersequência inteiraparalelizar e ligar posições distantesmais barato que a recorrência
Autoencoderqualquercomprimir, remover ruído, detectar anomaliagerador de amostra nova por si só
GANqualquergerar, por competição gerador × discriminadorclassificador
Difusãoqualquergerar, revertendo ruídoclassificador

Sobreajuste × subajuste — compare sempre dois desempenhos, nunca um:

treinodados novosleitura
sobreajuste (overfitting)altobaixodecorou o ruído; não generaliza
subajuste (underfitting)baixobaixosimples demais para o padrão
bem ajustadoaltoaltogeneraliza — não é sobreajuste
defeitocorrige-se comnão se corrige com
sobreajustemais dados, dropout, parada antecipada, regularização, modelo menoraumentar a capacidade
subajustemais capacidade, melhores atributos, menos regularização, mais treinoreduzir a quantidade de dados

O encaixe dos conceitos:

termoénão é
inteligência artificialo campo mais amplosinônimo de aprendizado de máquina
aprendizado de máquinaaprender padrões a partir de dadosexige rede neural
deep learningsubconjunto com redes neurais de muitas camadasdispensa pré-processamento
rede neural artificiala tecnologia subjacente ao deep learningexclusiva do deep learning

Escolhido antes × aprendido durante:

hiperparâmetro (projeto)parâmetro (treinamento)
número de camadas ocultas e de neurôniospesos
função de ativação, taxa de aprendizado, épocasvieses

O objetivo da retropropagação é minimizar o erro ajustando pesos — não aumentar camadas, e não perseguir 100% de acurácia no treino, que é a descrição do sobreajuste.

Direção da hierarquia na CNN: raso é simples (borda, textura), profundo é complexo (parte, objeto). Inverter o sentido derruba o item sozinho.

Termos vizinhos que aparecem por aqui:

termoregra
BoW (bag of words)conta frequência e descarta ordem e contexto
validação cruzada K-foldk partes; 1 testa, k − 1 treinam, k rodadas, métrica média
regressãoprevê valor contínuo; classificação prevê rótulo
GPU e TPUaceleram operação matricial e gradiente, por paralelismo

Como a CEBRASPE derruba você aqui

Medido sobre os 19 itens do tópico, dos quais 12 são errados.

Enunciar a definição ao contrário — 4 dos 12 itens errados, um terço, e é o padrão mais frequente. O item pega a propriedade que define o objeto e afirma o oposto dela, mantendo o resto da frase impecável. O BoW “considerando a frequência e a ordem ou o contexto das palavras presentes” — um saco de palavras é definido por jogar fora a ordem. O sobreajuste que ocorreria com “alta precisão tanto nos dados de treinamento quanto nos dados de teste, indicativo de que o modelo generaliza bem” — isso é o modelo bem ajustado, com o nome do defeito. O K-fold com “um subconjunto de tamanho k − 1 para teste e o restante para validação” — a fatia menor é sempre a de teste. E a CNN que, sendo rede profunda, “elas são dispensadas nos algoritmos de reconhecimento de imagens”, quando é justamente a arquitetura central dessas tarefas. A defesa: reconstrua a definição do zero antes de julgar a frase, e desconfie especialmente quando o item usar tanto… quanto para os dois conjuntos de dados, ou quando abrir com apesar de e negar na oração principal o que a concessão acabou de conceder.

Descrever certo e pendurar no nome errado — 4 dos 12. A frase descreve corretamente um objeto e atribui a descrição a outro. “Machine learning é um tipo de aprendizado de máquina” que processa entradas por rede neural de inspiração biológica — a definição é de deep learning, e a primeira metade ainda é circular. Os modelos de difusão que “são focados na classificação de pontos de dados” — difusão gera, não classifica. A função de ativação “responsável por armazenar os pesos de cada conexão entre os neurônios” — quem guarda peso é a conexão; a ativação transforma a soma ponderada. E o objetivo da retropropagação como “aumentar o número de camadas ocultas até que a acurácia atinja 100%” — o algoritmo ajusta pesos; camadas são decisão de projeto. Antes de discutir o detalhe, confira a categoria: é generativo ou discriminativo? É hiperparâmetro ou parâmetro? É o campo ou o subcampo? Categoria errada derruba o item sem que seja preciso mais nada.

Prometer o absoluto — 3 dos 12, e o sinal mais barato do tópico. “A única maneira de se evitar o underfitting… é reduzir a quantidade de dados de entrada”, “elimina completamente a necessidade de pré-processamento de dados” porque as redes aprendem todas as características automaticamente, e a LSTM que manteria a precisão “independentemente do tamanho do modelo utilizado”. Some-se a retropropagação que treinaria “até que a acurácia atinja 100%” e são quatro enunciados com termo absoluto entre os dezenove — todos os quatro errados. A razão é estrutural: aprendizado de máquina é um campo de compromissos, em que capacidade de menos subajusta e de mais sobreajusta, e nenhuma técnica é a única nem elimina etapa inteira. Localize única, completamente, todas, independentemente, sempre, 100% — e derrube a exclusividade antes de avaliar o conteúdo.

Acertar o resultado e inventar a causa — 1 dos 12. O transformer que superou RNN e LSTM “principalmente pela capacidade de tais modelos processarem sequências mais longas com menor custo computacional”: o resultado é verdadeiro, a causa não. O ganho é paralelizar o treinamento e ligar diretamente posições distantes; o custo da autoatenção cresce com o quadrado do comprimento da sequência. Sempre que o item ligar principalmente por ou o fator determinante a uma arquitetura, verifique separadamente o efeito e a causa — é comum a banca entregar um para fazer passar o outro.

O contraponto que a medição registra. Os sete itens certos do tópico são, sem exceção, descrições diretas e sem adorno: o que é sobreajuste, o que a convolução extrai, o que fazem as camadas ocultas, para que serve GPU, quem gera e quem discrimina numa GAN, o que é deep learning, o que a regressão prevê. Neste tópico, o item que apenas descreve tende a ser certo; o que acrescenta uma exclusividade, uma impossibilidade ou uma causa é onde está o erro.

Erros clássicos

Achar que deep learning dispensa pré-processamento. Ele dispensa a engenharia manual de atributos. Limpeza, normalização, redimensionamento, tokenização e a separação em treino, validação e teste continuam todas de pé.

Chamar de aprendizado de máquina o que é deep learning. Se a definição exige rede neural de muitas camadas, é o subcampo. Aprendizado de máquina inclui árvore de decisão, SVM, k-médias e naive Bayes, sem neurônio nenhum.

Tomar alta precisão em treino e teste por sobreajuste. Sobreajuste exige lacuna entre os dois desempenhos. Sem lacuna, o modelo generaliza.

Combater subajuste tirando dados ou capacidade. É o remédio do sobreajuste aplicado ao defeito oposto. Subajuste quer mais modelo, mais atributos, mais treino.

Atribuir ao transformer custo computacional menor. A autoatenção é quadrática no comprimento da sequência. O que ela oferece é paralelismo e alcance.

Confundir gerar com classificar. GAN e difusão geram; CNN e transformer classificam ou geram conforme a cabeça de saída; autoencoder comprime e reconstrói. O verbo do enunciado é o que entrega a troca.

Trocar os papéis dentro da GAN. Gerador produz a partir de ruído, discriminador julga se é real. É a distorção mais previsível do assunto.

Inverter a hierarquia da CNN. Bordas e texturas nas camadas iniciais; partes e objetos nas profundas. Nunca o contrário.

Supor que alguma arquitetura seja indiferente ao próprio tamanho. Toda rede paga capacidade insuficiente com subajuste e capacidade excessiva com sobreajuste — LSTM inclusive.

Praticar19 itens