Computer Science › Inteligência + Teoria

Deep Learning

0 de 19
  1. Backpropagation: A Regra da Cadeia Através de um Grafo Computacional

    O algoritmo com que toda rede desta disciplina é treinada. Representa-se o forward pass como um grafo computacional de pequenas operações localmente diferenciáveis e depois se percorre esse grafo de trás para frente aplicando a regra da cadeia multivariável um nó por vez, de modo que um único backward pass calcula o gradiente do loss em relação a todos os pesos de todas as camadas de uma vez.

    Ler →6 seções7 min
  2. Softmax e Loss de Cross-Entropy

    A função de loss contra a qual quase todo classificador desta disciplina é de fato treinado. O softmax transforma os scores brutos de saída de uma rede em uma distribuição de probabilidade sobre as classes, e a cross-entropy, derivada aqui diretamente por máxima verossimilhança sobre essa distribuição (o mesmo argumento de MLE já usado na regressão logística), mede exatamente quão longe essa distribuição está do rótulo verdadeiro.

    Ler →6 seções7 min
  3. Inicialização de Pesos e o Problema do Gradiente que Desaparece/Explode

    Por que uma rede profunda não pode simplesmente ser inicializada com pesos todos zero ou aleatórios arbitrários. O backpropagation multiplica as derivadas de muitas camadas, então um viés sistemático na escala dessas derivadas se compõe multiplicativamente com a profundidade, encolhendo os gradientes até perto de zero ou fazendo-os explodir; e por que esquemas calibrados, como as inicializações Xavier e He, existem especificamente para manter esse produto estável.

    Ler →6 seções8 min
  4. Otimizadores Além do Gradiente Descendente: Momentum e Adam

    O gradiente descendente simples, já visto por completo em `machine-learning`, não é derivado de novo aqui, mas estendido. O momentum acumula uma velocidade ao longo dos passos para suavizar gradientes ruidosos e atravessar mais rápido regiões rasas, e o Adam combina esse momentum com uma taxa de aprendizado adaptativa por parâmetro, o otimizador padrão para quase todas as arquiteturas que o resto desta disciplina cobre.

    Ler →6 seções7 min
  5. Regularização em Redes Profundas: Dropout e Weight Decay

    O mesmo trade-off viés-variância e o mesmo overfitting já vistos para modelos lineares se aplicam a redes profundas com milhões de parâmetros, só que com mais urgência. O weight decay é exatamente a penalidade ridge já vista, aplicada aos pesos de uma rede, enquanto o dropout é uma técnica sem nenhum análogo em modelos rasos: apagar unidades aleatoriamente durante o treino para impedir que qualquer uma delas se coadapte em um detector de features específico demais e frágil.

    Ler →6 seções7 min
  6. Batch Normalization

    Uma camada que não faz nada além de recentralizar e reescalar sua entrada para estatísticas de gaussiana unitária, usando a média e a variância do próprio mini-batch. Ela é inserida entre uma camada linear e sua ativação justamente para manter estável a distribuição de entrada de cada camada conforme os pesos abaixo dela mudam durante o treino, permitindo que taxas de aprendizado bem maiores convirjam de forma confiável.

    Ler →6 seções7 min
  7. Convolução como um Produto Escalar Deslizante

    A operação que o curso âncora desta disciplina (CS231n) existe para ensinar a fundo. Um pequeno filtro aprendido desliza sobre uma imagem calculando um produto escalar (exatamente a operação já vista como fato da álgebra vetorial) em cada posição, produzindo um mapa de features que acende onde quer que apareça o padrão que o filtro aprendeu a detectar.

    Ler →6 seções8 min
  8. Pooling, Strides, Padding e Compartilhamento de Pesos

    A mecânica que transforma uma única convolução em uma camada prática e treinável. O stride controla quanto o filtro salta entre posições, o padding controla o que acontece na borda e o pooling descarta detalhes espaciais de propósito para embutir alguma tolerância à translação. E o motivo mais profundo de uma camada convolucional precisar de ordens de grandeza menos parâmetros que uma totalmente conectada: cada posição da imagem reaproveita exatamente os mesmos pesos do filtro.

    Ler →6 seções8 min
  9. Arquiteturas de CNN e Conexões Residuais

    Como empilhar blocos de convolução/pooling evoluiu do LeNet para o AlexNet, o VGG e o ResNet, e por que simplesmente empilhar mais camadas acabou piorando a acurácia até que as conexões residuais (skip connections) deixassem uma camada aprender uma correção sobre sua entrada, em vez de uma representação inteiramente nova, combatendo diretamente o problema do gradiente que desaparece em redes muito profundas. Também explica por que a operação central de toda esta disciplina, a multiplicação de matrizes, é exatamente o tipo de carga massivamente paralela em dados para a qual as GPUs foram construídas.

    Ler →6 seções9 min
  10. Redes Neurais Recorrentes e Backpropagation Through Time

    A arquitetura construída para dados com uma ordem inerente (texto, áudio, séries temporais), em que um único estado oculto é levado adiante e atualizado a cada passo de tempo usando os mesmos pesos compartilhados. O treino desdobra essa recorrência em um único grafo computacional longo, para que o backpropagation (já visto por completo) possa rodar ao longo do tempo, além de ao longo das camadas.

    Ler →6 seções7 min
  11. O Gradiente que Desaparece no Tempo: Gating de LSTM e GRU

    O mesmo problema do gradiente que desaparece já diagnosticado para redes feedforward muito profundas reaparece de forma ainda mais aguda quando uma rede recorrente é desdobrada ao longo de uma sequência longa. E o mecanismo de gating que o corrige: as portas de esquecimento, entrada e saída da LSTM (com a GRU como variante simplificada) mantêm uma célula de memória com um caminho de propagação de erro quase constante ao longo do tempo, permitindo que os gradientes sobrevivam a dezenas ou centenas de passos de tempo em vez de desaparecerem.

    Ler →6 seções9 min
  12. O Mecanismo de Atenção: Query, Key e Value

    Uma resposta diferente para o mesmo problema que o gating de LSTM/GRU só resolve em parte. Deixar cada posição de saída olhar diretamente para cada posição de entrada, em vez de comprimir todo o histórico da sequência em um único estado oculto, calculado com nada mais exótico que o produto escalar. Um vetor query é comparado com cada vetor key, e as pontuações resultantes ponderam uma soma de vetores value.

    Ler →6 seções7 min
  13. Self-Attention, Paralelismo e Positional Encoding

    Aplicar atenção aos próprios tokens de uma sequência, todos de uma vez, remove a dependência estrita da esquerda para a direita que força uma rede recorrente a processar um passo de tempo por vez, já que a atenção de cada posição pode ser calculada em paralelo. Mas esse mesmo paralelismo joga fora completamente a ordem das palavras, a menos que ela seja reinjetada explicitamente, e é exatamente isso que o positional encoding faz.

    Ler →6 seções9 min
  14. A Arquitetura Transformer

    A montagem de self-attention, multi-head attention, conexões residuais (a mesma ideia de skip connection já vista para CNNs muito profundas) e camadas feed-forward por posição na arquitetura que hoje domina modelos de linguagem, de visão e multimodais. É o modelo em direção ao qual todo este bloco de atenção vinha construindo.

    Ler →6 seções8 min
  15. Aprendizado de Representações: A Rede Aprende as Próprias Features

    A ideia unificadora por baixo de toda arquitetura que esta disciplina cobriu. As primeiras camadas de uma CNN aprendem detectores genéricos de bordas e cores, enquanto as camadas posteriores aprendem features cada vez mais específicas da tarefa, e os embeddings de um transformer cumprem exatamente o mesmo papel para tokens. Nos dois casos, a rede não recebe features de um humano; ela aprende a própria representação da entrada diretamente dos dados, e é justamente por isso que um modelo treinado em um grande dataset se transfere tão bem para uma tarefa nova e relacionada.

    Ler →6 seções8 min
  16. Autoencoders e Espaços Latentes Aprendidos

    O primeiro modelo generativo desta disciplina. Um encoder comprime uma entrada até um pequeno vetor de gargalo e um decoder reconstrói o original só a partir desse gargalo, treinados de ponta a ponta para minimizar o erro de reconstrução. É uma generalização direta e não linear do PCA (já visto como o caso linear exatamente dessa mesma ideia de compressão) e a base sobre a qual as arquiteturas generativas mais elaboradas que vêm a seguir são construídas.

    Ler →6 seções8 min
  17. Além dos Autoencoders: GANs e Modelos de Difusão, Um Panorama

    Um olhar deliberadamente panorâmico sobre as duas famílias generativas que mais visivelmente definem as aplicações de IA atuais. O gerador e o discriminador de uma rede adversarial generativa presos em um jogo minimax, e o processo iterativo de remoção de ruído de um modelo de difusão, cobrindo a ideia central e por que cada um superou as reconstruções mais borradas de um autoencoder simples, deixando explicitamente a dinâmica completa de treino e as derivações matemáticas para uma disciplina futura e mais avançada.

    Ler →6 seções9 min
  18. Capstone: Projetando um Modelo de Deep Learning para uma Nova Tarefa

    Um roteiro de capstone que compara cada família de arquitetura vista nesta disciplina (redes multicamadas simples, CNNs, RNN/LSTM/GRU e Transformers) pela estrutura de dados que cada uma pressupõe (grade, sequência, conjunto) e pelas preocupações de treino (inicialização, regularização, otimizador, computação) que se aplicam a todas elas, estendendo o guia de decisão análogo que fechou `machine-learning` dos modelos clássicos para as arquiteturas profundas que esta disciplina acrescentou.

    Ler →6 seções8 min

Deep Learning

Part of the Computer Science curriculum.

Sort
1

Redes Multicamadas como Transformações Lineares Compostas

Esta disciplina começa exatamente onde `machine-learning` deliberadamente parou (uma rede de unidades parecidas com perceptrons, em camadas, com ativações não lineares) e lhe dá um mecanismo real e preciso. Cada camada densa é literalmente uma multiplicação de matriz seguida de uma não linearidade, e o forward pass inteiro é uma única função composta, pronta para ser treinada em escala.

2

Backpropagation: A Regra da Cadeia Através de um Grafo Computacional

O algoritmo com que toda rede desta disciplina é treinada. Representa-se o forward pass como um grafo computacional de pequenas operações localmente diferenciáveis e depois se percorre esse grafo de trás para frente aplicando a regra da cadeia multivariável um nó por vez, de modo que um único backward pass calcula o gradiente do loss em relação a todos os pesos de todas as camadas de uma vez.

3

Softmax e Loss de Cross-Entropy

A função de loss contra a qual quase todo classificador desta disciplina é de fato treinado. O softmax transforma os scores brutos de saída de uma rede em uma distribuição de probabilidade sobre as classes, e a cross-entropy, derivada aqui diretamente por máxima verossimilhança sobre essa distribuição (o mesmo argumento de MLE já usado na regressão logística), mede exatamente quão longe essa distribuição está do rótulo verdadeiro.

4

Inicialização de Pesos e o Problema do Gradiente que Desaparece/Explode

Por que uma rede profunda não pode simplesmente ser inicializada com pesos todos zero ou aleatórios arbitrários. O backpropagation multiplica as derivadas de muitas camadas, então um viés sistemático na escala dessas derivadas se compõe multiplicativamente com a profundidade, encolhendo os gradientes até perto de zero ou fazendo-os explodir; e por que esquemas calibrados, como as inicializações Xavier e He, existem especificamente para manter esse produto estável.

5

Otimizadores Além do Gradiente Descendente: Momentum e Adam

O gradiente descendente simples, já visto por completo em `machine-learning`, não é derivado de novo aqui, mas estendido. O momentum acumula uma velocidade ao longo dos passos para suavizar gradientes ruidosos e atravessar mais rápido regiões rasas, e o Adam combina esse momentum com uma taxa de aprendizado adaptativa por parâmetro, o otimizador padrão para quase todas as arquiteturas que o resto desta disciplina cobre.

6

Regularização em Redes Profundas: Dropout e Weight Decay

O mesmo trade-off viés-variância e o mesmo overfitting já vistos para modelos lineares se aplicam a redes profundas com milhões de parâmetros, só que com mais urgência. O weight decay é exatamente a penalidade ridge já vista, aplicada aos pesos de uma rede, enquanto o dropout é uma técnica sem nenhum análogo em modelos rasos: apagar unidades aleatoriamente durante o treino para impedir que qualquer uma delas se coadapte em um detector de features específico demais e frágil.

7

Batch Normalization

Uma camada que não faz nada além de recentralizar e reescalar sua entrada para estatísticas de gaussiana unitária, usando a média e a variância do próprio mini-batch. Ela é inserida entre uma camada linear e sua ativação justamente para manter estável a distribuição de entrada de cada camada conforme os pesos abaixo dela mudam durante o treino, permitindo que taxas de aprendizado bem maiores convirjam de forma confiável.

8

Convolução como um Produto Escalar Deslizante

A operação que o curso âncora desta disciplina (CS231n) existe para ensinar a fundo. Um pequeno filtro aprendido desliza sobre uma imagem calculando um produto escalar (exatamente a operação já vista como fato da álgebra vetorial) em cada posição, produzindo um mapa de features que acende onde quer que apareça o padrão que o filtro aprendeu a detectar.

9

Pooling, Strides, Padding e Compartilhamento de Pesos

A mecânica que transforma uma única convolução em uma camada prática e treinável. O stride controla quanto o filtro salta entre posições, o padding controla o que acontece na borda e o pooling descarta detalhes espaciais de propósito para embutir alguma tolerância à translação. E o motivo mais profundo de uma camada convolucional precisar de ordens de grandeza menos parâmetros que uma totalmente conectada: cada posição da imagem reaproveita exatamente os mesmos pesos do filtro.

10

Arquiteturas de CNN e Conexões Residuais

Como empilhar blocos de convolução/pooling evoluiu do LeNet para o AlexNet, o VGG e o ResNet, e por que simplesmente empilhar mais camadas acabou piorando a acurácia até que as conexões residuais (skip connections) deixassem uma camada aprender uma correção sobre sua entrada, em vez de uma representação inteiramente nova, combatendo diretamente o problema do gradiente que desaparece em redes muito profundas. Também explica por que a operação central de toda esta disciplina, a multiplicação de matrizes, é exatamente o tipo de carga massivamente paralela em dados para a qual as GPUs foram construídas.

11

Redes Neurais Recorrentes e Backpropagation Through Time

A arquitetura construída para dados com uma ordem inerente (texto, áudio, séries temporais), em que um único estado oculto é levado adiante e atualizado a cada passo de tempo usando os mesmos pesos compartilhados. O treino desdobra essa recorrência em um único grafo computacional longo, para que o backpropagation (já visto por completo) possa rodar ao longo do tempo, além de ao longo das camadas.

12

O Gradiente que Desaparece no Tempo: Gating de LSTM e GRU

O mesmo problema do gradiente que desaparece já diagnosticado para redes feedforward muito profundas reaparece de forma ainda mais aguda quando uma rede recorrente é desdobrada ao longo de uma sequência longa. E o mecanismo de gating que o corrige: as portas de esquecimento, entrada e saída da LSTM (com a GRU como variante simplificada) mantêm uma célula de memória com um caminho de propagação de erro quase constante ao longo do tempo, permitindo que os gradientes sobrevivam a dezenas ou centenas de passos de tempo em vez de desaparecerem.

13

O Mecanismo de Atenção: Query, Key e Value

Uma resposta diferente para o mesmo problema que o gating de LSTM/GRU só resolve em parte. Deixar cada posição de saída olhar diretamente para cada posição de entrada, em vez de comprimir todo o histórico da sequência em um único estado oculto, calculado com nada mais exótico que o produto escalar. Um vetor query é comparado com cada vetor key, e as pontuações resultantes ponderam uma soma de vetores value.

14

Self-Attention, Paralelismo e Positional Encoding

Aplicar atenção aos próprios tokens de uma sequência, todos de uma vez, remove a dependência estrita da esquerda para a direita que força uma rede recorrente a processar um passo de tempo por vez, já que a atenção de cada posição pode ser calculada em paralelo. Mas esse mesmo paralelismo joga fora completamente a ordem das palavras, a menos que ela seja reinjetada explicitamente, e é exatamente isso que o positional encoding faz.

15

A Arquitetura Transformer

A montagem de self-attention, multi-head attention, conexões residuais (a mesma ideia de skip connection já vista para CNNs muito profundas) e camadas feed-forward por posição na arquitetura que hoje domina modelos de linguagem, de visão e multimodais. É o modelo em direção ao qual todo este bloco de atenção vinha construindo.

16

Aprendizado de Representações: A Rede Aprende as Próprias Features

A ideia unificadora por baixo de toda arquitetura que esta disciplina cobriu. As primeiras camadas de uma CNN aprendem detectores genéricos de bordas e cores, enquanto as camadas posteriores aprendem features cada vez mais específicas da tarefa, e os embeddings de um transformer cumprem exatamente o mesmo papel para tokens. Nos dois casos, a rede não recebe features de um humano; ela aprende a própria representação da entrada diretamente dos dados, e é justamente por isso que um modelo treinado em um grande dataset se transfere tão bem para uma tarefa nova e relacionada.

17

Autoencoders e Espaços Latentes Aprendidos

O primeiro modelo generativo desta disciplina. Um encoder comprime uma entrada até um pequeno vetor de gargalo e um decoder reconstrói o original só a partir desse gargalo, treinados de ponta a ponta para minimizar o erro de reconstrução. É uma generalização direta e não linear do PCA (já visto como o caso linear exatamente dessa mesma ideia de compressão) e a base sobre a qual as arquiteturas generativas mais elaboradas que vêm a seguir são construídas.

18

Além dos Autoencoders: GANs e Modelos de Difusão, Um Panorama

Um olhar deliberadamente panorâmico sobre as duas famílias generativas que mais visivelmente definem as aplicações de IA atuais. O gerador e o discriminador de uma rede adversarial generativa presos em um jogo minimax, e o processo iterativo de remoção de ruído de um modelo de difusão, cobrindo a ideia central e por que cada um superou as reconstruções mais borradas de um autoencoder simples, deixando explicitamente a dinâmica completa de treino e as derivações matemáticas para uma disciplina futura e mais avançada.

19

Capstone: Projetando um Modelo de Deep Learning para uma Nova Tarefa

Um roteiro de capstone que compara cada família de arquitetura vista nesta disciplina (redes multicamadas simples, CNNs, RNN/LSTM/GRU e Transformers) pela estrutura de dados que cada uma pressupõe (grade, sequência, conjunto) e pelas preocupações de treino (inicialização, regularização, otimizador, computação) que se aplicam a todas elas, estendendo o guia de decisão análogo que fechou `machine-learning` dos modelos clássicos para as arquiteturas profundas que esta disciplina acrescentou.