Alvo (target)
O alvo é o que o modelo precisa estimar. Em classificação é uma categoria (sim/não, A/B/C). Em regressão é um número contínuo.
Um vocabulário editorial cobrindo os conceitos atravessados pelas cinco trilhas do laboratório. Cada verbete traz uma frase curta, um parágrafo mais longo e, quando faz sentido, um exemplo de negócio. Os termos mais visuais ganham uma pequena ilustração sob medida.
O alvo é o que o modelo precisa estimar. Em classificação é uma categoria (sim/não, A/B/C). Em regressão é um número contínuo.
A baseline é o piso de comparação. Se o seu modelo sofisticado não vence claramente um chute óbvio (sempre prever a classe majoritária, sempre prever a média), ele não está agregando valor.
Dataset é a planilha estruturada que alimenta o modelo. Cada linha é um caso (cliente, paciente, transação) e cada coluna é uma variável observada sobre ele.
Em um gráfico de dispersão, cada ponto representa um caso real. A posição horizontal é o valor de uma variável; a vertical, de outra. Permite enxergar em segundos se há tendência (subindo, descendo), agrupamentos naturais, valores extremos e o quanto duas variáveis se relacionam. Quando colorimos os pontos pela classe, vemos se as classes estão visualmente separáveis — pista forte sobre quão difícil será a classificação.
Para dois pontos a e b com n coordenadas, a distância euclidiana é √Σ(aᵢ − bᵢ)². É a noção de ‘proximidade’ usada por K-Means e KNN. Por isso variáveis em escalas diferentes precisam ser normalizadas antes — caso contrário, a maior unidade domina a distância.
Mostra como o valor de uma mesma variável se distribui em cada classe (ex.: renda dos clientes que pagaram vs dos que ficaram inadimplentes). Se as duas distribuições se sobrepõem totalmente, essa variável sozinha não distingue as classes. Se ficam separadas, ela é informativa — bom indicador de que vale incluí-la no modelo.
Em treinos iterativos (redes neurais, gradient boosting), monitora-se a perda em um conjunto de validação. Quando ela começa a subir mesmo com a de treino caindo, é sinal de overfitting iniciando. Parar nesse ponto preserva a generalização.
Divide a faixa de uma variável em intervalos (bins) e conta quantos casos caem em cada um. Ajuda a ver se a distribuição é simétrica, enviesada, bimodal, e se há valores muito raros nos extremos.
O holdout é uma reserva intocada: você treina e valida com o restante, e só no fim mede o desempenho real no holdout. É o que mais se aproxima de uma 'prova real' antes de levar o modelo à produção.
Machine Learning (ML, ou aprendizado de máquina) é o ramo da inteligência artificial em que o computador descobre padrões a partir de dados — sem que alguém escreva cada regra. Você apresenta exemplos; o algoritmo encontra a relação entre entradas e saídas.
Em vez de dizer ‘se renda < X e atraso > Y, recuse’, mostramos 10.000 clientes históricos e o algoritmo encontra a fronteira sozinho.
Cada célula da matriz mostra a correlação entre duas variáveis. +1 = sobem juntas; −1 = uma sobe, a outra desce; 0 = independentes. Variáveis altamente correlacionadas entre si (multicolinearidade) podem prejudicar modelos lineares e merecer tratamento (remover uma, combinar, regularizar).
Overfitting acontece quando o modelo se ajusta excessivamente aos detalhes dos dados de treino — incluindo o ruído. No teste, o desempenho cai. É o oposto de generalizar.
Como um candidato que decora respostas de simulado e na prova real, com perguntas reformuladas, vai mal.
Regularização adiciona um termo à perda que cresce com o tamanho dos pesos do modelo. Resultado: o modelo prefere soluções mais simples. As mais conhecidas são L1 (penaliza valor absoluto, tende a zerar pesos irrelevantes) e L2 (penaliza quadrados, suaviza todos juntos).
Cada simulação coloca você no papel de quem decide. O cenário é gerado a cada acesso (dados são sintéticos), suas decisões mudam o resultado, e o Guia está sempre disponível para explicar o que aparece na tela.
O sparkline ao lado de cada variável é um mini-histograma: dá em uma olhada a forma da distribuição (concentrada à esquerda, simétrica, bimodal). Combinado com a média (μ) e a faixa min–máx, resume o comportamento da coluna sem ocupar espaço.
Treinamos o modelo em uma parte dos dados (treino) e o avaliamos em outra parte que ele nunca viu (teste). Sem essa separação, o modelo pode parecer ótimo só porque decorou os exemplos.
Como um aluno: estudar com exercícios resolvidos e ser avaliado com uma prova nova mostra se ele realmente aprendeu.
Cada trilha é um capítulo do percurso, com sua própria voz cromática, suas simulações e seu insígnia. Você pode percorrê-las em qualquer ordem, mas a ordem sugerida é Supervisionado → Não Supervisionado → Reforço → Deep Learning.
Underfitting é quando o modelo não captura a estrutura dos dados — nem aprende. Geralmente sinaliza que o algoritmo é simples demais ou que faltam variáveis informativas.
Em vez de uma única divisão treino/teste, dividimos os dados em K pedaços (folds). Treinamos com K-1 e testamos no que sobra; rotacionamos K vezes. A média das métricas é mais estável e diz se o modelo é robusto ou se foi sorte de uma divisão particular.
5-fold CV: divide os 10.000 clientes em 5 partes; treina e avalia 5 vezes; reporta média ± desvio.
Modelos com alta variância mudam muito de previsão se os dados de treino mudam levemente — sinal de que estão decorando. O equilíbrio viés × variância é central no ML.
Variáveis (ou features, em inglês) são os atributos disponíveis para descrever cada caso. Renda, idade, número de produtos, frequência de uso — cada uma é uma variável.
Viés mede o quanto as previsões do modelo se afastam, em média, da verdade. Modelos muito simples têm alto viés (subajustam). Pode também referir-se a viés ético: o modelo discrimina sistematicamente algum grupo.
Correlação (de Pearson) varia de -1 a +1. Próximo de +1: quando uma sobe, a outra sobe. Próximo de -1: quando uma sobe, a outra cai. Próximo de zero: não há relação linear. Cuidado: correlação não é causalidade.
Feature Engineering é a arte de transformar dados crus em sinal aproveitável: somar duas colunas, calcular uma razão (ticket médio = receita/clientes), extrair mês de uma data, agrupar categorias raras. Variáveis bem desenhadas elevam a performance mais do que trocar de algoritmo.
Em churn, criar a variável 'dias_desde_última_compra' a partir do histórico tende a render mais sinal do que qualquer modelo sofisticado sobre as colunas brutas.
Imputar pela média substitui valores ausentes pelo valor médio da coluna. É seguro e preserva o tamanho da base, mas reduz a variância e suaviza casos raros.
Normalização (z-score) subtrai a média e divide pelo desvio-padrão. Coloca todas as variáveis na mesma escala, para que pesos sejam comparáveis e o modelo não dê importância indevida só por unidade (R$ vs %).
Outliers podem ser ruído (erro de digitação) ou sinal genuíno (fraude, evento raro). A decisão de remover, capar ou manter outliers depende do contexto — e impacta diretamente o modelo.
Uma árvore aprende uma cadeia de cortes: ‘renda > 8.000?’ → ‘atrasos > 2?’ → … até classificar o caso. É extremamente interpretável (você lê a árvore como um fluxograma), captura interações não lineares, mas tende a decorar (overfitting) se for muito profunda. Costuma ser podada por profundidade máxima ou número mínimo de casos por folha.
Um analista de RH consegue ler em voz alta cada nó: ‘Se senioridade ≥ 5 anos e nota ≥ 4, manda para a próxima etapa’.
Um stump é uma árvore com profundidade 1: escolhe a melhor variável e o melhor ponto de corte para separar as classes. É fraco de propósito — útil como baseline e como bloco básico de algoritmos como Gradient Boosting.
Boosting começa com um modelo simples (uma árvore rasa, por exemplo) e adiciona, um a um, novos modelos cuja única missão é reduzir o erro do conjunto até aqui. Em problemas tabulares, famílias de gradient boosting (XGBoost, LightGBM, CatBoost) costumam ser as mais competitivas — muitas vezes mais do que redes neurais.
A versão aglomerativa começa com cada ponto como seu próprio cluster e funde os pares mais próximos até sobrar um só. O resultado é um dendrograma; corta-se em uma altura para escolher quantos grupos manter. Útil quando você quer enxergar a estrutura em diferentes níveis de granularidade.
DBSCAN agrupa pontos que estão densamente conectados (muitos vizinhos próximos) e marca como ruído pontos isolados. Não exige escolher K, mas exige escolher dois parâmetros (raio ε e mínimo de vizinhos). Bom para detectar formas irregulares e identificar anomalias.
K-Means escolhe K centros aleatórios, atribui cada ponto ao centro mais próximo (geralmente por distância euclidiana) e recalcula os centros como média dos pontos atribuídos. Repete até os centros pararem de se mover (convergência). Exige que K seja escolhido pelo analista e que as variáveis estejam na mesma escala.
KNN não treina nada: guarda toda a base. Quando aparece um caso novo, calcula a distância dele para todos os casos e olha os K mais próximos. A classe (ou média) deles é a previsão. É intuitivo, mas exige normalizar variáveis e fica lento em bases grandes.
Naive Bayes calcula a probabilidade de uma classe usando o teorema de Bayes e assume — ingenuamente — que as variáveis são independentes entre si dado o rótulo. Mesmo essa hipótese forte costuma render resultados surpreendentemente bons, especialmente em texto (filtro de spam, classificação de tickets, NPS).
Q-Learning estima Q(s,a): o quanto vale tomar a ação a estando no estado s. A cada interação, atualiza essa estimativa: Q ← Q + α · (recompensa + γ · max Q' − Q). A política final é: em cada estado, escolher a ação com maior Q.
Random Forest treina centenas de árvores, cada uma vendo um subconjunto aleatório de linhas e variáveis. A previsão final é a média (regressão) ou voto majoritário (classificação). Reduz drasticamente o overfitting de uma árvore solta e costuma ser uma das primeiras opções competitivas em problemas tabulares.
Encontra os pesos que melhor ajustam uma equação linear (variáveis × pesos + intercepto) ao alvo, geralmente minimizando o erro quadrático médio. É a família mais interpretável: você consegue ler em voz alta a equação e questionar cada coeficiente.
Estende a regressão simples para várias variáveis: y = a + b₁·x₁ + b₂·x₂ + … + bₙ·xₙ. Cada coeficiente bᵢ representa o efeito médio dessa variável quando as outras estão fixas. Fundamental para entender contribuição relativa de cada fator.
Receita = 5.000 + 200·visitas + 35·tempo_no_site − 120·tempo_resposta_chat.
Modelo de uma reta: o alvo é estimado como intercepto + coeficiente × variável preditora. É o ponto de partida didático: mostra que tudo no ML começa em encontrar parâmetros que minimizam o erro entre o que o modelo prevê e o que de fato aconteceu.
Vendas previstas = 12.000 + 850 × (visitas à loja).
Apesar do nome, é um classificador. Combina linearmente as variáveis (renda × peso₁ + idade × peso₂ + …) e passa por uma função em S (sigmoide), retornando a probabilidade de o caso pertencer à classe positiva. O usuário escolhe a partir de qual probabilidade chamar de ‘sim’ (limiar). É linear, rápido, interpretável e exporta probabilidades — ideal quando o time precisa explicar a decisão.
Em crédito: cada variável recebe um peso; a sigmoide transforma o ‘score’ em probabilidade de inadimplência. Coeficiente positivo = aumenta o risco; negativo = reduz.
SVM busca uma linha (ou um hiperplano em altas dimensões) que separe as classes deixando a maior distância possível entre os pontos de cada lado — chamada de margem. Os pontos que tocam essa margem são os ‘vetores de suporte’. Com o truque do kernel, consegue separar classes que não são linearmente separáveis no espaço original.
Em prevenção de fraudes, é como traçar uma rua larga entre transações legítimas e suspeitas, em vez de uma linha justa que poderia errar com qualquer dado novo.
Acurácia = (acertos) / (total). Em problemas balanceados, é uma medida natural. Em problemas desbalanceados (ex.: 5% de fraudes), pode enganar: prever ‘nunca há fraude’ atinge 95% de acurácia e zero utilidade.
Em modelos lineares, cada variável tem um coeficiente. Sinal positivo: a variável puxa o alvo para cima; sinal negativo: puxa para baixo. A magnitude diz a sensibilidade — mas só é comparável entre variáveis se elas estão na mesma escala (normalizadas).
Se coef(visitas) = 850, cada visita extra à loja aumenta a venda prevista em R$ 850, mantendo o resto igual.
F1 = 2 · (precisão · recall) / (precisão + recall). É um único número que penaliza desequilíbrios entre precisão e recall — útil quando ambos importam.
Erro de omissão: a coisa aconteceu, mas o modelo deixou passar. Ex.: fraude não detectada, doença não diagnosticada. Custo: dano direto.
Erro de excesso de zelo: a coisa não aconteceu, mas o modelo achou que aconteceria. Ex.: cliente bom recusado por engano. Custo: oportunidade perdida.
Inércia mede a compactação dos clusters: WCSS = Σ ||ponto − centroide do seu cluster||². Quanto menor, mais coesos. Aumentar K sempre reduz inércia (no limite K = N, inércia = 0). É por isso que precisamos do cotovelo, e não da inércia mínima.
O intercepto é a constante que ‘ancora’ a equação. Em alguns problemas tem leitura concreta (vendas-base sem nenhuma campanha); em outros é apenas matemática para que o modelo passe pelo lugar certo.
MAE = média de |previsto − real|. Mais robusto a outliers que o RMSE: trata todos os erros igualmente. Fácil de explicar: ‘erramos em média X reais’.
MAPE = média de |previsto − real| / real, em %. Útil quando a escala dos valores varia muito (R$ 100 vs R$ 100.000). Pode explodir se houver valores reais próximos de zero.
Mostra quantos foram acertos verdadeiros (TP/TN) e quantos erros para cada lado (FP/FN). É a forma mais transparente de avaliar um classificador, porque expõe o tipo de erro — e cada erro tem custo de negócio diferente.
MSE é a média de (real − previsto)². Por elevar ao quadrado, pune erros grandes mais do que muitos erros pequenos. A raiz do MSE é o RMSE, que volta à unidade original e é mais fácil de ler.
Precisão = TP / (TP + FP). Mede a confiabilidade dos alarmes do modelo. Precisão alta com recall baixo: o modelo é cauteloso (alarme raro mas confiável); pode estar deixando passar muitos casos.
R² próximo de 1: o modelo explica quase toda a variação observada. Próximo de 0: explica pouco mais que a média ingênua. Negativo: pior que prever a média sempre. Cuidado: R² alto não significa que o modelo faz sentido causal — só que ele se ajustou aos dados.
Recall = TP / (TP + FN). Mede a cobertura: quanto do problema o modelo enxerga. Recall alto com precisão baixa: o modelo é zeloso (poucos escapam, mas com muitos alarmes falsos).
Cada caso da base tem um resíduo. Se o modelo é bom, os resíduos se distribuem em torno do zero, sem padrão. Resíduos sistematicamente positivos ou negativos em alguma faixa indicam que o modelo erra para um lado — sinal de variável faltante ou relação não linear.
RMSE = √(média dos (previsto − real)²). Como eleva ao quadrado, penaliza fortemente erros grandes. Está na mesma unidade do alvo (R$, kg, dias…). Use quando errar feio é muito pior que errar pouco.
A curva ROC plota a taxa de verdadeiros positivos contra a taxa de falsos positivos para todos os limiares possíveis. A área sob essa curva (AUC) varia de 0,5 (chute) a 1 (perfeito). É independente do limiar escolhido — mede a qualidade do ranqueamento, não da decisão.
Para cada ponto, a silhueta compara a distância média até os pontos do mesmo cluster (a) com a distância média até o cluster vizinho mais próximo (b): s = (b − a) / max(a, b). Próximo de +1: muito bem agrupado. Próximo de 0: na fronteira. Negativo: provavelmente no cluster errado. Tirar a média de todas as silhuetas dá uma nota global do agrupamento.
Acerto trivial: a coisa não aconteceu e o modelo previu que não aconteceria.
Acerto verdadeiro: a coisa aconteceu, e o modelo previu que aconteceria. Ex.: cliente realmente inadimplente, marcado como risco alto.
K é decisão sua. Não há ‘K certo’ universal: o método do cotovelo e a silhueta ajudam, mas a escolha final depende da utilidade de negócio: 4 perfis acionáveis pelo time vencem 12 perfis confusos.
Modelos como regressão logística devolvem probabilidade entre 0 e 1. Você escolhe o limiar: se ≥ 0,5 → positivo. Aumentar o limiar reduz alarmes falsos (sobe precisão), mas perde casos reais (cai recall). Diminuir faz o oposto.
α controla a velocidade do aprendizado. α alto: o agente confia muito na experiência mais recente e oscila. α baixo: aprende lento, mas estável.
γ próximo de 1: o agente é paciente, valoriza recompensas distantes. γ próximo de 0: imediatista, ignora consequências de longo prazo.
ε alto: o agente explora bastante (descobre, mas demora a converger). ε baixo: o agente explora pouco (aproveita o que sabe, mas pode ficar preso a uma estratégia ruim). Costumamos começar alto e reduzir ao longo dos episódios.
Em aprendizado supervisionado, cada exemplo do treino vem com o rótulo certo (cliente bom/mau, preço real do imóvel). O modelo aprende uma função que aproxima essas respostas e depois aplica essa função em casos novos. É o paradigma mais comum no mundo corporativo.
O centroide é o ponto representativo do cluster. No K-Means, a cada iteração os centróides se reposicionam para a média dos pontos a eles atribuídos.
Em clusterização, não há rótulo prévio. O algoritmo agrupa observações semelhantes. O significado de cada grupo é interpretado depois pelo analista (‘maduros engajados’, ‘novos curiosos’, etc.).
Plotamos a inércia para K = 1, 2, 3… O ponto em que a curva ‘dobra’ (cotovelo) sugere um bom K: ainda compacto sem complicar demais a interpretação. Combine com a leitura de silhueta e, sobretudo, com a utilidade dos clusters para o negócio.
No aprendizado não supervisionado, não existe 'gabarito'. O algoritmo organiza os dados por semelhança (cluster), reduz dimensões (PCA) ou detecta anomalias. Útil quando você quer descobrir segmentos, não prever uma variável específica.
Ações são as escolhas disponíveis. Na nossa grade: ↑ ↓ ← →. A política do agente é, em cada estado, escolher a ação com maior valor estimado.
O agente é o aprendiz: percebe o estado, escolhe uma ação, recebe recompensa ou penalidade, e aprende a melhorar suas escolhas ao longo de muitos episódios.
O ambiente define os estados possíveis, as ações disponíveis e as recompensas/penalidades de cada transição. No nosso caso, é uma grade com obstáculos, recompensas e um destino.
No aprendizado por reforço, não há dataset pronto. Um agente interage com um ambiente, toma ações, recebe recompensas (positivas ou negativas) e, com o tempo, aprende uma política que maximiza a recompensa acumulada. É a abordagem de jogos, robótica e tomada de decisão sequencial.
Cada episódio é uma rodada inteira de aprendizado. O agente sai da origem, age até chegar ao destino ou esgotar o limite, e a partir das recompensas atualiza seu Q. Bons modelos exigem muitos episódios.
Estado é o ‘onde estou agora’. Na nossa grade, é a célula em que o agente se encontra. A política diz, para cada estado possível, qual ação tomar.
A política é o produto final do treinamento: para cada célula, qual seta (ação) maximiza o valor esperado. Visualmente, mostramos a política como um campo de setas sobre a grade.
Q(s,a) é o que o agente aprende. Quanto maior Q, melhor a ação naquele estado. O mapa de calor sobre a grade mostra V(s) = max_a Q(s,a): quão valiosa é cada célula.
Recompensas positivas reforçam comportamentos. Penalidades (recompensa negativa) os desestimulam. Pequenas penalidades por passo incentivam o agente a buscar caminhos curtos.
Backpropagation é a técnica que torna o gradiente descendente viável em redes profundas. Em vez de calcular a derivada da perda em relação a cada peso isoladamente (o que seria inviável), ela propaga o erro de trás para frente — da camada de saída em direção à de entrada — usando a regra da cadeia do cálculo. Foi popularizada em 1986 por Rumelhart, Hinton e Williams e é o motor matemático de praticamente toda rede neural treinada hoje.
Em vez de calcular o gradiente em todos os exemplos (caro) ou em um só (ruidoso), usamos um mini-batch de N exemplos. Cada batch produz uma atualização de pesos. Uma época é quando todos os exemplos passaram em algum batch.
O bias é um valor extra somado depois das multiplicações (z = w·x + b). Ele desloca a fronteira de decisão para longe da origem do espaço de entrada: sem bias, o neurônio só conseguiria desenhar fronteiras que passam exatamente pelo ponto (0,0). Pense num analista que entra na reunião já com uma postura padrão (‘conservadora’ ou ‘arrojada’); essa postura é o bias. Mexer no bias muda o piso da decisão, não a inclinação.
Num termômetro inteligente: os pesos definem quanto a temperatura externa e a umidade contam; o bias define se a regulagem padrão do quarto já é ligeiramente fria ou ligeiramente quente.
Em uma rede neural, a camada de entrada não calcula nada — ela apenas representa as variáveis observáveis (renda, idade, horas de uso, pixels de uma foto). O número de neurônios dessa camada é ditado pelo problema, não pelo projetista.
A camada de saída projeta tudo o que a rede aprendeu nas camadas ocultas para o formato final da previsão: 1 neurônio com sigmoide para classificação binária, K neurônios com softmax para K classes, 1 neurônio linear para regressão numérica.
Camadas ocultas ficam entre a entrada e a saída. É nelas que a rede combina, não-linearmente, as variáveis originais para formar conceitos próprios — ‘ângulo do ponto’, ‘distância ao centro’, ‘risco combinado de crédito’ — sem que ninguém as tenha programado explícitamente. Quanto mais camadas ocultas e mais neurônios por camada, mais capacidade a rede tem — e mais ela depende de dados para não decorar.
Deep Learning é o ramo do machine learning que usa redes neurais profundas — com muitas camadas ocultas — para descobrir, automaticamente, representações úteis dos dados. É a tecnologia por trás de tradutores automáticos, ChatGPT, visão computacional, reconhecimento de voz e veículos autônomos. Funciona especialmente bem quando há muitos dados e capacidade computacional.
A função degrau era a ativação do perceptron de Rosenblatt: simples, mas não-diferenciável — e por isso incompatível com backpropagation. Foi substituída por aproximações suaves (sigmoide, tanh) quando se descobriu como treinar redes com gradiente descendente. Hoje só aparece em textos históricos e em alguns hardwares de baixíssima potência.
Dropout força a rede a não depender de neurônios específicos: a cada passo, uma fração (ex.: 30%) das unidades é zerada. Isso obriga a rede a aprender representações redundantes e mais robustas — uma regularização muito eficaz no Deep Learning.
Uma época é uma volta inteira do treino: a rede viu cada exemplo uma vez. Modelos de ML clássicos costumam precisar de poucas épocas; redes profundas, dezenas a centenas. Cada época reduz o erro um pouco — mas a curva de aprendizado tende a desacelerar, e em algum ponto continuar treinando começa a decorar (overfitting) em vez de generalizar.
É a região no espaço das entradas onde a saída do modelo cruza o limiar de decisão. Um perceptron desenha uma fronteira linear (reta); uma rede neural com camadas ocultas e ativações não-lineares consegue desenhar fronteiras curvas, com bolsos, ilhas e curvas — e é isso que lhe permite resolver XOR, espirais, anéis e problemas de mundo real.
É a função aplicada sobre z para gerar a saída do neurônio. Sem ela, empilhar várias camadas seria inútil: combinação linear de combinações lineares é outra combinação linear. A ativação introduz a curvatura que permite à rede aprender padrões complexos, como anel, espiral e XOR. As mais comuns são sigmoide, tanh, ReLU e degrau.
Se z fosse o resultado bruto de uma votação num comitê, a ativação decide se aquele resultado vira um ‘sim/não’, uma probabilidade entre 0% e 100% ou apenas ‘a votação foi positiva, e o quanto’.
O gradiente descendente é o algoritmo que faz a rede aprender. Em cada passo, ele calcula a derivada (gradiente) da perda em relação a cada peso — ou seja, em que direção cada peso deveria se mover para reduzir o erro — e empurra um pouquinho cada peso para esse lado. A intuição clássica é descer uma montanha de olhos vendados: a cada passo, você sente para que lado o chão desce mais e segue por ali. Variantes modernas (SGD com momento, Adam, RMSprop) ajustam o tamanho do passo automaticamente.
Como um padeiro corrigindo a receita: provou e ficou doce demais? Reduz o açúcar um pouco. Ainda doce? Reduz mais. É isso, multiplicado por milhares de ingredientes (pesos) ao mesmo tempo.
O neurônio artificial é uma função matemática simples inspirada (de longe) no neurônio biológico. Ele recebe um vetor de entradas, faz a soma ponderada ‘w·x + b’ e aplica uma função de ativação sobre o resultado. Uma rede neural inteira é, na prática, milhões desses neurônios organizados em camadas, com cada neurônio enxergando algo um pouco diferente dos demais.
Cada neurônio funciona como um pequeno parecerista: ele tem suas próprias preferências (pesos), seu próprio humor inicial (bias) e sua própria forma de chegar ao veredito (ativação).
Deep Learning é um subcampo de Machine Learning baseado em redes neurais com várias camadas. Cada camada transforma o sinal da anterior em algo mais útil: as primeiras detectam padrões simples, as do meio combinações, as finais conceitos abstratos. É a tecnologia por trás de visão computacional, NLP, modelos generativos e LLMs.
O perceptron, proposto por Frank Rosenblatt em 1957, é a unidade de cálculo mínima de uma rede neural. Ele recebe variadas entradas numéricas, multiplica cada uma por um peso próprio, soma tudo com um valor de bias e passa o resultado por uma função de ativação, que devolve uma saída final. Um perceptron isolado só consegue separar problemas linearmente separáveis; a fronteira que ele desenha no espaço de entrada é sempre uma reta (ou um hiperplano).
Pense num analista júnior que decide aprovar crédito olhando duas variáveis: o que ele faz mentalmente — multiplicar cada uma por uma importância, somar e decidir se passa do limiar — é exatamente um perceptron.
A perda é a função que mede o erro entre o que a rede previu e a resposta correta. Para regressão usa-se MSE (erro quadrático médio); para classificação binária, a Binary Cross-Entropy (BCE), que pune especialmente previsões confiantes que estavam erradas. O objetivo do treinamento é reduzir a perda época após época.
Cada conexão entre uma entrada e um neurônio tem um peso. Peso alto e positivo significa que aquela entrada empurra fortemente a saída para cima; peso negativo, para baixo; peso próximo de zero, a entrada pouco influencia. Treinar uma rede neural é, no fundo, encontrar os pesos certos: o algoritmo começa com valores aleatórios e os ajusta um pouquinho a cada exemplo errado, até reduzir o erro médio o máximo possível.
XOR (‘ou exclusivo’) é a regra: a saída é ‘sim’ quando apenas uma das duas entradas é verdadeira; senão é ‘não’. No plano cartesiano, isso gera quatro pontos: dois em diagonal são de uma classe, dois em diagonal são da outra. Não existe uma única reta que separe os dois grupos — você sempre vai errar pelo menos um. Em 1969, Minsky e Papert provaram esse fato em livro e quase enterraram a pesquisa em redes neurais. A saída veio só em 1986: empilhar perceptrons em camadas, treinar com backpropagation e deixar a rede descobrir, sozinha, representações intermediárias que tornam o problema separável.
É a porta lógica ‘ou um, ou outro, mas não os dois’. Em negócios, lembra decisões como ‘promova quem teve excelente perform a OU excelente engajamento, mas não os dois ao mesmo tempo (provavelmente está mascarando algo)’ — padrões que nenhuma regra linear simples captura.
Uma rede neural é um conjunto de neurônios artificiais organizados em camadas: cada camada recebe a saída da anterior, transforma e entrega para a próxima. Essa arquitetura permite que padrões simples nas primeiras camadas (linhas, contornos) sejam combinados em padrões complexos nas camadas profundas (formas, objetos, conceitos).
ReLU (Rectified Linear Unit) é a ativação-padrão do Deep Learning moderno: f(z) = max(0, z). É simples, não satura para valores positivos (gradiente constante = 1) e por isso permite treinar redes muito profundas. O custo: neurônios podem ‘morrer’ se ficarem sempre na região negativa — deixam de aprender. Variantes (Leaky ReLU, GELU) mitigam isso.
A sigmoide σ(z) = 1 / (1 + e^−z) entrega sempre um número entre 0 e 1, o que a torna ideal para representar probabilidade da classe positiva. É suave (derivável em todo lugar), mas tem um problema: quando |z| fica muito grande, sua derivada vai a zero — isso impede a rede de aprender em camadas profundas (vanishing gradient).
A soma ponderada, ou pré-ativação, é o valor cru z = w₁·x₁ + w₂·x₂ + … + b. Ela ainda não é a saída do neurônio: é o que será entregue para a função de ativação decidir o que faz com aquele número. Trabalhar com z em separado ajuda a entender por que algumas ativações ‘saturam’ e param de aprender quando z fica muito grande.
A tanh é uma sigmoide deslocada: vai de −1 a +1, com média zero. Por ser centrada em zero, os gradientes propagam melhor que na sigmoide pura, e por isso ela foi muito usada como ativação de camadas ocultas antes da ReLU. Ainda sofre de saturação nos extremos.
A taxa de aprendizado controla o quanto os pesos são ajustados em cada iteração. Muito alta, a rede oscila e nunca converge — como tentar acertar uma cesta dando passos larguíssimos. Muito baixa, leva uma eternidade e pode parar num ‘buraco’ raso. Encontrar a taxa boa para um problema é um dos maiores fatores de sucesso em treinamento.
É a diferença entre ajustar o tempero da panela colher por colher (lr baixa) ou jogando o pote inteiro de sal (lr alta).
O teorema, demonstrado por Cybenko (1989) e Hornik (1991), garante que uma rede neural feed-forward com pelo menos uma camada oculta de tamanho suficiente, usando uma ativação não-linear, pode aproximar qualquer função contínua a um erro arbitrariamente pequeno. É um resultado de existência: na prática, redes profundas e estreitas costumam aprender melhor que redes rasas e larguíssimas.
Em redes profundas com ativações saturantes (sigmoide, tanh), o gradiente que volta da saída em direção às primeiras camadas vai sendo multiplicado por números menores que 1, encolhendo até quase desaparecer. Resultado: as primeiras camadas praticamente não atualizam seus pesos. A adoção de ReLU, inicializações cuidadosas (He, Xavier) e conexões residuais resolveu boa parte desse problema.
Alucinação é o nome dado às respostas inventadas — datas, citações, nomes, fatos que parecem corretos mas não existem. Acontece porque o modelo otimiza para texto provável, não para verdade. Mitigações: Retrieval-Augmented Generation, instruções de incerteza, verificação humana.
Pedir ‘cite três artigos de Andre Barcaui sobre IA’ pode produzir títulos inventados que parecem verossímeis mas nunca existiram.
Atenção é o coração do Transformer. Cada token gera uma query (o que ele procura), uma key (o que ele oferece) e um value (o que ele entrega). Comparando queries com keys, o modelo descobre quais tokens são relevantes para cada um, e mistura os values na proporção dessas relevâncias.
No nome ‘Maria, que mora em Lisboa, é portuguesa’, a palavra ‘portuguesa’ presta forte atenção a ‘Lisboa’ — porque é Lisboa que justifica a nacionalidade.
CoT é a prática de pedir ‘pense passo a passo’ ou apresentar exemplos com raciocínio explicitado. A simples instrução melhora dramaticamente a performance em problemas de matemática, lógica e raciocínio. É uma das descobertas-chave de prompt engineering.
Em vez de ‘qual a resposta?’, peça ‘mostre passo a passo o cálculo e depois dê a resposta’. A taxa de acerto sobe muito.
Cada sub-bloco do Transformer (atenção e FFN) é embrulhado por uma conexão residual: a entrada é somada à saída e depois normalizada. Isso evita que o sinal se perca ao atravessar dezenas de camadas e é o que torna treinos profundos viáveis.
Embedding é a tradução de um token em coordenadas dentro de um espaço de alta dimensão (768, 1024, 12 mil…). Tokens com significados próximos ficam vizinhos nesse espaço. É como um GPS semântico: rei e rainha ficam perto; rei e fritadeira ficam longe.
Subtrair o embedding de ‘homem’ de ‘rei’ e somar o de ‘mulher’ chega muito perto do embedding de ‘rainha’ — o famoso experimento word2vec.
Após a etapa de atenção, cada token passa, individualmente, por uma rede feed-forward de duas camadas (geralmente expandindo e contraindo as dimensões). Essa etapa adiciona capacidade expressiva, refinando o significado de cada token com base no contexto já agregado.
Fine-tuning ajusta os pesos de um modelo já treinado, especializando-o em um domínio (jurídico, médico, atendimento da sua empresa). Variantes modernas (LoRA, QLoRA) treinam apenas pequenos adaptadores, barateando muito o processo.
LLMs geram texto um token de cada vez. Eles preveem o próximo token a partir de todos os anteriores, anexam-no à sequência e repetem. Por isso a geração é sequencial mesmo que a atenção seja paralela: cada novo token precisa do anterior já decidido.
Para escrever ‘bom dia’, o modelo gera primeiro ‘bom’, depois — vendo ‘bom’ no contexto — escolhe ‘dia’.
Habilidades emergentes são tarefas (raciocínio aritmético, tradução, programação) que modelos pequenos não fazem, mas que aparecem ‘de repente’ acima de certo número de parâmetros e dados de treino. É a razão pela qual a escala importa tanto na história dos LLMs.
Modelos abaixo de ~10B parâmetros falham em raciocínio passo a passo. A partir de ~70B, começam a resolver problemas matemáticos complexos com chain-of-thought.
Talvez a propriedade mais surpreendente dos LLMs grandes: você dá 2-5 exemplos do que quer no prompt e o modelo generaliza para o próximo caso. É chamado few-shot learning quando há exemplos, zero-shot quando não há nenhum.
Mostre três pares (review → sentimento) e peça o sentimento de um quarto review. O modelo acerta sem ter sido fine-tunado.
A janela de contexto define quanto texto cabe no input do modelo. Modelos antigos tinham 2 mil tokens; modelos atuais chegam a 200 mil (Claude), 1 milhão (Gemini) ou mais. Janela maior permite analisar livros inteiros e manter histórico longo de conversa.
GPT-3.5 começou com 4 mil tokens; GPT-4 Turbo subiu a 128 mil; Gemini 1.5 Pro chegou a 1 milhão — equivale a uns 2.000 páginas de PDF.
Layer Norm calcula média e desvio padrão das ativações de cada token (em vez do batch inteiro como em Batch Norm) e reescala. Essa estabilização é crítica para que gradientes não explodam ou desapareçam em modelos profundos com bilhões de parâmetros.
Um LLM é um Transformer treinado com volumes massivos de texto (geralmente trilhões de tokens) e bilhões de parâmetros. Ele aprende padrões estatísticos da linguagem e consegue prever o próximo token de qualquer sequência — daí emerge a capacidade de conversar, redigir, traduzir, programar e resumir.
GPT-4, Claude 3.5, Gemini 1.5 e Llama 3 são LLMs construídos sobre variações do Transformer.
Em vez de uma única atenção, o Transformer roda várias em paralelo (8, 12, 32 cabeças). Cada cabeça aprende a focar em um tipo de relação: sintaxe, correferência, tópico, etc. As saídas são concatenadas e projetadas, dando ao modelo uma visão multifacetada do contexto.
Numa frase, uma cabeça pode olhar para sujeito-verbo, outra para adjetivos-substantivos, outra para causa-efeito. Juntas, capturam mais do que uma única atenção genérica.
Como o Transformer processa todos os tokens em paralelo, ele precisa de uma forma de saber a ordem. O positional encoding soma um padrão (senos/cossenos no paper original, rotary ou ALiBi nos modelos modernos) ao embedding de cada token, marcando sua posição sem distorcer o significado.
Sem positional encoding, ‘o cliente cancelou o pedido’ e ‘o pedido cancelou o cliente’ pareceriam idênticos para o modelo.
Transformers inauguram uma nova forma de máquina pensar: em vez de seguir uma linha sequencial, cada parte da entrada olha todas as outras simultaneamente via atenção, decidindo o que importa para o caso. É a base dos LLMs modernos e da IA generativa.
Prompt é a instrução, pergunta ou contexto que você coloca para um LLM. Toda a engenharia de prompt (prompt engineering) é a arte de formular esse texto de modo a maximizar a qualidade da resposta — incluindo persona, exemplos, restrições e formato esperado.
Cada token, ao entrar num bloco de atenção, é projetado em três vetores distintos via matrizes aprendidas: Q (o que ele quer saber), K (a etiqueta com que se anuncia) e V (o conteúdo que entrega). Score = Q·K / √d → softmax → pesos que multiplicam V.
É como um clube de leitura: cada participante (Q) diz o que procura, cada livro (K) se anuncia, e o leitor recebe (V) o conteúdo dos livros mais relevantes ao seu pedido.
Em RAG, antes de responder, o sistema busca trechos relevantes em uma base de conhecimento (documentos, manuais, banco vetorial) e os injeta no prompt. O LLM gera a resposta tendo essas fontes em mãos, reduzindo alucinações e citando referências.
Um chatbot interno da empresa que responde sobre políticas de RH busca primeiro nos PDFs do RH e só então o LLM escreve a resposta.
Self-attention é o caso em que queries, keys e values vêm todos da mesma frase. Cada palavra olha para todas as outras (incluindo ela mesma) e se atualiza ponderando a contribuição de cada vizinha. É o que permite ao Transformer entender referências, concordâncias e contexto global.
Em ‘o gerente disse que ele renunciaria’, o token ‘ele’ usa self-attention para resolver a referência: aponta para ‘gerente’.
Softmax pega valores arbitrários (positivos, negativos, grandes, pequenos) e os converte numa distribuição de probabilidade. É usada no fim da atenção (para pesos) e no fim do Transformer (para escolher o próximo token entre todo o vocabulário).
Se a rede gera scores [3.0, 1.0, 0.5] para três tokens candidatos, softmax devolve algo como [0.78, 0.14, 0.08] — probabilidades plenamente interpretáveis.
A temperatura escala as probabilidades antes do softmax. Temperatura próxima de 0 deixa o modelo conservador (sempre o token mais provável). Temperatura alta (1+) injeta diversidade, permitindo respostas mais criativas ou surpreendentes — e mais erráticas.
Para gerar contrato jurídico, use temperatura baixa (0,1-0,3). Para um brainstorm de marketing, 0,8-1,2.
Tokens são os blocos elementares que o modelo enxerga. Um tokenizador divide o texto em pedaços (palavras inteiras, subpalavras como 'pre-pa-rar', ou caracteres) e converte cada um em um número inteiro. O LLM nunca vê letras: vê IDs de tokens.
A frase ‘Inteligência artificial pode revolucionar negócios’ vira algo como [284, 11932, 392, 14021, 7] no tokenizador do GPT-4.
Tokenização é a etapa em que o texto bruto é cortado em pedaços (tokens) que o modelo sabe processar. Algoritmos como BPE (Byte-Pair Encoding) e SentencePiece descobrem, durante um pré-treino, quais subpalavras são mais econômicas para representar todo o vocabulário possível.
A palavra ‘tokenização’ pode virar três tokens: ‘token’, ‘iza’, ‘ção’ — economizando vocabulário para palavras raras.
Top-k mantém apenas os k tokens mais prováveis (ex.: k=40) e descarta o resto. Top-p (nucleus) mantém o menor conjunto cuja soma de probabilidades atinja p (ex.: p=0,9). Ambas evitam que palavras absurdas (de cauda muito longa) sejam escolhidas, sem engessar o modelo a sempre pegar a opção #1.
Transformer é a arquitetura proposta em 2017 no artigo Attention Is All You Need. Ao contrário de redes recorrentes, ela processa toda a sequência em paralelo, usando o mecanismo de atenção para que cada token decida quais outros tokens são relevantes. É a base do ChatGPT, Claude, Gemini, Llama e praticamente todos os LLMs modernos.
Quando você pergunta algo ao ChatGPT, é um Transformer que está lendo seu texto, decidindo quais palavras importam e gerando a resposta token a token.