ONIA – Conteúdos da 4ª Fase

Aqui, existem todos os conteúdos que podem cair nas provas da última fase da ONIA. Vale lembrar que, especialmente para as primeiras etapas, nem tudo que está aqui será cobrado – especialmente os conceitos mais complexos.

Para deixar a lista de conteúdos mais organizada, ela foi dividida em ciclos, levando em conta a simplicidade das primeiras provas dessa fase. Cada tópico pertence a um ciclo, começando do 1. A recomendação é estudar todos os tópicos do ciclo 1 antes de avançar para o ciclo 2, e assim por diante.

Além disso, cada tópico tem uma nota de importância, de 0 a 10. Os de importância alta (>7) merecem atenção especial, pois têm maior chance de cair na prova. Já os de baixa importância (<3) podem receber menos foco.

Assim, a lista fica objetiva e pode ser usada tanto para revisar conteúdos básicos quanto para aprofundar nos mais avançados (a depender dos ciclos).

Se quiser ver os conteúdos das outras fases, clique aqui.

Lista de conteúdos/Guia de estudo – ONIA

Ciclo 1
  1. Parte 1: Fundamentos da IA e Matemática
    • Intuição da IA (teórico):
      • O que é IA e que tipo de problema ela resolve. Importância: 3
      • Exemplos simples: regressão (e.x. predizer preço de casas), classificação (e.x. dataset do Titanic, análise de sentimento). Importância: 5
      • Noção de eventos determinísticos vs estocásticos. Importância: 4
      • Importância dos dados e a intuição de extrair padrões: IA como uma “máquina estatística”. Importância: 6
      • Ciclo de treinamento: “ensinar” com dados de treino, “provar” que aprendeu com dados de validação. Importância: 7
    • Ética e História da IA (Teórico)
      • Viés nos dados e estratégias de mitigação. Importância: 3
      • Noções básicas de copyright em dados e modelos. Importância: 1
      • Contexto histórico: Conferẽncia de Dartmouth, problema XOR, inverno da IA. Importância: 1
    • Lógica e Raciocínio Matemático (Teórico/Prático)
      • Definição e funcionamento de grafos. Importância: 5
    • Matemática Aplicada (Teórico)
      • Estatística básica: Média, moda, mediana, esperança e variância. Importância: 6
  2. Parte 2: Ferramentas e Programação
    • Python Essencial (Prático):
      • Sintaxe, tipos (int, str, bool), estruturas de dados (list, dict, tuple, set) e manipulação. Importância: 10.
      • Estruturas de controle de fluxo (if, for, while) e list comprehension. Importância: 10
      • Funções (incluindo *args, *kwargs), módulos e pacotes. Importância: 8.
      • Tratamento de erros (try/except) e gerenciador de contexto (with). Importância: 7.
      • Classes e objetos. Importância: 10.
    • Análise de Dados com Pandas (Prático)
      • Carregamento de dados (CSV, Parquet) e manipulação básica de DataFrames (seleção, deleção). Importância: 8.
      • Inspeção de dados: head, info, describe, value_counts. Preenchimento de nulos. Importância: 8.
      • Indexing com loc, iloc e boolean masks. Importância: 9.
      • Análise Exploratória de Dados (EDA) básica para entender a estrutura e distribuição de dados. Importância: 6.
    • Computação Numérica com Numpy (Prático)
      • Entender arrays multidimensionais (tensores) e seu shape. Importância: 8.
      • Operações de reshape e flatten. Importância: 7.
      • Indexing, slicing e boolean indexing. Importância: 8.
  3. Parte 3: Machine Learning clássico (Teórico/Prático):
    • Fundamentos do Treinamento (Teórico/Prático)
      • Visão geral do Pipeline de ML: Pré-processamento, Treino, Validação e Teste. Importância: 9.
      • Divisão dos dados: treino/teste e treino/validação/teste. Entender data leakage. Importância: 9.
      • Conceitos cruciais: Overfitting, underfitting e o tradeoff viés-variância. Noção de generalização. Importância: 10.
    • Pré-processamento e Features (Prático)
      • Data cleaning (nulos, inválidos) e remoção de outliers. Importância: 8.
      • Encodings para variáveis categóricas: one-hot e label encoding. Importância: 7.
      • Data scaling: StandardScaler e MinMaxScaler, vantagens e desvantagens. Importância: 8.
    • Algoritmos Supervisionados com Scikit-learn (Prático)
      • Regressão Linear, Regressão Logística e K-Nearest Neighbors (KNN). Ciclo: 1. Importância: 8.
      • Árvores de Decisão (Decision Trees) e Random Forest. Ciclo: 1. Importância: 9.
  4. Parte 4: Deep Learning
    • Fundamentos de Redes Neurais (Prático)
      • Perceptron: conceito e limitação (problemas não linearmente separáveis como o XOR). Implementação em Python. Importância: 6.
Ciclo 2
  1. Parte 1: Fundamentos de IA e Matemática
    • Lógica e Raciocínio (Teórico/Prático)
      •  Aprofundamento em grafos: uni/bidirecionais, pesos. Ciclo: 2. Importância: 6.
      • Algoritmos de navegação em grafos: DFS, BFS e Djikstra. Ciclo: 2. Importância: 7.
      • State Machines. Ciclo: 2. Importância: 5.
    • Matemática Aplicada (Teórico)
      • Funções matemáticas: polinômios, log, exponencial. Domínio e imagem. Ciclo: 2. Importância: 7.
      • Álgebra Linear: Vetores e matrizes. Multiplicação, transposição, determinantes, matriz identidade. Ciclo: 2. Importância: 8.
      • Noções de Cálculo: Derivadas e sua aplicação para achar mínimos/máximos de funções. Importância: 7.
      • Distribuições estatísticas (Noção do que é uma e o que representa). Ciclo: 2. Importância: 5.
  2. Parte 2: Ferramentas e programação
    • Python essencial (Prático)
      • Classes e objetos. Ciclo: 2. Importância: 8.
    • Análise de Dados com Pandas (Prático)
      • Manipulação avançada: transformações com apply, grupagem com groupby e agg. Ciclo: 2. Importância: 7.
    • Computação Numérica com Numpy (Prático)
      • Operações com matrizes: soma, multiplicação, transposição.Importância: 7.
  3. Parte 3: Machine Learning Clássico (Teórico/Prático)
    • Fundamentos do Treinamento (Teórico/Prático)
      • Validação Cruzada (K-fold cross-validation). Importância: 7.
    • Pré-processamento e Features (Prático)
      • Como lidar com desbalanceamento de classes (ex: oversampling, undersampling – conceitual). Importância: 7.
      • Feature Engineering: criação de novas features e análise de correlação. Importância: 6.
    • Algoritmos Supervisionados com Scikit-learn (Prático)
      • Gradient Boosting, Support Vector Machines (SVM). Importância: 7.
      • Busca de hiperparâmetros com GridSearchCV. Importância: 6.
    • Aprendizado Não Supervisionado (Teórico/Prático)
      • Redução de dimensionalidade: PCA (linear), t-SNE e UMAP (não-linear). Importância: 7.
      • Clustering: K-Means e DBSCAN. Importância: 6
  4. Parte 4: Deep Learning
    • Fundamentos de Redes Neurais (Teórico)
      • Rede Neural: múltiplos perceptrons. Forward pass (pesos, viés, função de ativação). Importância: 9.
      • Ciclo de treinamento: Forward, cálculo do erro (loss), e a intuição do backward pass/backpropagation. Importância: 10.
      • Funções de Perda: MSE/MAE para regressão, Cross-Entropy para classificação. Importância: 8
      • Otimizadores: intuição do Gradiente Descendente Estocástico (SGD), Momentum e Adam. Importância: 8.
    • Deep Learning na Prática com PyTorch (Prático)
      • Introdução com Keras para problemas tabulares (opcional, para uma visão mais simples). Importância: 5.
      • PyTorch: Tensores, nn.Module, nn.Linear, e a construção de um loop de treinamento. Importância: 9.
      • Classes Dataset e DataLoader do PyTorch para gerenciamento de dados e batching. Importância: 8.
      • Uso de GPUs para aceleração de treino (device, .to(‘cuda’)). Importância: 7.
    • Técnicas de Treinamento e Regularização (Teórico/Prático)
      • Monitoramento de treino: curvas de loss de treino/validação para identificar overfit/underfit. Importância: 10.
      • Early Stopping como principal estratégia contra overfitting. Importância: 9.
      • Camadas de regularização: Dropout, BatchNorm, LayerNorm. Importância: 8.
      • Regularização L1/L2 (Weight Decay). Ciclo: 2. Importância: 6.
  5. Parte 5: Visão Computacional
    • Fundamentos de CNNs (Teórico/Prático)
      • O que é uma convolução e por que é eficiente para imagens. Intuição da extração de features. Importância: 9.
      • Camadas convolucionais: kernels, stride, padding. Importância: 8.
      • Camadas de Pooling (Max, Average) para redução de dimensionalidade. Importância: 7.
      • Implementar uma CNN simples para classificação (ex: MNIST, FashionMNIST). Importância: 8.
    • Pipeline de CV (Prático)
      • Datasets de imagem no PyTorch e pré-processamento (transforms) para data augmentation. Importância: 8.
      • Conceito de backbone (extrator de features) e head (tarefa específica). Importância: 7.
    • Arquiteturas de CV (Teórico/Prático)
      • ResNet: intuição das skip connections. Usar uma ResNet pré-treinada (ex: ResNet18) e criar uma ResNet do 0. Ciclo: 2. Importância: 8.
      • YOLO: conceito para detecção de objetos. Usar a biblioteca Ultralytics. Importância: 8.
  6. Parte 6: Processamento de Linguagem natural (NLP)
    • Fundamentos de NLP (Teórico)
      • Desafios do NLP. Abordagens clássicas (RNNs, LSTMs, n-grams) – apenas a intuição. Importância: 4.
      • Embeddings: a ideia de representar palavras/tokens como vetores em um espaço. Essencial. Importância: 9.
      • Tokenização: o processo de dividir texto em unidades menores (palavras, sub-palavras). Importância: 8.
      • Arquitetura Seq2Seq com atenção clássica (intuição do mecanismo). Importância: 5.
Ciclo 3
  1. Parte 1: Fundamentos da IA e Matemática
    • Matemática Aplicada (Teórico)
      • Derivadas parciais e cálculo do gradiente. Importância: 8.
  2. Parte 2: Programação e Ferramentas: Nenhum conteúdo no Ciclo 3
  3. Parte 3: Machine Learning Clássico (Teórico/Prático)
    • Avaliação de Modelos (Teórico/Prático)
      • Curvas ROC-AUC e PR-AUC (conceitual). Importância: 6.
  4. Parte 4: Deep Learning
    • Fundamentos de Redes Neurais (Teórico)
      • A matemática da backpropagation: derivadas parciais e a regra da cadeia. Importância: 7.
      • Problemas de gradiente (vanishing/exploding) e o papel das funções de ativação. Importância: 6.
    • Técnicas de Treinamento e Regularização (Teórico/Prático)
      • Regularização L1/L2 (Weight Decay). Importância: 8.
      • Learning Rate Schedulers (conceito e uso). Importância: 8.
  5. Parte 5: Visão Computacional
    • Pipeline de CV (Prático)
      • Transfer Learning e Fine-tuning usando modelos pré-treinados. Importância: 9.
    • Arquiteturas de CV (Teórico/Prático)
      • UNet: arquitetura encoder-decoder para tarefas de segmentação (conceitual). Importância: 6.
      • Vision Transformers (ViT): noção da aplicação de transformers em imagens (teórico). Importância: 5.
  6. Parte 6: Processamento de Linguagem natural (NLP)
    • Era dos Transformers (Teórico/Prático)
      • Arquiteturas de Encoders/Decoders. Importância: 10
      • O paper “Attention Is All You Need”: intuição do self-attention e da arquitetura Transformer. Importância: 10.
      • Arquiteturas Encoder-Only (BERT) e Decoder-Only (GPT). Bidirecionalidade vs. Autoregressivo. Importância: 9.
      • BERT: fine-tuning para tarefas de classificação de texto (análise de sentimento, etc). Importância: 9.
      • GPT: uso de modelos leves para geração de texto e familiarização com o pipeline de prompt. Importância: 8.
Ciclo 4
  1. Parte 5: Visão Computacional
    • Arquiteturas de CV (Teórico/Prático)
      • Attention Masks em UNets. Importância: 6.
      • Geração de imagens com GANs/VAEs (conceitual). Importância: 4.
  2. Parte 6: Processamento de Linguagem natural (NLP)
    • Era dos Transformers (Teórico/Prático)
      • Técnicas de aprimoramento: fine-tuning com LoRA e o conceito de RAG. Importância: 7.
Todos os Ciclos
  1. Parte 1: Fundamentos de IA e Matemática
    • Conceitos Intuitivos de IA (Teórico)
      •  O que é IA e que tipo de problema ela resolve. Ciclo: 1. Importância: 4.
      • Exemplos simples: regressão (preço de casa), classificação (titanic, análise de sentimento). Ciclo: 1. Importância: 5.
      • Noção de eventos determinísticos vs. estocásticos. Ciclo: 1. Importância: 3.
      • Importância dos dados e a intuição de extrair padrões. A IA como uma “máquina estatística”. Ciclo: 1. Importância: 6.
      • Ciclo de treinamento: “ensinar” com dados de treino, “provar” que aprendeu com dados de validação. Ciclo: 1. Importância: 7.
    • Ética e História da IA (Teórico)
      • Viés nos dados e estratégias simples de mitigação. Ciclo: 1. Importância: 3.
      • Noções básicas de copyright em dados e modelos. Ciclo: 1. Importância: 2.
      • Contexto histórico: Conferência de Dartmouth, problema XOR e o primeiro inverno da IA. Ciclo: 1. Importância: 1.
    • Lógica e Raciocínio (Teórico/Prático)
      • Identificação de padrões visuais e raciocínio espacial (navegação em grids). Ciclo: 1. Importância: 4.
      • Definição e funcionamento de grafos. Ciclo: 1. Importância: 5.
      •  Aprofundamento em grafos: uni/bidirecionais, pesos. Ciclo: 2. Importância: 6.
      • Algoritmos de navegação em grafos: DFS, BFS e Djikstra. Ciclo: 2. Importância: 7.
      • State Machines. Ciclo: 2. Importância: 5.
    • Matemática Aplicada (Teórico)
      • Estatística básica: Média, moda, mediana, esperança e variância. Ciclo: 1. Importância: 6.
      • Funções matemáticas: polinômios, log, exponencial. Domínio e imagem. Ciclo: 2. Importância: 7.
      • Álgebra Linear: Vetores e matrizes. Multiplicação, transposição, determinantes, matriz identidade. Ciclo: 2. Importância: 8.
      • Noções de Cálculo: Derivadas e sua aplicação para achar mínimos/máximos de funções. Ciclo: 2 (começe com uma compreensão de alto nível. Depois, aprofunde (a não ser que você queira aprender isso antes)). Importância: 7.
      • Derivadas parciais e a cálculo do gradiente. Ciclo: 3. Importância: 8.
      • Distribuições estatísticas. Ciclo: 2. Importância: 5.
  2. Parte 2: Ferramentas e programação
    • Python essencial (Prático)
      • Sintaxe, tipos (int, str, bool), estruturas de dados (list, dict, tuple, set) e manipulação. Ciclo: 1. Importância: 10.
      • Estruturas de controle de fluxo (if, for, while) e list comprehension. Ciclo: 1. Importância: 10
      • Funções (incluindo *args, *kwargs), módulos e pacotes. Ciclo: 1. Importância: 9.
      • Tratamento de erros (try/except) e gerenciador de contexto (with). Ciclo: 1. Importância: 7.
      • Classes e objetos. Ciclo: 2. Importância: 8.
    • Análise de Dados com Pandas (Prático)
      • Carregamento de dados (CSV, Parquet) e manipulação básica de DataFrames (seleção, deleção). Ciclo: 1. Importância: 8.
      • Inspeção de dados: head, info, describe, value_counts. Preenchimento de nulos.  Ciclo: 1. Importância: 8.
      • Indexing com loc, iloc e boolean masks. Ciclo: 1. Importância: 9.
      • Análise Exploratória de Dados (EDA) básica para entender a estrutura e distribuição dos dados. Ciclo: 1. Importância: 6.
      • Manipulação avançada: transformações com apply, grupagem com groupby e agg. Ciclo: 2. Importância: 7.
    • Computação Numérica com Numpy (Prático)
      • Entender arrays multidimensionais (tensores) e seu shape. Ciclo: 1. Importância: 8.
      • Operações de reshape e flatten. Ciclo: 1. Importância: 7.
      • Indexing, slicing e boolean indexing. Ciclo: 1. Importância: 8.
      • Operações com matrizes: soma, multiplicação, transposição. Ciclo: 2. Importância: 7.
  3. Parte 3: Machine Learning Clássico (Teórico/Prático)
    • Fundamentos do Treinamento (Teórico/Prático)
      • Visão geral do Pipeline de ML: Pré-processamento, Treino, Validação e Teste. Ciclo: 1. Importância: 9.
      • Divisão dos dados: treino/teste e treino/validação/teste. Entender data leakage. Ciclo: 1. Importância: 9.
      • Conceitos cruciais: Overfitting, underfitting e o tradeoff viés-variância. Noção de generalização. Ciclo: 1. Importância: 10.
      • Validação Cruzada (K-fold cross-validation). Ciclo: 2. Importância: 7.
    • Pré-processamento e Features (Prático)
      • Data cleaning (nulos, inválidos) e remoção de outliers. Ciclo: 1. Importância: 8.
      • Encodings para variáveis categóricas: one-hot e label encoding. Ciclo: 1. Importância: 7.
      • Data scaling: StandardScaler e MinMaxScaler, vantagens e desvantagens. Ciclo: 1. Importância: 8.
      • Como lidar com desbalanceamento de classes (ex: oversampling, undersampling – conceitual). Ciclo: 2. Importância: 7.
      • Feature Engineering: criação de novas features e análise de correlação. Ciclo: 2. Importância: 6.
    • Algoritmos Supervisionados com Scikit-learn (Prático)
      • Regressão Linear, Regressão Logística e K-Nearest Neighbors (KNN). Ciclo: 1. Importância: 8.
      • Árvores de Decisão (Decision Trees) e Random Forest. Ciclo: 1. Importância: 9.
      • Gradient Boosting, Support Vector Machines (SVM). Ciclo: 2. Importância: 7.
      • Busca de hiperparâmetros com GridSearchCV. Ciclo: 2. Importância: 6.
      • Naive Bayes (apenas conhecer o conceito). Ciclo: 1. Importância: 2.
    • Avaliação de Modelos (Teórico/Prático)
      • Métricas de classificação: Acurácia, Precisão, Recall, F1-Score e Matriz de Confusão. Ciclo: 1. Importância: 9.
      • Métricas de regressão: MSE e MAE. Ciclo: 1. Importância: 7.
      • Curvas ROC-AUC e PR-AUC (conceitual). Ciclo: 3. Importância: 6.
      • Visualização de resultados com scatter plots e curvas de aprendizado. Ciclo: 1. Importância: 5.
    • Aprendizado Não Supervisionado (Teórico/Prático)
      • Redução de dimensionalidade: PCA (linear), t-SNE e UMAP (não-linear). Ciclo: 2. Importância: 7.
      • Clustering: K-Means e DBSCAN. Ciclo: 2. Importância: 6.
  4. Parte 4: Deep Learning
    • Fundamentos de Redes Neurais (Teórico)
      • Perceptron: conceito e limitação (problemas não linearmente separáveis como o XOR). Ciclo: 1/2. Importância: 6.
      • Rede Neural: múltiplos perceptrons. Forward pass (pesos, viés, função de ativação). Ciclo: 2. Importância: 9.
      • Ciclo de treinamento: Forward, cálculo do erro (loss), e a intuição do backward pass/backpropagation. Ciclo: 2. Importância: 10.
      • Funções de Perda: MSE/MAE para regressão, Cross-Entropy para classificação. Ciclo: 2. Importância: 8
      • Otimizadores: intuição do Gradiente Descendente Estocástico (SGD), Momentum e Adam. Ciclo: 2. Importância: 8.
      • A matemática da backpropagation: derivadas parciais e a regra da cadeia. Ciclo: 3. Importância: 7.
      • Problemas de gradiente (vanishing/exploding) e o papel das funções de ativação. Ciclo: 3. Importância: 6.
    • Deep Learning na Prática com PyTorch (Prático)
      • Introdução com Keras para problemas tabulares (opcional, para uma visão mais simples). Ciclo: 2. Importância: 5.
      • PyTorch: Tensores, nn.Module, nn.Linear, e a construção de um loop de treinamento. Ciclo: 2. Importância: 9.
      • Classes Dataset e DataLoader do PyTorch para gerenciamento de dados e batching. Ciclo: 2. Importância: 8.
      • Uso de GPUs para aceleração de treino (device, .to(‘cuda’)). Ciclo: 2. Importância: 7.
    • Técnicas de Treinamento e Regularização (Teórico/Prático)
      • Monitoramento de treino: curvas de loss de treino/validação para identificar overfit/underfit. Ciclo: 2. Importância: 10.
      • Early Stopping como principal estratégia contra overfitting. Ciclo: 2. Importância: 9.
      • Camadas de regularização: Dropout, BatchNorm, LayerNorm. Ciclo: 2. Importância: 8.
      • Regularização L1/L2 (Weight Decay). Ciclo: 2/3. Importância: 6.
      • Learning Rate Schedulers (conceito e uso simples). Ciclo: 3. Importância: 6.
    • Interpretabilidade (Teórico)
      • Noções básicas de explainability (o que é e por que é importante). Ciclo: 3/4. Importância: 2.
  5. Parte 5: Visão Computacional
    • Fundamentos de CNNs (Teórico/Prático)
      • O que é uma convolução e por que é eficiente para imagens. Intuição da extração de features. Ciclo: 2. Importância: 9.
      • Camadas convolucionais: kernels, stride, padding. Ciclo: 2. Importância: 8.
      • Camadas de Pooling (Max, Average) para redução de dimensionalidade. Ciclo: 2. Importância: 7.
      • Implementar uma CNN simples para classificação (ex: MNIST, FashionMNIST). Ciclo: 2. Importância: 8.
    • Pipeline de CV (Prático)
      • Datasets de imagem no PyTorch e pré-processamento (transforms) para data augmentation. Ciclo: 2. Importância: 8.
      • Conceito de backbone (extrator de features) e head (tarefa específica). Ciclo: 2. Importância: 7.
      • Transfer Learning e Fine-tuning usando modelos pré-treinados. Ciclo: 3. Importância: 9.
    • Arquiteturas de CV (Teórico/Prático)
      • ResNet: intuição das skip connections. Usar uma ResNet pré-treinada (ex: ResNet18) e criar uma ResNet do 0. Ciclo: 2. Importância: 8.
      • UNet: arquitetura encoder-decoder para tarefas de segmentação (conceitual). Ciclo: 3. Importância: 6.
      • YOLO: conceito para detecção de objetos. Usar a biblioteca Ultralytics. Ciclo: 2. Importância: 9.
      • Vision Transformers (ViT): noção da aplicação de transformers em imagens (teórico). Ciclo: 3/4. Importância: 5.
      • Geração de imagens com GANs/VAEs (conceitual). Ciclo: 4. Importância: 3.
      • Attention Masks em UNets. Ciclo: 4. Importância: 6.
  6. Parte 6: Processamento de Linguagem natural (NLP)
    • Fundamentos de NLP (Teórico)
      • Desafios do NLP. Abordagens clássicas (RNNs, LSTMs, n-grams) – apenas a intuição. Ciclo: 2. Importância: 4.
      • Embeddings: a ideia de representar palavras/tokens como vetores em um espaço. Essencial. Ciclo: 2. Importância: 9.
      • Tokenização: o processo de dividir texto em unidades menores (palavras, sub-palavras). Ciclo: 2. Importância: 8.
      • Arquitetura Seq2Seq com atenção clássica (intuição do mecanismo). Ciclo: 2/3. Importância: 5.
    • Era dos Transformers (Teórico/Prático)
      • Arquiteturas de Encoders/Decoders. Ciclo: 3. Importância: 10
      • O paper “Attention Is All You Need”: intuição do self-attention e da arquitetura Transformer. Ciclo: 3. Importância: 10.
      • Arquiteturas Encoder-Only (BERT) e Decoder-Only (GPT). Bidirecionalidade vs. Autoregressivo. Ciclo: 3. Importância: 9.
      • BERT: fine-tuning para tarefas de classificação de texto (análise de sentimento, etc). Ciclo: 3. Importância: 9.
      • GPT: uso de modelos leves para geração de texto e familiarização com o pipeline de prompt. Ciclo: 3. Importância: 8.
      • Técnicas de aprimoramento: fine-tuning com LoRA e o conceito de RAG. Ciclo: 4. Importância: 7.