Logo Passei Direto
Buscar

PDF CIENCIA DE DADOS - LUIZA REIXACH CASTRO

User badge image
Caio

em

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

eDATA
SCIENC
UM GUIA TEÓRICO DE CIÊNCIA DE DADOS 
E MACHINE LEARNING
LUIZA reixach CASTRO
www.linkedin.com/in/luizacastro02/
https://www.linkedin.com/in/luizacastro02/
Sumário
Fundamentos da Estatística
Preparação dos dados
Variáveis contínuas e discretas
Medidas de posição
Medidas de dispersão 
Outliers: definição e identificação com boxplot e IQR
Teste de hipótese: conceito, aplicações e intervalo de confiança
Distribuições: Normal, Bernoulli, Binomial, Uniforme, Poisson e Geométrica
Teorema do Limite Central 
Lei dos Grandes Números
Métricas de correlação 
Métricas de distância (euclidana, manhattan, minkowski, mahalanobis)
Clique nos números!
1
17
28
2
18
29
3
18
32
4
19
34
5
20
35
8
21
40
45
8
22
11
23
42
45
12
24
13
25
Principais ferramentas (pandas, seaborn, matplotlib, scikit-learn)
Descarte de variáveis irrelevantes
Remoção de valores duplicados
Imputação de missings com média, moda, mediana e KNN
Detecção e tratamento de outliers 
Padronização e normalização 
Desbalanceamento de classes (undersampling, oversampling e class_weight)
Codificação de variáveis categóricas (Label Encoding e One Hot Encoding)
Redução de dimensionalidade com PCA 
Métodos de seleção de features (SelectKBest, baixa variância, regularização e 
feature importances, Boruta, Permutation Importance)
Metodologia CRISPDM 
Treino, teste e validação
Definição de função de custo
Aprendizado supervisionado e não supervisionado
Regressão, Classificação e métodos de avaliação
Parâmetros e Hiperparâmetros: o que são e como defini-los
Viés e variância - Underfitting e Overfitting 
Conceitos Fundamentais para Machine Learning
Aprendizado Supervisionado
Definições e métricas de avaliação para regressão e classificação 
Regressão Linear
Definição
Pressupostos de uma regressão linear e preparação dos dados
Funções de custo: MAE e MSE 
Gradiente Descendente e Mínimos Quadrados
Regularização L1 e L2
Vantagens e desvantagens
Definição
O Teorema de Bayes
Funcionamento do modelo
Tipos de Naive Bayes: Gaussiano, Bernoulli e Multinominal
Vantagens e desvantagens 
Preparação dos dados
Vantagens e desvantagens 
Exemplos de utilização
Aprofundamento
Definição
Relação entre a regressão logística e linear
Função de custo: Logloss 
Método da Máxima Verossimilhança (MLE)
Preparação dos dados
Principais hiperparâmetros
Vantagens e desvantagens 
Exemplos de utilização
Naive Bayes
Regressão Logística
KNN 
Definição
Regressão x Classificação no KNN
Funcionamento do KNN
Métricas de distância 
KNN como um Lazy Learner
Overfitting e Underfitting no KNN
Como definir o melhor K?
Vantagens e desvantagens 65
64
64
64
63
63
62
62
61
61
57
61
57
61
56
52
60
56
50
60
55
49
60
54
49
58
53
46
58
53
45
Definição
Estrutura de uma árvore de decisão
Árvore de classificação 
Métricas de impureza (gini e entropia)
Seleção do nó raiz
Previsão final em regressão e classificação 
Árvore de regressão 
Vantagens e desvantagens
Técnicas de poda
Principais hiperparâmetros
Interpretação de uma árvore 
Aprofundamento
Árvore de Decisão
O que são modelos de ensemble?
Bagging e Boosting
Modelos de Ensemble 
Random Forest
Adaboost
Gradient Boosting
XGBoost e LightGBM
Comparação Random Forest e Árvore de Decisão
O dilema do overfitting no Random Forest
Vantagens e desvantagens
Definição
Funcionamento
Definição
Diferenciais
Crescimento level-wise vs Crescimento leaf-wise
Definição
Principais conceitos (Margem e Hiperplano) 
O que é o Kernel Trick?
Tipos de Kernel
Principais hiperparâmetros 
Vantagens e desvantagens
Underfitting e overfitting no SVM
Aprofundamento
Support Vector Machine (SVM)
75
75
75
81
80
80
71
74
80
70
72
79
68
74
79
70
72
79
68
73
79
69
78
68
77
66
77
66
77
66
77
65
76
65
K-means
DBSCAN
Definição
O que é um centróide
Principais hiperparâmetros
Funcionamento (K-means na prática)
Vantagens e Desvantagens
K-medoids 
Preparação dos dados
Aprofundamento
Aprendizado Não Supervisionado
Conteúdos extras
Definição
Principais conceitos e hiperparâmetros 
Funcionamento do modelo
Vantagens e desvantagens
Preparação dos dados 
Aprofundamento
Definição
Métodos de ligação
Tipos de agrupamento (Aglomerativo e divisivo)
Funcionamento do agrupamento aglomerativo
Vantagens e desvantagens
Como determinar o melhor número de clusters com o dendograma
Exemplo prático 
Aprofundamento
Agrupamento Hierárquico
Gaussian Mixture Models (GMM)
Definição
O que é uma gaussiana e soft clustering
Exemplo prático 
Parâmetros do GMM
Algoritmo de Expectation Maximization (EM)
Vantagens e desvantagens
Glossário de conceitos
Perguntas técnicas
Principais hiperparâmetros
93
85
93
85
87
95
91
83
88
109
98
96
92
85
87
94
91
82
88
97
95
92
84
86
94
89
82
86
94
89
82
1
Estatística
Estatística é a ciência que planeja, organiza e interpreta dados para tomada de decisão 
Introdução
Conceitos 
Subconjunto de uma população. As amostras são importantes, pois nem sempre é possível coletar 
informações de toda a população.
Conjunto completo de elementos (pessoas, objetos, eventos etc.) que possuem alguma 
característica em comum e sobre os quais se deseja obter informações.
Exemplos: população de um país, todas as pessoas com uma determinada doença, todas as peças 
produzidas em determinada fábrica. 
Revisão: Matheus Borges
Amostra
População
Quantitativa
Também chamada de variável numérica, pode ser medida numericamente e representar quantidades.
Importância aplicada: para saber o método ideal de transformar variáveis categóricas em 
numéricas, precisamos saber se a variável possui hierarquia natural. Por exemplo, se existe, 
geralmente é mais recomendado utilizar Label Encoder no lugar de Get Dummies ou One Hot 
Encoder.
Variável que representa uma característica, mas não pode ser ordenada de forma natural. 
Exemplos: cores (azul, rosa, roxo) e marcas (Pepsi, Coca-Cola).
Variável que representa uma característica e que pode ser ordenada de forma natural. Geralmente 
aparece em situações nas quais há uma hierarquia definida, como no caso de níveis de formação 
(Ensino Fundamental, Médio e Superior) e renda (alta, média e baixa).
Também chamada de variável categórica, representa características que não podem ser descritas 
numericamente.
Variável Qualitativa Nominal
Variável Qualitativa Ordinal
Qualitativa
Tipos de variáveis
Variável que pode assumir qualquer valor dentro de um intervalo, incluindo valores não inteiros, 
como decimais.
Exemplos: peso, taxa de juros e altura.
Variável Quantitativa Contínua
2
Variáveis obtidas por meio de contagem e que assumem números inteiros.
Exemplos: número de faturas e cartões.
Soma de todos os valores dividida pela quantidade 
total de elementos. Tem como uma de suas principais 
características ser uma métrica sensível a outliers, uma 
vez que valores extremos aumentam o seu resultado.
As medidas de posição auxiliam na identificação do comportamento de concentração dos dados.
Medidas de posição
Variável Quantitativa Discreta
Média
Mediana
Moda
Valor central ocupado por um conjunto de dados 
ordenado. Uma vez que depende da posição na 
ordenação, e não dos valores em si, é uma métrica 
muito mais robusta a outliers do que a média.
É o valor que aparece com mais frequência em um conjunto de dados.
Importância aplicada: em árvores de decisão de regressão, a previsão final, por padrão, é calculada 
a partir da média das amostras em um nó. Em casos nos quais há presença constante de outliers, 
podemos substituir a média pela mediana.
Importância aplicada: a predição em árvores de decisão de classificação ocorre, justamente, a partir 
da moda da classe entre as amostras.
Variância
É a média dos quadrados dos desvios em relação à 
média. Os desvios são elevados ao quadrado porque os 
desvios positivos e negativos em relação à média, se 
somados diretamente, se anulariam.
Quanto maior a variância, mais os dados estão 
afastados da média.
Variância amostral
As medidas de dispersão auxiliamdevem seguir 
aproximadamente uma distribuição normal.
Para verificar, você pode utilizar testes de normalidade, como Shapiro-Wilk ou Kolmogorov-
Smirnov, ou utilizar gráficos como histogramas/Q-Q plot.
4. Erros com variância constante (homocedasticidade)
3. Erros seguem uma distribuição normal
Em uma regressão, os erros precisam ser independentes entre si. Ou seja: o erro associado a uma 
observação não pode estar relacionado ao erro de outra.
5. Erros independentes entre si
48
Ao final do treinamento de um modelo de regressão, obtemos uma equação que descreve a relação 
entre as variáveis explicativas e o valor a ser predito. Mas como esses coeficientes, que quantificam o 
impacto de cada variável sobre a resposta, são determinados?
Existem dois métodos utilizados para estimar os coeficientes de uma regressão linear: o método dos 
mínimos quadrados e o método do gradiente descendente.
Definição dos coeficientes de uma regressão linear
Também conhecido como método determinístico, o método dos mínimos quadrados encontra os 
coeficientes que minimizam globalmente a função de custo (a soma dos quadrados dos resíduos). 
Entretanto, possui um alto custo computacional, especialmente em problemas com grande 
número de variáveis. Dados dois parâmetros A e B:
No final do processo, é determinado um valor. Entretanto, quando esses cálculos são realizados em 
situações com muitas variáveis e um grande volume de dados, o custo computacional pode se 
tornar extremamente elevado.
Assim, temos o método do gradiente descendente, no qual os coeficientes não são obtidos de 
forma "direta", como ocorre no método dos mínimos quadrados, mas sim de forma iterativa.
Fazer a soma quadrática dos resíduos, que vai atuar como a função de custo a ser minimizada 
Calcular as derivadas parciais dessa função de custo em relação a cada coeficiente e igualar a 
0, para assim chegar ao sistema que representa mínimo da função em relação a cada 
coeficiente.
Assim, vamos ter um sistema de equações normais para cada coeficiente. Resolvendo-os, 
temos o valor dos coeficientes estimados.
Método dos mínimos quadrados
1.
2.
3.
49
O gradiente descendente é um método iterativo de encontrar os coeficientes de uma regressão 
que, ao contrário dos mínimos quadrados, possui um custo computacional menor para situações 
com alta dimensionalidade, mas pode encontrar mínimos locais em funções de custo não convexas 
(redes neurais).
De forma simples: o método dos mínimos quadrados encontra um valor exato para os coeficientes 
a partir da solução analítica obtida pelas derivadas parciais da função de custo. Já o gradiente 
descendente, em vez de partir de coeficientes totalmente desconhecidos e encontrar diretamente 
a solução fechada, inicia com um valor inicial (chute) para os coeficientes e vai ajustando esses 
valores iterativamente, com base no gradiente da função de custo, até se aproximar do seu 
mínimo.
Inicia com um chute aleatório para os parâmetros, calculando a função de custo (aqui, a soma 
dos erros quadráticos) associada a uma taxa de aprendizado (que vai ser o tamanho do "passo" 
em direção ao gradiente).
O gradiente é o vetor de derivadas parciais 
que aponta para a direção de maior aumento 
de uma função. 
Como queremos chegar no mínimo, iremos 
ajustar os parâmetros para andar na direção 
contrária ao gradiente da função de custo.
O que é um gradiente?
Taxa de aprendizado
1.
2.
3.
Método do gradiente descendente
Calcula as derivadas parciais da função de custo em relação a cada parâmetro. Essa derivada é 
a inclinação da curva, e o valor dessa derivada vai definir o quão longe estamos do ponto de 
mínimo (onde a derivada é zero).
Assim, o algoritmo vai aumentar ou diminuir o valor dos coeficientes de acordo com essa taxa 
de variação na atualização.
Esse processo ocorre iterativamente até chegar no mínimo global, ou seja, quando a derivada 
for igual a 0 ou quando se atinge o critério de parada escolhido (mais frequente).
50
Mínimos quadrados Gradiente Descendente
Método Encontra os coeficientes com uma solução 
analítica única
Iterativo e encontra os coeficientes de 
acordo com o gradiente da iteração
Solução única, sem a possibilidade de 
encontrar mínimos locais
Baixo custo computacional em relação aos 
mínimos quadrados em dados com alta 
dimensionalidade
Por ser um método gradual, é possível 
encontrar um mínimo local e não global em 
funções não convexas
Alto custo computacional para dados com 
alta dimensionalidade por conta das 
extensasa matrizes criadas 
Vantagens
Desvantagens
Penalidade L2
(Soma dos coeficientes)
Soma dos erros quadráticos
Regularização
Representa os coeficientes da regressão inicialmente “overfittada”, que é elevado ao 
quadrado. No caso da L2, cada coeficiente vai ser elevado ao quadrado e depois somado com 
o posterior. Após isso, multiplicado pelo lambda.
Lambda
penalidade aplicada aos coeficientes. Quanto maior o seu valor, maior a penalidade aplicada a 
coeficientes grandes. A penalidade vai ser somada ao MSE, e isso vai forçar o modelo, 
inicialmente overfitted, a encontrar valores menores para os coeficientes. Assim, será traçada 
uma nova reta com essa nova função de perda, que vai ser mais "suave" do que a primeira. 
Pode ser encontrado por validação cruzada.
A regularização é uma técnica para prevenir o overfitting em uma regressão linear e evitar coeficientes 
excessivamente grandes. Ela se trata do acréscimo de uma penalidade aos coeficientes do modelo na 
função de custo. O objetivo é diminuir a sensibilidade do modelo aos dados de treinamento 
(aumentando seu viés) para que o erro seja menor nos dados de teste (diminuindo a variância).
Quanto maior o lambda, maior vai ser a penalização dos coeficientes e maior vai ser a função de custo a 
ser minimizada, modificando o modelo original.
51
Tipos de regularização
penaliza os valores absolutos dos coeficientes, possibilitando que alguns coeficientes se tornem 
zero. Esse mecanismo, na prática, pode ajudar a selecionar features relevantes, diminuindo a 
dimensionalidade dos dados. Logo, não é aconselhado utilizar L1 quando o objetivo é considerar 
todas as variáveis do dataset.
penaliza os valores quadráticos dos coeficientes, impossibilitando que coeficientes se tornem zero. 
Esse mecanismo, na prática, pode ajudar a reduzir a magnitude dos coeficientes sem eliminar 
variáveis, mantendo a dimensionalidade dos dados. Logo, é aconselhado utilizar L2 quando o 
objetivo é considerar todas as variáveis do dataset, porém com regularização.
Combinação da regularização L1 e L2
Regularização L1 (Lasso)
Regularização L2 (Ridge)
Elastic-Net
Possui menores erros quando 
comparado aos dados de teste, 
uma vez que o lambda fez os 
coeficientes dessa regressão se 
tornarem menos sensíveis.
Traçamento da linha pós
regularização, que se
“afasta” dos dados de 
treino
Dados overffitados, com um
grande erro nos dados de
teste (alta variância)
Statquest
52
Vantagens
Desvantagens 
Preparação dos dados
O modelo de regressão linear pode ser resumido por uma equação, que demonstra o impacto de 
cada variável para a previsão da variável resposta.
O modelo de regressão linear pode ser resumido por uma equação, que demonstra o impacto de 
cada variável para a previsão da variável resposta.
Tratamento de missings
Imputação por média, mediana, moda, KNN ou exclusão das observações.
Tratamento de outliers
Identificação pelos métodos IQR, z-score, ou visualização através de gráficos de dispersão e 
distribuição.
Codificação de variáveis
Transformação de dados categóricos em numéricos utilizando técnicas como One-Hot 
Encoding ou Label Encoding.
Padronização
Ajuste das variáveis para uma mesma escala usando StandardScaler ou MinMaxScaler, 
reduzindo o impacto de diferenças de magnitude entre as features.
Verificar os pressupostos de uma regressão linear
Homocedasticidade, independência e normalidade dos resíduos, ausência de 
multicolinearidade, e relação linear entre variáveis preditoras e resposta.Uma regressão possui uma série de pressupostos para ser utilizada de forma correta; assim, o 
espaço de features disponíveis se reduz.
Outliers distorcem o cálculo da função de custo e resultam em uma reta que não reflete o 
comportamento geral das variáveis.
Alta Explicabilidade
Sucetível a underfitting
Baixo custo computacional
Pouca flexibilidade (muitos pressupostos)
Sensibilidade a outliers
53
Aprofundamento
Clique no QR Code!
A regressão logística é um tipo de modelo supervisionado de classificação. Seu objetivo é atribuir a 
uma observação a probabilidade de pertencer a uma de duas classes, sendo que a classificação final é 
definida com base em um ponto de corte, também chamado de threshold.
Regressão Logística
A regressão logística provém de uma manipulação algébrica da regressão linear, na qual seu espaço 
de atuação é ajustado de qualquer número real para o intervalo entre 0 e 1. Dessa forma, é possível 
atribuir uma probabilidade válida à observação, evitando, por exemplo, uma probabilidade de 150% 
de pertencer à classe A. Esse processo ocorre a partir da modelagem da função logit como uma 
combinação linear das variáveis independentes, por meio da função sigmoide.
1.
2.
Começa com uma regressão padrão
Define as Odds (probabilidade favorável a um determinado evento) e a função logit. Função 
logit mapeia todos os valores reais, que podem ser utilizados para expressar uma relação linear 
entre os valores das variáveis independentes e os logaritmos das probabilidades.
3. Modela a logit como uma combinação linear
https://youtube.com/playlist?list=PLblh5JKOoLUIzaEkCLIUxQFjPIlapw8nU&si=zp_hLIdE0npydYKt
https://youtu.be/QaXZ42ULYUo?si=zUaYlyXlLJLbk0AC
https://youtu.be/3XPH32srZSQ?si=OkuB5xLjsrKAXHnN
https://youtu.be/sDv4f4s2SB8?si=sRNsa1GPOHgdo2jS
https://youtu.be/Q81RR3yKn30?si=a6prfqqBhCqiSJMl
https://youtu.be/oRVN94Zq-bE?si=CHN2KHNWgHjTJtVp&t=2
https://youtu.be/QBafnOFUpao?si=nVyzvbOP8oyBjlQA
54
4. A logit mapeia probabilidades para valores reais, e quremos obter a probabilidade de que um 
valor pertença a uma dada classe. para isso, utiliza-se a inversa da função logit, aplicando a 
exponencial.
Agora, o conjunto imagem da função corresponde aos números reais no intervalo [0,1], o que resolve 
o problema da regressão
Pressupostos regressão logística
1
Valores > 1
0
1
0
Threshold 50%
Classe A
Classe B
A regressão logística provêm de uma regressão linear, logo, os pressupostos são semelhantes. 
Entretanto, ao contrário da regressão linear, a regressão logística não exige normalidade, uma 
vez que a sua variável de saída é binária.
1. Relação linear entre a variável resposta e as variáveis independentes
2. Ausência de multicolinearidade
O seu valor a ser predito precisa possuir relação linear com as variáveis utilizadas para a previsão. 
É possível verificar esse pressuposto a partir de gráficos de dispersão.
A multicolinearidade acontece quando duas variáveis independentes (X) são altamente 
correlacionadas. Ou seja, possuem comportamento muito parecido ou idêntico, trazendo 
informações redundantes ao modelo.
O problema da multicolinearidade está justamente na dificuldade de interpretar os efeitos reais de 
cada coeficiente individual na regressão, tornando-os instáveis e inflando erros-padrão. 
É possível identificar a multicolinearidade por meio de uma matriz de correlação e do Fator de 
Inflação da Variância (VIF).
Em uma regressão, os erros precisam ser independentes entre si. Ou seja: o erro associado a uma 
observação não pode estar relacionado ao erro de outra.
3. Erros independentes entre si
55
Os parâmetros de uma regressão logística são estimados por meio da maximização da função de 
verossimilhança, que equivale a minimizar a log loss, uma vez que a log loss é o negativo da log-
verossimilhança.
A função de verossimilhança mede a plausibilidade de um modelo explicar os dados observados, dado 
um conjunto de parâmetros. Seu valor máximo indica o conjunto de parâmetros mais adequado para 
representar os dados.
Em geral, é um processo iterativo de otimização, como o gradiente descendente: começamos com 
parâmetros inicializados aleatoriamente, calculamos o gradiente da função e, usando uma taxa de 
aprendizado, atualizamos os parâmetros repetidamente até convergir ao ponto ótimo da função.
Máxima Verossimilhança
3. Definição da função de verossimilhança 
1. Inicialização aleatória dos parâmetros
2. Modelagem da sigmoide para obter as probabilidades associadas
4. Aplicação do logarítimo para facilitação de cálculos
5. Aplicação do negativo para obter a função de custo a ser minimiza (Log loss) 
6. Minimização da log-loss a partir do cálculo do gradiente, onde os parâmetros são atualizados iterativamente
Como definir o ponto de corte (threshold)?
Na regressão logística, precisamos definir um ponto de corte como critério de decisão para as classes, 
e esse ponto de corte, que nem sempre vai ser idealmente 50%, ode ser definido através da análise de 
uma curva ROC.
A curva ROC, como mencionado anteriormente, é uma representação gráfica da relação entre os 
verdadeiros positivos e os falsos positivos, utilizada em modelos de classificação.
56
Se aumentarmos muito o threshold, o modelo fica muito rigoroso para prever as classes positivas, e 
assim a maioria das amostras são classificadas como negativas, diminuindo o recall e aumentando o 
precision.
Se diminuirmos muito o threshold, o modelo fica menos rigoroso para prever as classes positivas, e 
assim a maioria das amostras são classificadas como positivas, diminuindo o precision e 
aumentando o recall.
Logo, para definir o melhor threshold que minimize os falsos positivos e maximize os verdadeiros 
positivos, testamos um intervalo de thresholds possíveis e selecionamos aquele que maximize a 
diferença entre essas duas métricas. Assim:
Solver
Máximo de iterações (max_iter):
Balanceamento de classes (class_weight)
algoritmo de otimização, define o método para otimizar a função custo 
Número máximo de iterações do modelo
liblinear: indicado para datasets pequenos; suporta L1.
lbfgs (padrão): indicado para datasets grandes com muitas features; rápido e estável; suporta L2.
newton-cg: indicado para problemas multiclasse; suporta L2.
sag: indicado para datasets grandes e escalonados; suporta L2.
saga: suporta L1, L2 e elastic_net, mas é mais lento.
Maior C: menor regularização, tendência a overfitting (se ajusta mais aos dados de treino).
Menor C: maior regularização, tendência a underfitting (se ajusta menos aos dados de treino).
L1 (Lasso): reduz coeficientes menos importantes para 0.
L2 (Ridge, padrão): reduz coeficientes proporcionalmente.
elastic_net: combinação de L1 e L2; precisa ser acompanhado por solver='saga', e o parâmetro l1_
ratio (proporção de L1) precisa ser definido.
Inverso da força da regularização.
Tipo de penalidade (regularização) aplicada aos coeficientes: 
Principais hiperparâmetros
C
Penalidade (penalty)
Preparação dos dados
Tratamento de missings
Imputação por média, mediana, moda, KNN ou exclusão das observações.
Tratamento de outliers
Identificação pelos métodos IQR, z-score, ou visualização através de gráficos de dispersão e 
distribuição.
57
Codificação de variáveis
Transformação de dados categóricos em numéricos utilizando técnicas como One-Hot 
Encoding ou Label Encoding.
Padronização
Ajuste das variáveis para uma mesma escala usando StandardScaler ou MinMaxScaler, 
reduzindo o impacto de diferenças de magnitude entre as features.
Verificar os pressupostos 
Independência dos resíduos, ausência de multicolinearidade, e relação linear entre variáveis 
preditoras e resposta.
Verificar desbalanceamento da variável target
Verificar desbalanceamento de classe e tratamento com undersampling, oversampling ou 
class_weight.
Aprofundamento
Clique no QR Code!
Vantagens
Exemplos utilização 
Desvantagens 
Bons para dados linearmente separáveis Só é eficiente para dados linearmente 
separáveisAtravés da equação, fornece um modo demensurar o quão bom o preditor é. Pode ser sensível a dados desbalanceadas
Fácil de implementar e interpretar 
Probabilidade de ser inadimplênte, detecção de churn
Sensível a multicolinearidade
https://youtu.be/QdGO98Tzc54?si=uoRy30hC5iMVAfiS
https://youtu.be/DPSXVJF5jIs?si=9930yFQGUYeG6hkG
https://youtube.com/playlist?list=PLblh5JKOoLUKxzEP5HA2d-Li7IJkHfXSe&si=oq8wc_ktlJ0tYNkk
https://youtu.be/ZbUlmAuy-UY?si=Gy1rMwV6_290z5Fp
https://www.youtube.com/live/TDCHNI_Q0JI?si=XCNauTtcIjtZpgzM
https://youtu.be/Pk7cHs9H1OY?si=nigTPfcE1JWM0dBb
58
Naive Bayes 
Teorema de Bayes
Naive Bayes é um algoritmo supervisionado de classificação que tem como base o teorema da 
probabilidade condicional de Bayes, que calcula a probabilidade de cada observação pertencer a uma 
classe, considerando as features como probabilidades condicionais. O modelo possui o nome de 
"Naive" pois ele assume que as variáveis são independentes entre si, ou seja, que uma variável não 
depende da outra para acontecer (sem relação entre si).
O teorema de Bayes éuma relações mais importantes envolvendo probabilidades condicionais. Ele se 
da por:
Temos, logo, que a probabilidade de um evento A ocorrer dado que o evento B ocorreu é equivalente 
à probabilidade inicial de A multiplicada pela probabilidade de B ocorrer dado A, dividido pela 
probabilidade de B ocorrer.
No contexto de ciência de dados, trabalhamos com a probabilidade de um valor assumir uma classe 
dadas as características (ou variáveis) de um conjunto de dados. Desse modo, através do teorema de 
Bayes, conseguimos quantificar a probabilidade de uma observação assumir a classe A, por exemplo, 
somente utilizando outras probabilidades.
Probabilidade da observação assumir a classe A, dado uma variável B
Probabilidade da classe A acontecer
Probabilidade da variável B acontecer
A probabilidade da variável B dada a classe A.
Verossimilhança
Probabilidade a priori da classe
Probabilidade a priori da variável preditora
Probabilidade a posteriori 
Assim, temos o teorema de bayes, considerando a classe Y e o conjunto de variáveis preditoras como 
yn, sendo: 
59
Naive Bayes na prática
Considerando o seguinte conjunto de dados, onde o objetivo é tentar prever se alguém vai ou não 
jogar futebol, considerando que o tempo estava chuvoso e a temperatura estava quente.
Tempo TemperaturaDia Umidade Vento Jogou Futebol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Ensolarado
Ensolarado
Nublado
Chuvoso
Chuvoso
Chuvoso
Nublado
Ensolarado
Ensolarado
Chuvoso
Ensolarado
Nublado
Nublado
Chuvoso
Quente
Quente
Quente
Amena
Fria
Fria
Fria
Amena
Fria
Amena
Amena
Amena
Quente
Amena
Alta
Alta
Alta
Alta
Normal
Normal
Normal
Alta
Normal
Normal
Normal
Alta
Normal
Alta
Fraco
Forte
Fraco
Fraco
Fraco
Forte
Forte
Fraco
Fraco
Fraco
Forte
Forte
Fraco
Forte
Não
Não
Sim
Sim
Sim
Não
Sim
Não
Sim
Sim
Sim
Sim
Sim
Não
1. Calcular as probabilidades relativas as variáveis utilizadas para a predição
Com as probabilidades, já é possível calcular as probabilidades condicionais dado o teorema de Bayes, considerando 
o resultado da variável target como Sim ou Não (ou jogar e não jogar).
Como estamos trabalhando com mais de uma variável preditora, múltiplicamos as probabilidades condicionais de 
cada uma delas. Esse é o motivo pelo qual o teorema presume independência entre as variáveis: quando 
multiplicamos duas probabilidades, a operação não captura possíveis intersecções.
60
Para Clima = Ensolarado: Para Temperatura = Quente:
3. Efetue os cálculos para Jogar e Não Jogar 
Somente com esses cálculos já conseguimos visualizar a previsão, comparando os valores obtidos. Entretanto, se 
quisermos os valores normalizados, é necessário efetuar a divisão pela probabilidade total das evidências.
Naive Bayes Multinomial
Naive Bayes Bernoulli
Naive Bayes Gaussiano 
Codificação de variáveis categóricas
Tratamento de outliers
Tratamento de valores nulos
Naive Bayes utilizado para variáveis de contagem discretas.
Naive Bayes utilizado para variáveis binárias que seguem uma distribuição de Bernoulli.
Naive Bayes utilizado para variáveis contínuas que seguem uma distribuição normal.
Transformação via one hot encoder ou label encoder.
Principalmente no Naive Bayes Gaussiano
Existem três tipos principais de Naive Bayes, um para cada tipo de variável: o Gaussiano, o Bernoulli e 
o Multinomial.
Tipos de Naive Bayes 
Preparação dos dados
Previsão final: não jogar futebol.
61
Considera somente atributos independentes (sem relação entre si).
Sensibilidade a dados desbalanceados e outliers.
Atribuição de probabilidade zero para atributos não vistos. Para corrigir esse problema, é possível 
utilizar a correção laplaciana.
Desvantagens
Vantagens 
Algoritmo rápido e com baixo custo computacional para datasets grandes e pequenos.
Simplicidade e eficiência.
Não é afetado pela escala dos atributos, por considerar as probabilidades condicionais.
Filtros de spam e análise de sentimentos
Principais aplicações
Clique no QR Code!
Aprofundamento
https://youtu.be/ozQEpg7aXsw?si=Bzb3Ex-WTYWKuUiY
https://youtu.be/nBrd8BldSdo?si=39_gJo3FZ55YaKy2
https://youtu.be/lJGHZO0rqs0?si=XMpGMEEhcKmfMVEJ
https://youtu.be/O2L2Uv9pdDA?si=QyVctL4FZDo5hfAI
https://youtu.be/9wCnvr7Xw4E?si=iJQ_zuBjBGLTD0tI
62
O KNN (K-Nearest Neighbors) é um modelo supervisionado que pode ser utilizado tanto para 
regressão quanto para classificação.
Ele trabalha calculando a distância de uma observação até todas as outras e selecionando, dentro do 
espaço de features, as K observações mais próximas, sendo K um número inteiro.
A partir das classes ou dos valores dos vizinhos mais próximos, temos a classificação, que leva em 
consideração a moda das classes dos vizinhos, ou a predição (regressão), em que é calculada a média 
dos valores dos vizinhos.
A previsão de um valor contínuo se da pela média dos valores dos K vizinhos mais próximos.
A previsão de uma classe se dá pela moda da classe dos K vizinhos mais próximos.
Queremos 
descobrir a 
classificação do 
ponto vermelho.
Calcula-se a 
distância escolhida 
(aqui, euclidiana) 
do ponto 
vermelho em 
relação a todos os 
pontos.
Se K = 1, a 
classificação se dá 
pelo ponto com a 
menor distância 
possível (azul 
escuro).
Se K > 1 (4), a 
classificação se dá 
pela classe mais 
frequente dos 
vizinhos mais 
próximos (laranja).
KNN 
Classificação
Regressão
3,6
4,5
 1 1,6 3.2 4 5 6 1 1,6 3.2 4 5 6 1 1,6 3.2 4 5 6
3,6
4,5
6
3
?
4
5
6
3
2
6
5
4
3
2
1
K=3
K=2 
Como o valor real de Y 
para X = 4 é 5, então o 
melhor valor de K é K 
= 2, uma vez que 4,5 (o 
valor previsto por K=2) 
está mais próximo de 5 
do que 3,6 (previsto por 
K=3).
Se K = 3, pegamos os 
valores dos 3 vizinhos 
mais próximos a 4 no 
eixo X (3,2, 5 e 6) e 
tiramos a média dos 
valores de Y de cada 
um desses pontos. A 
previsão para X = 4 vai 
ser 3,6.
Se K = 2, pegamos os 
valores dos 2 vizinhos 
mais próximos a 4 no 
eixo X (3,2 e 5) e 
tiramos a média dos 
valores de Y de cada 
um desses pontos. A 
previsão para X = 4 vai 
ser 4,5.
A linha verde 
representa os dados 
reais; em azul são os 
pontos considerados 
para treinamento. 
Queremos prever qual 
é o valor de Y quando 
X = 4. O valor real é 5.
63
Métricas de distância no KNN.
Embora a Distância Euclidiana seja a mais utilizada, é possível alterar a métrica de distância no KNN 
por meio do hiperparâmetro metric, podendo-se usar, por exemplo, a Distância Euclidiana, Minkowski 
ou Manhattan (para analisar os impactos de cada uma, consulte a seção de estatística).
Além disso, também podemos atribuir pesos inversamente proporcionais à distância aos vizinhos, 
utilizando o hiperparâmetro weights. Desse modo, os vizinhos mais próximos terão maior poder de 
decisão do que os mais distantes, o que torna uma boa alternativa na presença de outliers.
Nesse caso, se aplicássemos o KNN "padrão", a classe escolhida seria a laranja, uma vez que 3 dos 5pontos mais próximos são laranjas. Porém, se aplicarmos mais peso às observações mais próximas, 
poderíamos ter como resultado a classe azul.
Se houver um "empate" na votação da classificação, por exemplo, K = 4 e duas observações são 
laranjas e duas são azuis, a escolha é feita de modo aleatório. Por isso, é uma boa prática sempre 
escolher um número ímpar para K.
K = 5
Weigths = Uniform
Todos os dados
Decisão: amarela Decisão: verde
K = 5
Weigths = Distance
As situações anteriores são exemplos em um 
espaço bidimensional. Porém, quando possuímos 
muitas features, passamos para um espaço n-
dimensional e a visualização do processo, 
embora ainda seja a mesma, pode ser dificultada.
A adição de muitas variáveis pode tornar o 
modelo suscetível à maldição da 
dimensionalidade e prejudicar o cálculo das 
distâncias, por aumentar a distância média entre 
as instâncias e deixar o conjunto esparso.
64
KNN como um lazy learner
O KNN é considerado um lazy learner, uma vez que não aprende com os dados de treinamento, 
somente memoriza a posição deles, e durante a fase de predição efetua apenas o cálculo das 
distâncias entre as instâncias de treinamento e a nova observação. Esse fato gera uma conclusão 
atípica quanto ao underfitting e ao overfitting do modelo.
O fato de o KNN ser um algoritmo baseado em distâncias faz com que ele seja sensível à escala das 
variáveis, tornando essencial o processo de normalização. Além disso, misturar diferentes tipos de 
variáveis (contínuas com binárias, por exemplo) pode prejudicar um modelo que utilize a Distância 
Euclidiana, sendo necessária uma análise adicional para decidir o tipo de distância e o pré-
processamento adequados.
Overfitting x Underfitting 
K muito pequeno K muito grande
Efeito Aumento do overfitting Aumento do underfitting
Com um K pequeno, o modelo só vai 
pegar a instância mais próxima do treino, 
tendo um desempenho próximo de 100% 
nessa etapa e não generalizando os 
resultados para novos dados
Com K grande, o modelo vai tender a 
generalizar decisões de acordo com o 
comportamento global do dataset, 
selecionando um valor próximo a média 
global (regressão) e a moda global 
Justificativa
Como definir K?
Como foi demonstrado anteriormente, existe um número ótimo de K que irá conciliar a diminuição do 
erro com a ideal complexidade do modelo. Esse valor pode ser encontrado através de tunagem de 
hiperparâmetros com Grid Search e validação cruzada.
65
Vantagens Desvantagens
Simplicidade do treinamento.
Aplicável para problemas complexos.
Facilidade de incrementar novos dados.
Predição custosa para grandes conjuntos 
de dados.
Sensibilidade a outliers, escala e alta 
dimensionalidade.
Escolha sensível de K.
A árvore de decisão é um modelo supervisionado que pode ser utilizado tanto para regressão quanto 
para classificação. Seu objetivo é encontrar diferentes pontos de corte nas variáveis de forma a 
minimizar, a cada divisão, uma métrica de impureza (como o índice Gini ou a entropia) no caso de 
classificação, ou uma função de custo (como o MSE ou o MAE) no caso de regressão. A partir dessas 
sucessivas divisões, a previsão é realizada com base nas amostras presentes no nó folha.
É o primeiro nó estipulado pelo 
modelo. Definido pelo ponto de 
corte que, dentro todas as 
variáveis, mais minimiza a métrica 
de impureza ou função de perda.
É o último nó da árvore, onde a 
previsão ou classificação é 
finalizada
É o critério de divisão de 
uma árvore de decisão 
Árvore de decisão
Sol
Vento
Ramo
Nó raiz
Nó folha
Sem praia
Praia!Sem praia
Sim
Sim
Não
Não
Estrutura de uma árvore
Aprofundamento
Clique no QR Code!
https://youtu.be/HVXime0nQeI?si=doYXakUnqdZUwCC-
https://youtu.be/HJAChG-GRyA?si=DeD-IUTjtzfpmpHd
https://youtu.be/ygUY9b8a1hE?si=sDjKowutq1hnaF86
https://youtu.be/awSLYt1Jso8?si=9bMbgoeCeHFb0T1Z
https://youtu.be/8V0zGQ9oQG4?si=hq64_TKWGGIQVHci
https://youtu.be/CQveSaMyEwM?si=W2ceRcfy_yqX6bO_
https://youtu.be/CRW-OM4AlNs?si=3_spJsd0MfKQkBcJ
66
Uma métrica de impureza mensura o quão bem os dados estão discriminados (ou segregados) em um 
determinado espaço. Se temos, por exemplo, uma única caixa contendo 3 bolas (1 vermelha, 1 azul e 
1 laranja), o espaço está completamente não discriminado, apresentando alto grau de impureza. Por 
outro lado, se há uma caixa para cada cor, pode-se dizer que o índice de impureza é baixo.
Alta impureza Baixa impureza
Árvores de classificação
Métricas de impureza
É importante destacar que tanto o índice Gini quanto a entropia apresentam desempenhos muito 
semelhantes e, na prática, não há diferença significativa na escolha.
Entropia
Gini
A entropia é uma métrica de impureza que leva em 
consideração a desordem de um sistema e a incerteza da 
informação. Na prática, é mais adequada para amostras 
desbalanceadas por ser sensível a pequenas variações de 
probabilidade entre as classes, porém possui um custo 
computacional adicional devido ao cálculo do logaritmo.
O Gini é uma métrica de impureza que mensura a 
mistura entre as classes a partir das proporções. É uma 
alternativa ligeiramente mais rápida devido à 
simplicidade do seu cálculo.
O nó raiz é o primeiro nó que compõe uma árvore de decisão e representa o ponto de corte da 
variável que, dentre todas as disponíveis no dataset, maximiza a redução da impureza (mensurada por 
métricas como Gini ou entropia). Esse processo, portanto, precisa ser feito levando em consideração 
todas as variáveis presentes no dataset. Para isso:
Como é feita a seleção do nó raiz?
1.
2.
3.
Calcula-se o gini do dataset inteiro
Para cada divisão de cada variável possível, é calculada a impureza de cada nó filho
O nó selecionado é aquele que possui maior diminuição de impureza comparada
67
Vamos tentar usar duas variáveis para prever se um aluno passará na prova ou não: se ele estudou ou 
se ele comeu bem no dia anterior. Para definir a variável do nó raiz, observamos qual variável possui 
maior redução de impureza.
Estudou? Comeu bem?
Passou na prova?
Sim: 5 alunos
Nao: 1 aluno
Passou na prova?
Sim: 4 alunos
Nao: 1 aluno
Passou na prova?
Sim: 0 alunos
Nao: 4 aluno
Passou na prova?
Sim: 1 alunos
Nao: 4 aluno
Sim SimNão Não
Impureza total: 0.168 Impureza total: 0.32
Como a variável estudou teve uma maior diminuição da impureza, ela vai ser a utilizada como variável 
inciial. E assim, já conseguimos formular a nossa árvore de decisão.
Exemplo com variáveis numéricas
O exemplo anterior foi feito utilizando variáveis binárias para facilitar a explicação. No caso de 
variáveis numéricas, não são todos os valores que são testados para verificar a diminuição da 
impureza. Os números são ordenados de forma crescente, e a impureza vai ser calculada com 
base no valor médio dos vizinhos.
Exemplo:
Idade: 24, 30, 36, 36, 42, 44, 46, 47, 
Valores de idade testados: 27, 33, 36, 39, 43, 46, 46.6, 47, 49
Estudou? Horas estudadas > 5
Comeu bem? Kcal ingeridas > 2000Não Passou Não Passou
Passou PassouNão Passou Não Passou
Sim Sim
Sim Sim
Não Não
Não Não
68
Quando a árvore chega a um nó folha, a previsão é feita com base na classe mais frequente entre 
as amostras daquele nó (moda).
Nem sempre conseguimos um nó em que todas as amostras pertençam à mesma classe. Forçar 
divisões até atingir esse cenário pode levar ao overfitting, fazendo com que o modelo se ajuste 
demais aos dados de treino. Por isso, nos nós folha, a previsão é definida pela classe majoritária.
Para regressão, a previsão final é feita a partir da média dos valores das amostras presentes no 
nó, podendo ser trocada para a mediana com o objetivo de conter possíveis outliers.
Ganho de informação: quantifica a redução da entropia promovida por uma divisão, 
comparando a impureza do nó pai com a impureza ponderada dos nós filhos.
Previsão final de uma árvore de decisão
Classificação
Regressão
Árvores de regressão
A árvore de regressão tem como objetivo encontrar diferentes pontos de corte entre as features, a fim 
de prever um valor contínuopor meio da minimização de uma função de custo (MAE ou, geralmente, 
MSE).
O processo de encontrar os pontos de corte é análogo ao de uma árvore de classificação: diferentes 
valores são testados como possíveis cortes, e o algoritmo compara cada uma das variáveis para 
identificar aquela que promove a maior redução da MSE.
A previsão final é obtida com base na média dos valores das amostras presentes no nó, o que torna o 
algoritmo vulnerável a outliers, que podem distorcer o valor médio. Para contornar esse efeito, é 
possível substituir a média pela mediana como valor de previsão.
Desvantagens
Vulnerabilidade a overfitting
Quando os hiperparâmetros de uma árvore não são ajustados corretamente, uma árvore de decisão 
tende a crescer exageradamente e, assim, se sobreajustar aos dados de treinamento, não 
conseguindo generalizar o resultado para os novos dados. Para prevenir isso, é importante sempre 
efetuar uma tunagem de hiperparâmetros, principalmente referente a:
Profundidade da árvore (max_depth)
Número mínimo de amostras por folha (min_samples_leaf)
Número mínimo de amostras para o split (min_samples_split)
69
Vantagens
Versatilidade
Alta explicabilidade
Falta de iteratividade 
Sensibilidade a outliers em regressão
Uma árvore de decisão pode ser utilizada tanto para classificação quanto para regressão. Assim, é 
possível usar o mesmo pipeline para ambas as situações sem grandes ajustes.
A árvore de decisão não gera somente valores, mas um diagrama de fluxo. Assim, é possível 
visualizar exatamente os pontos de corte, quantas amostras de cada classe estão presentes em 
cada nó, o peso de cada variável e o grau de pureza.
O processo de decisão do ponto de corte em uma árvore de decisão ocorre localmente, ou seja, 
o algoritmo analisa as features individualmente, escolhendo aquela que maximiza a redução de 
impureza no nó atual. Como a discriminação é feita com base em somente uma variável, o 
modelo não captura diretamente as correlações entre elas.
A previsão em uma árvore de decisão de regressão é feita com base na média. Assim, ela é muito 
distorcida em casos de outliers.
Não existe restrição quanto à relação entre variáveis
Baixo custo computacional
Seleção de atributos
Uma árvore de decisão pode receber dados com quaisquer tipos de relações (lineares, exponenciais, 
entre outras), o que não acontece na regressão logística e linear, por exemplo.
Uma única árvore possui um baixo custo computacional atrelado, uma vez que o número de amostras 
que serão utilizadas em cada nó vai diminuindo conforme a pureza aumenta.
A árvore de decisão acaba selecionando sozinha quais atributos usar. Por isso, costuma ser robusta à 
inclusão de variáveis irrelevantes ou redundantes, já que somente as features que contribuem para a 
redução da impureza são utilizadas nas decisões do modelo.
Técnicas de podagem (puring)
As técnicas de podagem têm como objetivo parar o crescimento acelerado de uma árvore para prevenir 
overfitting. Existem dois tipos de poda:
70
Principais híperparâmetros
Pré podagem (pre-puring)
Criterion
Pós podagem (post-puring)
Max_deph
Min_samples_split
min_samples_leaf
max_leaf_nodes
Pré-poda (pre-pruning): interrompe o crescimento da árvore antes de ela ficar muito complexa, por 
meio do ajuste de hiperparâmetros como a profundidade máxima da árvore (max_depth) e o número 
mínimo de amostras para o nó ser dividido (min_samples_split).
Métrica de impureza utilizada, podendo ser gini ou entropia (entropy). Para regresão, squared_error 
ou absolute_error
Pós-poda (post-pruning): a árvore é inicialmente construída sem restrições, crescendo até o máximo. 
Depois, os ramos que não contribuem com a performance são removidos através da comparação da 
impureza de um nó comum com o que teríamos ao transformar o nó em folha.
Profundidade máxima da árvore, sendo um número inteiro.
Número mínimo de amostras necessário para dividir um nó.
Número mínimo de amostras em um nó folha
Limita o número total de nós folha
Condição de split escolhida, por 
que mais minimiza o gini dos nós 
filhos
Samples
números de amostras (ou 
observações) dentro desse 
nó
Class
Classe majoritária presente no nó, que 
será a previsão final do modelo caso 
este nó seja folha.
Value
número de amostras dentro de 
cada classe, separadas por vírgula. 
A soma é igual a samples, e a 
partir dela conseguimos ver o 
quão bem as classes estão 
discriminadas e como isso se 
relaciona com o valor do Gini.
Gini/Entropia
Valor do gini/
entropia no nó
Interpretação de uma árvore
71
Aprofundamento
Clique no QR Code!
https://youtu.be/_L39rN6gz7Y?si=y2JoKL3bxNS__Mc7
https://youtu.be/wpNl-JwwplA?si=0RNUWYsaoLAhfu42
https://youtu.be/g9c66TUylZ4?si=erICoyk9MgYqfVIS
https://youtu.be/W7MfsE5av0c?si=plplqtOrSq-v5GtE
https://youtu.be/J4saniZXutU?si=ADxHTq6N0th_gfRx
https://youtu.be/pocz0bWjp_o?si=JaKVP8NDrMNqUYo9
https://youtu.be/aNrdgC0lIZ8?si=h8uhsPYXT-EsaViJ
72
Support Vector Machine (SVM) é um algoritmo de aprendizado supervisionado utilizado tanto para 
classificação quanto para regressão. Na classificação, onde é mais utilizado, seu objetivo é encontrar o 
hiperplano ótimo que separa os dados em duas classes, de modo a maximizar a margem (definida 
como a distância entre o hiperplano de decisão e os pontos mais próximos de cada classe). Desse 
modo, é essencial que os dados sejam linearmente separáveis para que seja possível determinar o 
hiperplano.
Support Vector Machine (SVM) 
Conceitos:
Margem
Hard Margin
SVM criterioso
Vetor de suporte
Vetor de suporte
Margem
Fronteira de decisão 
Hiperplano
distância entre o hiperplano e os vetores de suporte. O objetivo do SVM é maximizar a margem, ou 
seja, proporcionar a maior separação possível entre duas classes.
Entretanto, é possível definir o nível de rigor adotado para definir essa separação entre classes. 
Observe o ponto verde no esquema. Ele está dentro do espaço da margem e longe das outras 
observações. Caso o modelo imponha restrições extremamente rígidas, a fronteira de decisão se 
deslocaria para próximo dele, diminuindo a margem.
Um SVM de Hard Margin é uma abordagem utilizada para problemas perfeitamente linearmente 
separáveis, na qual se exige que todas as observações sejam classificadas corretamente e sem 
violações de margem. Essa abordagem promove o deslocamento facilitado do hiperplano, sendo 
sensível a ruídos e outliers.
Assim, é plausível a ideia de "ignorar" esse ponto na hora de construir o 
SVM. Afinal, ele está, de certo modo, atrapalhando o objetivo original de 
maximizar a margem.
O que aconteceu no esquema principal foi justamente isso: aplicamos 
uma suavização da margem, permitindo violações da margem, que 
podem ou não resultar em erros de classificação, e amenizando os efeitos 
de ruídos e outliers.
Distância entre o hiperplano 
e os vetores de suporte 
São dados mais próximos da 
margem, e definem a posição e 
a orientação do hiperplano
Componente que separa linearmente 
duas classes (verificar definição exata 
abaixo)
73
A partir de 4 dimensões a visualização se torna complicada, mas é matemáticamente possível 
traçar um hiperplano.
Hiperplano: é a generalização de um plano em diferentes dimensões, representando um 
subespaço de dimensão n-1 que corta o espaço em questão.
Espaço tridimensionalEspaço bidimensional
Problema não linearmente separável +1 dimensão adicionada, separável por um 
hiperplano
Hiperplano
Soft Margin
Um SVM de Soft Margin é uma abordagem utilizada para problemas não perfeitamente 
linearmente separáveis, na qual nem todas as observações precisam ser classificadas 
corretamente, permitindo violações da margem. Essa flexibilização no posicionamento do 
hiperplano reduz a sensibilidade a ruídos e outliers, ao custo de aceitar uma separação menos 
rígida entre as classes.
Kernel Trick 
O SVM só é possível ser utilizado em problemas linearmente separáveis. Mas e quando o conjunto de 
dados não é linearmente separável?
Para resolver esse problema, utilizamos o KernelTrick: uma técnica matemática que adiciona uma 
dimensão aos dados, através da aplicação de funções matemáticas diversas, com o objetivo de tornar 
esses dados linearmente separáveis.
Tipos de kernel que são possíveis utilizar (incluindo o linea, mostrado anteriormente)
Kenel 
74
ExplicaçãoKernel Vantagens Desvantagens
Linear
Radial (RBF)
kernel mais simples. Utilizado 
quando os dados já são 
linearmente separáveis.
simples, rápido e bom para 
problemas já linearmente 
separáveis.
bom para dados não 
linearmente separáveis.
mais custoso 
computacionalmente e 
com risco de overfitting.
não é suficiente para 
conjuntos não lineares.
adiciona features polinomiais ao 
conjunto de dados.
 tipo de kernel mais utilizado, por 
conta de sua flexibilidade. Consegue 
lidar com problemas complexos e 
simples; é o padrão.
consegue lidar com as 
mais variadas 
distribuições e é bom 
para dados com altas 
dimensões.
custo computacional mais 
elevado.
Polinomial
Principais hiperparâmetros
C
Gamma
Kernel
controla a tolerância ao erro, o trade-off entre maximizar a margem e minimizar o erro de classificação.
controla a regularidade da fronteira de decisão 
tipo de kernel escolhido para o modelo: linear, poly (polinomial), rbf (radial), sigmoid ou precomputed.
Quanto maior o C, melhor separa as classes (hard margin, deixa a margem mais estreita). Pode 
aumentar o overfitting.
Quanto menor o C, menor a penalização dos erros (soft margin, margem mais larga). Pode 
aumentar o underfitting.
Quanto maior o gamma, mais irregular é a fronteira de decisão 
Quanto menor o gamma, mais suave é a fronteira de decisão
Possibilidade de aplicar soft margin (através do parâmetro C) para equilibrar o impacto de pontos 
mal classificados, reduzindo a sensibilidade a ruídos e outliers extremos.
Através do uso de kernels, o SVM pode lidar tanto com dados linearmente separáveis quanto com 
padrões complexos não lineares, mapeando os dados para espaços de maior dimensão.
Embasamento matemático bem estudado e consolidado.
Vantagens:
75
Baixa explicabilidade e visualização dificultada quando muitas dimensões são aplicadas.
Alto custo computacional e lentidão para conjuntos de dados com muitas amostras.
Baixo desempenho em dados ruidosos e com muitos outliers, que distorcem a posição dos 
vetores de suporte.
Sensibilidade à escolha de kernel e hiperparâmetros.
Mudar para um kernel menos 
flexível (ex.: de RBF para linear).
Diminuir o hiperparâmetro C, 
aplicando uma soft margin para 
penalizar menos os erros.
Mudar para um kernel mais flexível 
(ex.: de linear para RBF).
Aumentar o hiperparâmetro C, 
para aplicar uma hard margin e 
separar melhor as classes.
Desvantagens
Como lidar com overfitting e underfitting no SVM 
Overfitting: Underfitting:
Aprofundamento
Clique no QR Code!
É possível utilizar o SVM para classificação multiclasse, por mais que o algoritmo tenha sido 
construído pensando em situações binárias.
As principais alternativas envolvem treinar diversos SVMs, como um para cada par de classes 
(one-vs-one) ou um para cada classe contra as demais (one-vs-rest).
https://youtu.be/Y-WFZd9_gtE?si=NBcja2nI015Z9meG
https://youtu.be/efR1C6CvhmE?si=QQCjtUx3FJP0g8bN
https://youtu.be/Q7vT0--5VII?si=9MZaL3qHtCcvhiME
https://youtu.be/3liCbRZPrZA?si=5FXfIQXniSTxhwrV
https://youtu.be/pH51jLfGXe0?si=He_kqCFfrqvJ2A0T
https://youtu.be/Lpr__X8zuE8?si=TD4TZv5CORqqy0wr
https://simulators.yobee.co.in/support-vector-machine
76
Um modelo de ensemble é um algoritmo que combina múltiplos modelos simples de predição (weak 
learners), gerando um único modelo mais robusto que tem como objetivo reduzir o viés ou a variância 
da solução mais simples.
Modelos de ensemble mais modernos podem minimizar de forma eficiente diversos tipos de 
problemas dos algoritmos de machine learning "tradicionais", como a falta de interação entre as 
variáveis e a sensibilidade a outliers. A grande maioria dos modelos mais famosos são baseados em 
árvores. Existem dois tipos principais de modelos de ensemble:
Modelos de ensemble 
Bagging
Boosting
 uma técnica de ensemble onde subconjuntos de dados de treinamento são criados individualmente por 
amostragem com reposição (bootstrapping), e depois combinados, reduzindo a variância. Ou seja: o 
resultado do primeiro modelo não interfere no segundo. Para definir a previsão final, são utilizados a 
média (para regressão) ou a moda (para classificação), em que o resultado mais frequente será escolhido.
A técnica de amostragem com reposição, também conhecida como bootstrapping, gera novos conjuntos 
de dados com linhas e, em alguns casos, variáveis aleatórias do dataset original. Cada modelo é treinado 
com um dataset ligeiramente diferente, o que confere diminuição da variância.
 é uma técnica de ensemble onde os modelos são treinados de forma sequencial. Ou seja, inicia-se com 
um weak learner e cada modelo subsequente leva em consideração os erros cometidos pelo modelo 
anterior durante o treinamento, como se um "peso" maior fosse adicionado aos dados classificados 
incorretamente. Esse método é ideal para modelos com alto viés, buscando melhorar a capacidade de 
adaptação do modelo.
Modelo 1
Modelo 1
Modelo 2
Modelo 2
Modelo 3
Modelo n
BootstrappingDados originais Treinamento 
Modelo
Final
Dados originais
previsoes incorretas
previsoes incorretas
previsoes corretas
previsoes corretas
77
O Random Forest é um modelo de ensemble de classificação e regressão que combina múltiplas árvores 
de decisão simples e aleatórias, utilizando amostras bootstrap e seleção aleatória de features, gerando 
uma única predição mais robusta e complexa, com menor probabilidade de overfitting e com maior 
custo computacional quando comparado com uma árvore de decisão simples. Para classificação, o 
resultado escolhido é a moda dos resultados das árvores (votação), enquanto para regressão é a média.
Quando comparado com uma árvore de decisão individual, o Random Forest possui uma tendência de 
sobreajuste muito inferior. Entretanto, ainda assim é possível overfittar esse modelo, mas talvez de 
maneira um pouco diferente.
Quando olhamos para o funcionamento do modelo, é lógico pensar que, se aumentarmos o número de 
árvores para um número muito grande, o modelo vai se sobreajustar aos dados de treinamento e não 
generalizar a previsão para novos dados. Entretanto, isso não é o que acontece.
Conforme aumentamos o número de árvores, a diferença entre o erro do treino e do teste diminui e se 
estabiliza a partir de um determinado valor. Isso se dá por conta da estabilização da variância própria do 
modelo.
Os parâmetros do random forest são os mesmos de uma árvore de decisão adicional, tirando o 
parâmetro número de árvores (n_estimators). 
Random Forest
Dados de treinamento 
Bagging (votação das classes)
Classe A Classe A Classe AClasse A Classe B Classe B
Classe A
Árvore de decisão Random Forest
Cria apenas uma árvore Cria um conjunto de árvores aleatórias simples
Cria regras para a selação das melhores variáveis, 
usando um único conjunto
Considera diversos subconjuntos aleatório das 
variáveis para fazer os splits e efetuar a previsão 
Resultado é a moda ou a média de todas as árvores O resultado é fruto de uma única árvore
Relação de overfitting no Random Forest 
78
O uso de datasets com bootstrapping contribui para a captura de relações mais complexas entre as 
variáveis, o que diminui a variância e o overfitting.
Por ser formado por diversas árvores de decisão individuais, o Random Forest acaba por perder a 
explicabilidade proveniente de uma única árvore de decisão simples.
Baixa velocidade de processamento 
Diminuição da variância e do overfitting
Perca da explicabilidade
Vantagens
Desvantagens
Erro do treino x teste Diferença erro do treino e teste
Erro do Treino
Erro do Teste
M
SE
 
In
te
rv
al
o
Número de árvores Número de árvores
O overfitting, na verdade, acontece quando os 
hiperparâmetros individuais das árvores são modificados, 
como a profundidademáxima, número mínimo de amostras 
para ocorrer um split, etc.
No gráfico à esquerda, é possível observar que a diferença 
entre o erro do treino e do teste aumenta conforme 
aumentamos a profundidade da árvore, e não quando 
aumentamos o número de árvores.
79
O AdaBoost é um algoritmo de boosting, ou seja, é treinado de forma sequencial onde, a cada iteração, 
o algoritmo fornece pesos sobre as observações, atribuindo maior peso àquelas que foram classificadas 
incorretamente pelo modelo anterior. Esse mecanismo faz com que modelos com menor erro 
contribuam mais para a predição final.
O Gradient Boosting é um algoritmo de boosting para classificação ou regressão, que tem como 
objetivo utilizar árvores de decisão simples, treinadas de forma sequencial, de modo que o modelo 
posterior corrija os erros residuais do modelo anterior.
Seu funcionamento se baseia em, no lugar de tentar prever diretamente o valor da variável target, 
prever os resíduos do modelo anterior por meio das variáveis disponíveis, ajustando o modelo por meio 
de uma taxa de aprendizado associada, de forma a minimizar uma função de custo utilizando gradiente 
descendente e gradualmente aumentar o desempenho.
De modo geral, em um modelo baseado em gradient boosting:
Adaboost
Gradient Boosting
Primeira iteração Segunda Iteração Modelo final
Erros
Aplicação de maior 
peso aos erros
Segunda iteração
Priorização dos erros 
penalizados
Combinação primeira e 
segunda iteração
1.
2.
3.
4.
5.
Um modelo simples é criado a partir de uma previsão que mais se aproxime de minimizar a função 
O resíduo desse modelo é calculado.
Uma árvore inicial é formada, com base nas features, com o objetivo de prever o valor 
desses resíduos.
Com base nas previsões da árvore para os resíduos, precisamos comparar esses valores com 
o valor real e, assim, atualizar os valores que serão utilizados na próxima árvore.
O processo se repete até que atingimos o número máximo de árvores
O valor utilizado na próxima árvore para cada instância será:
80
XGBoost (eXtreme Gradient Boosting) é um algoritmo de ensemble baseado no gradient boosting, 
utilizado para classificação e regressão.
Suas principais características incluem a implementação nativa da regularização L1 e L2, tratamento de 
valores ausentes e validação cruzada, além de ser altamente otimizado para grandes datasets por 
empregar construção paralela e suportar crescimento level-wise e leaf-wise, dependendo do objetivo 
determinado. 
A aceleração por GPU contribui para sua popularidade e eficácia na prática.
No crescimento level-wise, todos os nós do mesmo 
nível de profundidade são expandidos, deixando 
todos no mesmo nível.
É um processo mais otimizado para o paralelismo; 
por outro lado, há uma demora maior para convergir 
e minimizar a função de custo.
No crescimento leaf-wise, os nós crescem de forma 
assimétrica, sendo que somente o nó que 
proporciona um maior ganho de informação e 
diminuição da função de custo cresce.
Possui como vantagem uma convergência mais 
rápida para grandes conjuntos de dados.
XGBoost
LightGBM
Regularização L1 e L2 nativa para lidar com overfitting
Crescimento level-wise
Crescimento leaf-wise
Otimização para grande volume de dados por conta de recursos de paralelização
Tratamento automático de valores ausentes sem a necessidade de pré processamento
Alta gama de hiperparâmetros opcionais para facilitar a modelagem 
Possui como tipo de crescimento padrão o level-wise, mas suportando o leaf-wise
Regularização L1 e L2 facilitada
Substituição de valores contínuos por bins discretos, otimizando o consumo de memória
Lidar automaticamente com variáveis categoricas e missings
O LightGBM é uma variação do gradient boosting desenvolvido pela Microsoft, posteriormente ao 
XGBoost. Ele tem como principais características ser um algoritmo extremamente rápido, por utilizar 
crescimento leaf-wise para convergir rápido, e altamente otimizável para dados tabulares.
De modo específico, o LightGBM possui como atributos:
81
Crescimento leaf-wise
Amostragem inteligente de dados (GOSS)
Alta gama de hiperparâmetros opcionais para facilitar a modelagem 
Aprofundamento
Clique no QR Code!
https://youtu.be/9ieThsLib-U?si=fsjW0cgpWvzH8-bV
https://youtu.be/TyvYZ26alZs?si=5L1Y2ChCp_eB6uGt
https://youtu.be/n_ZMQj09S6w?si=MRo3NElQAnnoF_5v
https://youtu.be/eRtwENJae0c?si=jNYvuXMQqLMCUj2b
https://youtu.be/Xz0x-8-cgaQ?si=tQ93vcrbsLmVhed9
https://youtu.be/EbYOnORvrio?si=vxeZ_op9vua_SXnN
82
Aprendizado Não Supervisionado
O K-Means é um algoritmo não supervisionado que tem como objetivo dividir os dados em K clusters 
com características semelhantes. Através da seleção aleatória de centróides (o número depende da 
quantidade de clusters desejados), cada ponto do dataset é associado ao centróide mais próximo. 
Após isso, a posição do centróide é redefinida com base nas médias dos pontos pertencentes a cada 
um, até atingir o número máximo de iterações.
Vamos considerar o seguinte dataset, sendo que o K selecionado vai ser igual a 2. Os dados não serão 
normalizados, para facilitar a visualização.
Um centróide é o centro geométrico de uma forma. Se temos pontos formando uma esfera, o 
centróide vai estar localizado exatamente no centro dessa esfera. O K-means utiliza o conceito de 
centróides para determinar a localização dos clusters, sendo que cada centróide vai ser o centro de 
um cluster.
Centróides são inicializados de maneira aleatória 
iniciação de modo inteligente, com base na probabilidade proporcional a 
distância (centróides mais longe do primeiro tem mais chance de serem 
escolhidos, evitando q estejam muito juntos)
Centróide
Número de clusters (n_clusters)
Random:
K-means++: 
Modo de inicilização dos centróides (init)
Número máximo de iterações (max_iter)
Funcionamento do k-means
Principais Hiperparâmetros
K-means
Conjunto de dados Atribuição de 
centróides aleatórios 
no espaço
Calcula a distância dos 
pontos para os 
centróides, 
relacionando eles com 
o centróide mais 
proximo
Atualiza a posição do 
centroide, sendo ela 
amédia entre os 
pontos atribuídos
Calcula novamente a 
média entre os 
pontos e reposiciona 
o centróide. Repete 
o processo até não 
mudar.
K-Means na prática
83
Nome
Nome
A
B
C
D
E
A (25,2500)
B (32, 4000)
C (40, 5000)
D (22, 2000)
E (27, 3600)
25
32
40
22
27
0
1500
2530
502
1100
2530
1000
0
3041
400
C1
C2
C2
C1
C2
2500
4000
5000
2000
2500
Idade
Distância até C1 Distância até C2 Céntróide atribuído
Renda
Definição dos centróides
Cálculo das distâncias
Atualização dos centróides com base na média dos pontos
O primeiro passo é definir os centróides. O próprio algoritmo determina as posições deles 
aleatoriamente, e o número de centróides vai ser equivalente ao número de clusters definido no 
começo (ou seja, 2).
O centróide vai ser o ponto central de um cluster no K-means, podendo ser localizado em qualquer 
ponto do espaço. No caso de algoritmos como K-medoids, o centroide precisa ser um ponto real do 
dataset, ou seja, que possui uma observação.
Vamos considerar a localização dos centróides sendo:
Depois, precisamos calcular a distância de ambos os centróides para cada ponto do dataset. Cada 
ponto vai ser atribuído ao centróide que for menos distante. Para efetuar esse cálculo, o método 
mais comum é utilizando a Distância Euclidiana.
Centróide 1 (C1): Centróide 2 (C2): 
Idade: 25
Renda: 2500
Idade: 40
Renda: 4000
84
Assim, a posição dos centróides passou de C1(25,2500) e C2(40,4000) para C1 (23.5, 2250) e 
C2(33, 4200)
Cálculo das distâncias com base nos novos centróides 
A partir daqui, repetiremos o mesmo processo anterior com base nos novos centróides 
calculados. Ou seja, calcularemos a distância entre todos os pontos e os centróides e 
atribuiremos eles aos mais próximos. Por conta do deslocamento do centróide, é possível que um 
ponto que anteriormente não estava próximo passe a estar — e, com isso, ocorra uma mudança 
nos clusters.Caso não houvesse mudança na disposição dos clusters, o K-means está finalizado. Se houver, é 
necessário repetir o mesmo processo novamente de recalcular a média e as distâncias até um 
momento de estabilidade.
Como não houve 
mudança no centróide 
atribuído, o algoritmo 
está finalizado.
Nome
A (25,2500)
B (32, 4000)
C (40, 5000)
D (22, 2000)
E (27, 3600)
250
1750
2750
250
1350
1700
200
800
2200
600
C1
C2
C2
C1
C2
Distância até novo C1 Distância até novo C2 Céntróide atribuído
Alta explicabilidade e fácil implementação
Rápido
Bom para grandes volumes de dados
O K-means possui uma alta explicabilidade, e os poucos hiperparâmetros necessários facilitam a sua 
implementação 
Vantagens
85
O K-medoids é um tipo de modelo alternativo ao K-means, que no lugar de usar centróides, utiliza 
medoides.
De modo geral, enquanto o centróide do K-means pode aparecer em qualquer ponto aleatório do 
espaço, o K-medoids escolhe pontos reais do espaço para ser o início do cluster.
Isso minimiza principalmente a sensibilidade a outliers do K-means.
Aleatoriedade dos centróides 
Sensibilidade a outliers
Sensibilidade a alta dimensionalidade e dados não normalizados 
Reestrição ao formato esférico do cluster
O número de clusters (K) precisa ser definido manualmente 
Tratamento de missings Tratamento de outliers
Codificação de variáveis categóricas Escalonamento de variáveis
O fato dos centróides serem atribuídos de maneira aleatória no espaço contribui para um maior custo 
computacional se ele for posicionado em uma região distante dos pontos, o que gera uma 
convergência mais lenta e resultados diferentes dependendo da inicialização. Esse problema pode ser 
minimizado utilizando K-means++.
Outliers deslocam a posição dos centróides, assim, prejudicando a definição dos clusters
A alta dimensionalidade dificulta o processo de distinção dos centroídes mais próximos
Pontos que minimizam a Distância Euclidiana tendem a se organizar de maneira esférica. Assim, o k-
means não consegue distinguir diferentes formatos de clusetr
O valor de K precisa ser definido manualmente pelo usuário. Desse modo, é necessário um método de 
definição de clusters alternativo, como o do joelho ou silhueta.
K-Means X K-Medoids
Preparação dos dados
Desvantagens
Aprofundamento
Clique no QR Code!
https://youtu.be/lX-3nGHDhQg?si=4dmb5ybWA6Pl0F1K
https://youtu.be/4b5d3muPQmA?si=nRODbLrOD13LqFxQ
https://youtu.be/4qJWhvFQb9g?si=NMtoh0nbzbcrK9bM
https://youtu.be/3RAEwPiZkkw?si=lIeY7oa7RHugeUPV
https://youtu.be/ChBxx4aR-bY?si=eygx9FiMajpgIrpT
86
DBSCAN
O DBSCAN é um algoritmo de clusterização baseado em densidade que identifica pontos que 
possuem densidade semelhante. Ele usa dois hiperparâmetros principais: ε (raio de vizinhança) e 
MinPts (número mínimo de pontos para formar uma região densa). O algoritmo atribui os pontos a 
clusters de acordo com core points, que são observações que possuem um número mínimo de outras 
observações dentro do raio de vizinhança ε. Diferentes core points vão se agrupando, bem como 
border points próximos.
A principal característica do DBSCAN é a sua capacidade de isolar e identificar outliers. Por ser 
baseado em densidade, a formação do cluster não fica comprometida quando há a presença de 
valores extremos.
Corepoint
Conceitos
MinPnts
Epilson (ε)
Borders
Corepoints
hiperparâmetro do DBSCAN que define o número mínimo de pontos que precisam estar dentro do 
raio ε para que um ponto seja considerado core point.
ε (épsilon) é o tamanho do raio definido a partir de um core point. Assim, a área desse círculo delimita 
o espaço a ser ocupado por um número mínimo de pontos para se formar um core point. É um 
hiperparâmetro que pode ser definido.
Os borders são pontos que não são core points, mas que estão dentro do raio ε traçado a partir dos 
core points. Ou seja: não delimitam o cluster em si em um primeiro momento, mas por estarem 
suficientemente perto de um core point, são incorporados posteriormente e não são considerados 
outliers.
Core point é um ponto que delimita a área de clusters em um DBSCAN. Para ser um core point, é 
necessário ter um número mínimo de vizinhos (MinPts) dentro de uma área delimitada por uma 
distância (raio ε).
87
 DBSCAN na prática 
Para cada observação do conjunto de dados, 
um raio é traçado com tamanho 
determinado pelo hiperparâmetro ε. 
Considerando que MinPts = 4, se esse raio 
cobrir 4 ou mais observações, o ponto que o 
originou vai ser denominado core point.
Core points que estiverem no raio de outros 
core points vão ser incorporados ao cluster. 
Os borders, observações que não possuem 4 
pontos dentro de seu raio, mas que estão 
dentro do raio de algum core point, também 
são incorporados ao cluster.
Pontos que não forem nem borders nem 
core points são outliers. Esse mesmo 
processo acontece até que todos os pontos 
sejam devidamente inseridos em um cluster 
ou considerados outliers.
Resistente a outliers
O próprio algoritmo identifica o número de clusters ideal 
Não depende de inicialização aleatória
Origina clusters com formatos variados
A principal característica do DBSCAN é ser capaz de identificar e isolar outliers
Ao contrário do K-Means, que só é capaz de originar clusters esféricos, o DBSCAN é capaz de gerar 
clusters com formatos e tamanhos variados. Ele também é capaz de identificar clusters próximos.
Ao contrário do K-Means, que você precisa apontar o número de clusters, o DBSCAN identifica o 
número de clusters ideal dados os hiperparâmetros selecionados.
O início de um cluster vai ser sempre um ponto real do espaço. Logo, não depende de inicialização 
aleatória.
Vantagens
1.
2.
3.
88
Seleção sensível de epilson e MinPts
Tratamento de valores nulos
Sensibilidade a variações de densidades diferentes 
Escalonamento 
Sensibilidade a alta dimensionalidade e a dados não normalizados 
Codificar variáveis categóricas
Todo o algoritmo é baseado nesses dois hiperparâmetros, sendo essencial uma tunagem ideal.
A alta dimensionalidade e dados não normalizados (fora de escala) prejudicam o processo de 
aglomeração dos core points
Como epilson é global (único), pode não capturar adequamente dados com densidades distintas, 
falhando em identificar dados dispersos,
Essencial no DBSCAN
Desvantagens
Preparação dos dados
Aprofundamento
Clique no QR Code!
https://youtu.be/RDZUdRSDOok?si=mCRXbqta_sBXVvZv
https://youtu.be/VO_uzCU_nKw?si=1ReFa29bMObWbpPe
https://youtu.be/-EFB6icKr7E?si=C7uBQC4y7956NA0q
https://youtu.be/jTdik9sD2XM?si=6bnlqguN-jR5qECA
89
Agrupamento Hierárquico 
O agrupamento hierárquico é uma família de algoritmos de clusterização baseada em matrizes de 
dissimilaridade (ou distância). Eles utilizam diferentes métodos de ligação (linkage) para fundir ou 
dividir sucessivamente os clusters, construindo uma estrutura hierárquica que pode ser visualizada 
através de um dendrograma.
O dendrograma permite escolher o número de clusters cortando a árvore em diferentes níveis de 
similaridade, o que torna o agrupamento hierárquico um método que fornece uma visão intuitiva e 
sequencial do processo de formação dos agrupamentos. Existem dois principais tipos de agrupamento 
hierárquico: o aglomerativo e o divisivo.
O método de ligação é o critério utilizado para formar os clusters através das matrizes de distância. 
Diferentes métodos de ligação promovem diferentes formações de clusters, e cada um possui um 
propósito distinto.
Métodos de Ligação (Linkage)
Ligação Mínima (Single Linkage)
Efeito Chaining (Corrente)
Utiliza como critério para formação dos clusters a menor distância entre dois pontos. 
Vantagens: simples explicação, bom para clusters com formatos irregulares.
Desvantagens: sensibilidade a outliers e efeito chaining (como considera somente a menor 
distância, o single linkage pode ser suscetível a criar clusters não compactos e alongados por 
conta de pontos intermediários).
A maioria das pessoas 
provavelmente consideraria 
três clusters distintos, com 
algunsoutliers.
O single linkage sempre 
considera a menor distância, 
permitindo assim a ligação 
desses clusters por uma 
corrente.
Resultado: clusters 
alongados e distorcidos.
Considerando cada ponto 
um cluster individual
Os dois pares mais 
próximos são atribuídos 
ao mesmo cluster
Cálculo de todas as 
distâncias entre os pontos
90
Se temos um cluster já 
formado, contendo 
dois pontos:
A distância média que for 
mínima, vai ser 
considerada para a função 
do cluster
A nova distância calculada vai ser igual a 
média da distância entre o ponto verde 
e vermelho em relação a todos os 
outros pontos.
Cálculo de todas as 
distâncias entre os pontos
Os dois pares mais 
próximos são atribuídos 
ao mesmo cluster
Considerando cada ponto 
um cluster individual
Utiliza como critério para formação dos clusters a média da distância entre todos os pares de pontos 
entre dois clusters.
Utiliza como critério para formação dos clusters a minimização da variância intra-cluster
Utiliza como critério para formação dos clusters a maior distância entre dois pontos. 
Ligação Média (Avarage Linkage)
Ward Linkage
Ligação Máxima (Complete Linkage)
Vantagens: Forma clusters compactos e bem separados
Desvantagens: Sensibilidade de outliers, formação de muitos clusters, não é bom para clusters com 
formatos irregulares.
Vantagens: É menos extremo do que o 
single e o complete, sendo uma opção 
intermedíaria e, normalmente, a mais 
utilizada.
Desvantagens: A interpretação das 
distâncias é prejudicada.
91
Agrupamento Hierárquico Divisivo
Agrupamento Hierárquico Aglomerativo
Funcionamento passo a passo:
No agrupamento hierárquico aglomerativo, cada ponto do conjunto de dados é considerado 
um cluster separado, que se aglomeram em clusters maiores com base no método de ligação 
escolhido.
É o tipo de agrupamento mais comum.
No agrupamento hierárquico divisivo, o conjunto de 
dados inteiro é considerado um único cluster, que se 
divide em clusters alternativos até cada observação se 
tornar um único cluster.
2,5
2
1,5
1
0,5
2,5
2
1,5
1
0,5
D
ist
ân
ci
a
D
ist
ân
ci
a
5 8 2 6 4 1
a b c d e
No eixo X, temos os pontos individuais do conjunto de 
dados. No eixo Y, temos a métrica de dissimilaridade 
fornecida pelo método de ligação escolhido.
Observe a linha vermelha. Se escolhermos o método 
single linkage, os pontos 4 e 1 do dataset são os que 
possuem a menor distância entre si dentre todos os 
pontos, sendo essa distância 0,5. Assim, esses dois 
pontos se juntam e formam um único cluster.
Esse processo acontece sucessivamente, até que só haja um único cluster, formado a partir da distância 
2,5. O mesmo processo, utilizando o single linkage, pode ser exemplificado da seguinte forma:
Cada ponto é inicialmente considerado um cluster.
Calcula-se a distância de cada ponto em relação a todos os outros, e o par que estiver mais próximo (ou 
mais distante, dependendo do método de ligação utilizado) é unido, formando um único cluster.
Em seguida, recalculam-se as distâncias entre todos os pontos e/ou clusters remanescentes, e o par que 
estiver mais próximo (ou mais distante) é novamente agrupado.
Esse processo ocorre de forma sucessiva; a cada iteração, o número de clusters é reduzido em uma 
unidade, e o algoritmo termina quando resta apenas um único cluster.
Tipos de agrupamento hierárquico
Vantagens e desvantagens
1.
2.
3.
4.
Vantagens:
Não exige o número de cluster antes de inciar o algoritmo
92
É possível visualizar diferentes números de clusters ao mesmo tempo
Produz um dendograma, o que facilita a explicabilidade
Sensibilidade a outliers
Escolha sensível do método de ligação: o formato e o número de clusters pode variar muito
Não é bom para um grande volume de dados, por conta do alto custo computacional
Desvantagens
Como determinar o melhor número de clusters com o dendograma
O número ideal de clusters pode ser determinado a partir da análise do dendrograma. Como já 
mencionado, a qualidade de um agrupamento é avaliada pela coesão intra-cluster (proximidade dos 
pontos dentro do mesmo cluster) e pela separação inter-cluster (distância entre clusters diferentes).
Em um dendrograma, o eixo Y representa o nível de dissimilaridade no qual ocorre a fusão entre 
clusters. Como a ideia é manter os grupos o mais separados possível, o número ideal de clusters é 
obtido ao fazer um corte horizontal logo antes do maior "salto" vertical no gráfico, que indica uma 
grande diferença entre os grupos que seriam unidos.
A maior distância inter-
cluster resulta em 4 
clusters; logo, esse é o 
número ótimo de clusters 
para esse conjunto de 
dados.
6 Clusters
4 Clusters
2 Clusters
11 Clusters
Exemplo prático
Cliente
Ana
Pedro
Paulo
50K
30K
10K
70
30
5
Renda Score
Queremos separar os clientes Ana, Pedro e Paulo em grupos com o agrupamento hierárquico, 
com base nas informações de renda e score.
93
Ana Paulo Ana Pedro Ana Pedro
A menor distância é entre Pedro e Paulo (32), logo, agruparemos eles em um único cluster. 
Nesse exemplo, usaremos o método de ligação Single, então vamos usar a menor distância entre 
Ana com Pedro e Paulo para colocarmos na matriz.
50
30
10
5 20 70
70 - 5 = 65
X = 76 X = 44 X = 32
70 - 20 = 50 20 - 5 =15
70 - 30 = 20 30 - 10 = 2050 - 10 = 40
Cliente
Ana
Pedro
Paulo
0
44
76
44
0
32
76
32
0
Ana Pedro Paulo
Com base nos dados, precisamos calcular as matrizes de distância entre Ana, Pedro e Paulo. 
Vamos calcular essa distância com base na Distância Euclidiana.
Pedro-PauloAnaCluster
A distância de Ana para Paulo é 76, enquanto a distância de Ana para Pedro é 44. Logo, na nova 
matriz (que já considera Paulo e Pedro como um único cluster), iremos colocar o valor 44. Se 
fosse o método de ligação complete, o valor seria o 76. Se fosse o Avarage, o valor seria 60 (a 
média entre as distâncias de Ana entre eles)
Ana
Pedro-Paulo
Ana Pedro Paulo
0
44
44
0
Aprofundamento
Clique no QR Code!
https://youtu.be/8QCBl-xdeZI?si=DNlo5r-0vJ9DGiZ5
https://youtu.be/7xHsRkOdVwo?si=RyVfqs6tnApZEc8Z
https://youtu.be/dToBP2UL9FI?si=Mhyx3peoyuLV0dZS
https://youtu.be/xShjj3HoN_s?si=uNZLKHljSiHdjgSE
94
Gaussian Mixture Models (GMM)
É um algoritmo não supervisionado, probabilístico e paramétrico, que assume que os dados são 
gerados a partir de uma mistura de distribuições gaussianas. Cada gaussiana possui seu próprio 
conjunto de parâmetros e pode se sobrepor: cada uma corresponde a um possível cluster, e a cada 
ponto é atribuída uma probabilidade de pertencer a cada um desses clusters, o que caracteriza o 
GMM como um algoritmo de soft clustering.
Vamos considerar, por exemplo, que temos 
um conjunto de dados com a altura de 
pessoas e, dentro desse conjunto, existem 
três grupos não identificados: crianças, 
adultos e idosos.
Em cada um desses grupos, assumimos 
que a distribuição das alturas segue uma 
distribuição normal: o grupo das crianças 
possui uma altura mais frequente em torno 
da média, que vai se dispersando 
conforme nos afastamos dela, assim como 
ocorre com os adultos e os idosos.
O algoritmo, portanto, diferenciará esses 
três grupos nesse caso somente com base 
na variável de altura.
A Gaussiana 1, com média de 130 cm, 
passou a representar o cluster das crianças. 
A Gaussiana 2, de 155 cm, o cluster dos 
idosos. A Gaussiana 3, de 165 cm, o cluster 
dos adultos. O algoritmo fará isso para 
todas as variáveis, criando, assim, uma 
estrutura multidimensional de Gaussianas.
Análoga a uma distribuição normal, com formato de sino e 
com parâmetros sendo a média e o desvio padrão.
É uma abordagem de clustering onde cada observação pode pertencer a múltiplos clusters 
simultaneamente.
Gaussiana
Soft Clustering
O GMM 
Crianças
Intersecção
Idosos
Adultos 
Média altura
130 155 165
p(
x)
É possível observar que existem sobreposições entre diferentes gaussianas (em roxo e laranja). Uma 
criança pode ter a mesma altura que um adulto ou até mesmo que um idoso. Dessa forma, ao tomarmos 
um pontoaleatório, uma probabilidade será associada a ele indicando seu pertencimento a cada um dos 
clusters definidos.
GMM multimodal
95
Parâmetros do GMM
Algoritmo de Expectation-Maximization (EM)
Como no GMM possuímos diversas gaussianas, os parâmetros não são os mesmos de uma única 
distribuição normal (média e variância). Por isso, precisamos estimar os diferentes parâmetros para cada 
uma delas. No caso de uma gaussiana multivariada, temos os seguintes parâmetros a serem encontrados:
Vamos considerar que temos dados gerados por uma mistura de duas distribuições gaussianas e 
queremos determinar a qual gaussiana cada ponto pertence. Entretanto, há um impasse: para estimar os 
parâmetros das gaussianas, precisamos saber de qual fonte cada ponto veio, mas para saber a origem 
dos pontos, precisamos dos parâmetros. O algoritmo Expectation-Maximization (EM) resolve esse 
problema estimando os parâmetros de modo iterativo, semelhante ao gradiente descendente:
Para cada gaussiana, μ é um vetor que contém as médias de todas as variáveis, definindo a 
posição do centro da distribuição no espaço multidimensional.
Para cada gaussiana, Σ é uma matriz que captura a dispersão (variâncias) e a correlação entre as 
variáveis, determinando a forma, a orientação e a "largura" da distribuição.
Cada gaussiana possui um peso π que representa sua proporção na mistura total, ou seja, a 
probabilidade a priori de um ponto pertencer a essa componente. A soma de todos os π deve ser 
igual a 1.
µ (vetor de médias): 
Σ (matriz de covariância):
π (peso da mistura):
π = [0.47 0.26 0.27]
π
π π
π
π
π
1
1 2
2
3
3
Inicialização aleatória dos parâmetros.
E-step (Expectation step): com os parâmetros determinados anteriormente, calcula-se para cada 
ponto a probabilidade de pertencer a cada gaussiana.
M-step (Maximization step): com base nas probabilidades calculadas, os parâmetros são recalculados 
de modo a maximizar a verossimilhança.
O processo se repete até os parâmetros convergirem ou atingir o número máximo de iterações.
1.
2.
3.
4.
96
Vantagens e desvantagens
Vantagens:
Soft clustering: permite que um ponto pertença a múltiplos clusters, com probabilidades 
distintas. Isso permite quantificar incertezas e fornece maior flexibilidade.
Mais robusto a outliers do que métodos baseados em distâncias.
Assume que os dados seguem uma distribuição normal multivariada, não sendo eficiente 
para outros tipos de conjunto de dados.
Alto custo computacional e lento.
Sensível à inicialização dos parâmetros, podendo convergir para mínimos locais.
Desvantagens
97
Glossário
Percentil
Medida que indica a posição relativa de um valor em um conjunto de dados; por exemplo, o primeiro 
quartil corresponde ao percentil 25, onde 25% dos dados estão abaixo desse valor
Valores que dividem um conjunto de dados ordenado em 4 partes iguais para avaliar a dispersão: o 
primeiro quartil (25%), o segundo (50% ou mediana) e o terceiro (75%)
Descreve como os valores de uma variável aleatória se espalham ao longo de seu domínio, modelando 
a probabilidade associada a diferentes intervalos
Representa a posição central de um cluster.
Refere-se ao número de variáveis ou características (features) presentes em um conjunto de dados, alta 
dimensionalidade prejudica o desempenho do modelo e dificultar a identificação de padrões
Representa o dado de saída que o modelo busca prever ou explicar com base nas variáveis de entrada
São os dados de entrada de um modelo de machine learning utilizados para tentar compreender 
padrões e realizar previsões sobre a variável resposta
Também chamada de variável qualitativa, representa características ou classes que não podem ser 
descritas numericamente de forma nativa, podendo ser nominal ou ordinal
É uma distribuição análoga à distribuição normal, caracterizada por um formato de sino e determinada 
pelos parâmetros de média e desvio padrão.
Também chamada de variável quantitativa, é aquela que pode ser medida numericamente e 
representar quantidades, podendo ser classificada como contínua ou discreta
Definida como um subconjunto de uma população. Usada quando não é possível obter informações 
de todos os elementos da população completa
Quartil
Função densidade de probabilidade
Centróide
Dimensionalidade
Target / Variável dependente / Variável resposta / Variável de saída
Feature / Variável independente / Variável de entrada
Variável categórica
Gaussiana
Variável numérica
Amostra
População
Dataframe
População é o conjunto completo de elementos (indivíduos, objetos ou eventos) que possuem uma ou 
mais características em comum e sobre os quais se deseja fazer inferências.
É a estrutura de dados central utilizada pela biblioteca Pandas para organizar e manipular dados 
98
Clusterização
Técnica de aprendizado não supervisionado que consiste em dividir os dados em grupos (clusters) com 
características semelhantes, sem o uso de rótulos prévios
Categoria de modelos supervisionados voltada para prever uma variável categórica, atribuindo os 
dados a classes ou categorias específicas (ex: sim/não, fraude/não fraude)
Classificação
Regressão
Aprendizado não supervisionado
Aprendizado supervisionado
Categoria de modelos supervisionados que buscam prever um valor numérico contínuo (ex: previsão 
de renda ou preço de imóveis)
Trabalha com dados não rotulados, sem uma variável alvo pré-definida. Seu objetivo é identificar 
padrões intrínsecos e estruturas nos dados, como na clusterização.
Tipo de aprendizado que utiliza dados rotulados, ou seja, que possuem uma variável alvo (target) 
conhecida. O objetivo é aprender a relação entre as variáveis de entrada e a saída desejada.
Erro do tipo II
Ocorre quando o teste de hipótese falha em rejeitar uma hipótese nula que é falsa (ou seja, não 
identifica um efeito ou diferença que realmente existe)
Ocorre em um teste de hipótese quando se rejeita a hipótese nula sendo que ela é verdadeira, ou seja, 
conclui-se que existe um efeito ou mudança onde, na realidade, não há
Erro do tipo I
Inferência
O processo estatístico de fazer afirmações ou conclusões sobre uma população total com base nos 
dados observados em uma amostra.
Teste de hipótese
Variância
Distância
Distância de Manhattan
Distância Euclidiana
Procedimento estatístico que tem como objetivo validar suposições sobre uma população a partir de 
uma amostra, determinando se há evidências suficientes para rejeitar uma hipótese inicial
É uma medida de dispersão que representa a média dos quadrados dos desvios em relação à média. 
Quanto maior a variância, mais os dados estão espalhados
Métrica utilizada para quantificar a separação entre dois pontos em um espaço multidimensional de 
características.
Calculada pela soma dos módulos das diferenças entre as coordenadas dos pontos. É menos 
influenciada por valores extremos do que a Distância Euclidiana.
Representa a distância em linha reta entre dois pontos. É calculada pela raiz quadrada da soma das 
diferenças ao quadrado entre suas coordenadas e é sensível a outliers
99
Abordagem de agrupamento que permite que um ponto de dado pertença a múltiplos clusters 
simultaneamente, associando probabilidades a cada um deles
Representa a categoria ou característica que se deseja prever em um problema de classificação
Variável intrínseca ao modelo, estimada automaticamente durante o treinamento a partir dos dados 
(ex: os coeficientes de uma regressão linear)
Soft clustering
Classe
Parâmetro
Etapa de validação
Divisão dos dados usada para verificar a capacidade de generalização do modelo
Hiperparâmetro
Etapa de treino
Kernel
Hiperplano
Vetores de suporte
Feature engineering
Fronteira de decisão
Feature importance
Função de custo
Fase do processo de modelagem onde o algoritmo é exposto a uma parte dos dados para aprender os 
padrões e ajustar seus parâmetros internos
Função matemática utilizada pelo SVM (Kernel Trick) para projetar dados em dimensões superiores, 
permitindo a separação linearna identificação do espalhamento dos dados em relação a uma 
métrica de posição, como a média ou a mediana. As principais medidas de dispersão são o desvio 
padrão e a variância.
Medidas de dispersão
3
Importância aplicada: uma baixa variância significa que os valores estão próximos da média, o que 
pode indicar um baixo poder preditivo da variável (devendo ser avaliada junto com sua relação com 
a variável target). Para reduzir a dimensionalidade e os custos, podemos avaliar a retirada dessa 
variável do conjunto de treinamento, caso seja comprovada sua baixa eficácia.
Diferença variância amostral e populacional
Para calcular a variância populacional (ou seja, de 
todo o conjunto de interesse), dividimos a soma dos 
desvios quadrados pelo número total de elementos. 
Em uma amostra, como sua média geralmente é uma
Variância populacional
Desvio Padrão
É a raiz quadrada da variância. Como o cálculo da 
variância envolve a elevação ao quadrado, a aplicação 
da raiz quadrada devolve a medida à escala original 
dos dados. Também existe a diferença entre desvio 
padrão amostral e populacional.
Amplitude
Diferença entre o menor e o maior valor de um 
conjunto de dados.
estimativa da média populacional, para obter uma estimativa não tendenciosa da variância 
populacional, subtrai-se 1 do número de elementos (graus de liberdade) no denominador.
Aprofundamento
Clique no QR Code!
https://youtu.be/FPZBAp8QSRM?si=Te6PSJYubPcpRwbz
https://youtu.be/ZOvIGIBmHyo?si=oiVWWVfqPk31mAUS
https://youtu.be/ZE-YIz5ah3g?si=HmqervgQJFIVQ4Q_
https://youtu.be/kt-5klXvsws?si=-UFprWvy944Svfp2
https://youtu.be/vvXcM7iWqeI?si=3eUh0i42fQwLbEVc
https://youtu.be/ByWg94-GCNw?si=072qBkFfHNZw03ej
4
Os limites superior e inferior utilizam 
em seu cálculo o IQR (amplitude 
interquartil).
Todos os valores abaixo do limite 
inferior são considerados outliers 
inferiores (valores menores do que a 
maioria dos dados), enquanto todos os 
valores acima do limite superior são 
considerados outliers superiores.
Terceiro Quartil
IQR
Segundo Quartil 
Primeiro Quartil
Outliers
Quartis
São os valores que dividem os dados em 4 partes iguais para avaliar a dispersão.
Primeiro quartil: abaixo dele estão localizados 25% dos dados.
Segundo quartil: é equivalente à mediana. Abaixo dele estão localizados 50% dos dados.
Terceiro quartil: abaixo dele estão localizados 75% dos dados.
IQR (Amplitude Interquartil): diferença entre o terceiro e o primeiro quartil.
Valores atípicos que se distanciam significativamente da maioria dos dados em um conjunto. Um dos 
métodos para identificá-los é o uso do boxplot em conjunto com o conceito de quartis.
Outliers: Boxplot e método do intervalo interquartil
5
Hipótese Nula (H0)
A hipótese que assumimos como verdadeira inicialmente. Ela postula que a suposição que 
queremos testar não tem efeito algum. O objetivo do teste é determinar se há evidências 
suficientes para rejeitá-la.
Hipótese Alternativa (H1):
A hipótese contrária à hipótese nula. Assume a existência de uma mudança ou efeito 
significativo decorrente da suposição.
Testes de hipótese
O teste de hipótese tem como objetivo validar suposições sobre uma população a partir de uma 
amostra. Essa etapa é essencial para diversas situações, como validar se um coeficiente de um modelo 
é significativo para a previsão ou avaliar se a distribuição dos dados entre treino e teste está adequada.
Para realizar um teste de hipótese, precisamos seguir os seguintes passos:
1. Definição das hipóteses
Exemplo simples: queremos testar se o salário médio da população é menor que R$3.000.
Hipótese Nula (H0): o salário é maior ou igual a R$3.000
Hipótese Alternativa (H1): o salário é menor que R$3.000
Erro do tipo I
Quando se rejeita a hipótese nula, sendo ela verdadeira. Assumir que há efeito onde não há.
Exemplo: concluir que o salário é menor que R$3.000 quando, na verdade, ele é maior ou igual.
Erro do tipo II
Quando se aceita a hipótese nula, sendo ela falsa. Assumir que não há efeito onde realmente há.
Exemplo: concluir que o salário é maior ou igual que R$3.000 quando, na verdade, ele é menor.
Agora que já temos as nossas hipóteses definidas, precisamos das amostras para testar cada uma delas. 
Para isso, assumindo que o teste estatístico utilizado é paramétrico, é essencial garantir que a amostra:
2. Coleta dos dados e da amostra
Seja uma amostra aleatória
Seja suficientemente grande
Possua distribuição aproximadamente normal
Possua variância constante
3. Cálculo da estatística de teste e do p-valor
Sob a hipótese nula, assumimos que a média populacional é realmente R$ 3.000. Ao coletar uma 
amostra, podemos obter um valor médio diferente, como R$ 1.500,
6
Será que essa diferença é grande o suficiente para questionar a veracidade de H0, ou foi fruto do 
acaso? Talvez sim e talvez não. Existe a possibilidade de esse valor ter sido escolhido meramente ao 
acaso. Para responder, é preciso testar.
A estatística de teste é uma medida padronizada que compara o valor observado na amostra com o 
valor esperado de acordo com H0, e varia de acordo com a quantidade de amostras e os tipos dos 
dados. Ela é utilizada para calcular o p-valor.
P-valor
que é a probabilidade de obter um resultado tão extremo ou mais extremo que o observado, 
considerando que a hipótese nula é verdadeira. No exemplo, seria a probabilidade de obter um 
valor tão extremo quanto 1.500 ou mais ao coletarmos uma amostra, se a verdadeira média 
populacional fosse 3.000.
Região 
crítica
Região 
crítica
Região 
crítica
Região de
aceitação
Região de
aceitaçãoRegião de
aceitação
Região crítica
É a região que contém os valores da estatística de teste que resultam na rejeição da hipótese nula. 
A probabilidade de um valor estar dentro dessa região (supondo H0 verdadeira) é o nível de 
significância α.
Teste unicaudal à direita Teste unicaudal à esquerdaTeste bicaudal
4. Definição do nível de significância
O nível de significância (α) é a probabilidade máxima tolerada de cometer o erro do tipo I, ou seja, o 
erro de rejeitar a hipótese nula quando ela é verdadeira (concluir que há um efeito onde não há). O erro 
do tipo I é o escolhido pois é o único que pode ser controlado matematicamente, permitindo a partir 
da consideração de H0 como verdadeira, o cálculo da região crítica.
Geralmente definimos o nível de significância como 0,05 (5%). Em nosso exemplo, a interpretação seria: 
aceitamos no máximo 5% de chance de concluir que o salário médio é menor que R$ 3.000 
quando, na realidade, ele é maior ou igual a esse valor,
A decisão final é tomada comparando o p-valor com o nível de significância (α).
5. Comparação do nível de significância (α) com o p-valor
Se o p-valor for menor que α (5%), rejeitamos a hipótese nula (H0) e aceitamos a alternativa 
(H1). Ou seja, há evidências estatísticas suficientes para concluir que o salário médio é menor 
que R$ 3.000
Se o p-valor for maior que α, não temos evidências suficientes para rejeitar H0 (ou seja, não há 
evidências estatísticas suficientes para concluir que o salário médio é menor que R$ 3.000)
Aprofundamento
Clique no QR Code!
https://www.youtube.com/watch?v=qrv5rFhrM4Q&t=316s&pp=ygUcdGVvIG1lIHdoeSB0ZXN0ZSBkZSBoaXBvdGVzZQ%3D%3D
https://youtu.be/2K3hPwQ3Y68?si=HYh_2GBkAjJzFzNy
https://www.youtube.com/watch?v=Z0USdSGlkJI&pp=ygUeY2liZWxlIHJ1c3NvIHRlc3RlIGRlIGhpcG90ZXNl
https://youtu.be/Yjg7turJApc?si=pnYxxKCoVIIRhBLY
https://youtu.be/1hMt-X2VYBk?si=jiYRQzreF8AcwO9N
8
Uma distribuição descreve como os valores de uma variável aleatória se espalham ao longo de seu 
domínio, modelando a probabilidade associada a diferentes intervalos de valores que essa variável 
pode assumir.
Podemos classificar as principais distribuições em dois grupos: contínuas, que podem assumir qualquer 
valor em um intervalo, e discretas, que assumem valores inteiros.
Distribuições 
Tipo de distribuição contínua ou discreta que atribui a 
todos os pontos probabilidades iguais em um intervalo 
determinado.
P(x)
x
0.05
0.04
0.03
x
0.05de problemas que eram complexos no espaço original
a fronteira de decisão de alta dimensão que separa as diferentes classes de dados
São os pontos de dados mais próximos do hiperplano no algoritmo SVM; eles são fundamentais pois 
definem a posição da margem e do próprio hiperplano
Processo de criação, seleção ou transformação de variáveis para melhorar a performance dos modelos 
de machine learning
Espaço geométrico (linha, curva ou superfície) que o modelo cria para separar as diferentes classes em 
um conjunto de dados
Técnica que permite ranquear a contribuição de cada variável para o desempenho e as decisões do 
modelo, auxiliando na seleção das características mais relevantes
utilizada durante o treinamento para mensurar o erro do modelo. O processo de aprendizagem foca 
em minimizar essa função para que as previsões sejam o mais precisas possível
Variável externa ao modelo, definida manualmente antes do início do treinamento para controlar o 
processo de aprendizado (ex: a profundidade máxima de uma árvore)
Uso de dados inéditos para simular o desempenho do modelo em uma situação real
Etapa de teste
100
Momento em que os parâmetros se estabilizam no valor ótimo ou o algoritmo atinge um critério de 
parada definido
Representa a diferença entre o valor real observado e o valor previsto pelo modelo
Proporção de acertos entre todos os exemplos que o modelo classificou como positivos
Taxa de acerto da classe positiva, indicando quantos dos exemplos reais positivos o modelo conseguiu 
capturar
Resíduo
Precision
Recall
Convergência
Parâmetro que controla o tamanho do passo dado em direção ao mínimo da função durante a 
atualização dos coeficientes
Técnica que divide o dataset em várias partes (folds) para garantir uma avaliação menos enviesada
Sequência estruturada de etapas de processamento e modelagem de dados
Vazamento de informações do "futuro" ou do teste para o treino, causando performance irreal
Medida da inclinação da curva de uma função que define o quão longe o modelo está do ponto de 
mínimo
Cálculo da derivada da função de custo em relação a cada coeficiente individual para determinar o 
sistema que representa o erro mínimo
Vetor composto por derivadas parciais que aponta para a direção de maior aumento de uma função
Método iterativo que ajusta os parâmetros na direção oposta ao gradiente para minimizar a função de 
custo
Validação cruzada
Pipeline
Data leakage
Derivada
Derivada parcial
Gradiente
Gradiente descendente
Taxa de aprendizado
Matriz de confusão
Tabela que cruza valores reais e previstos para identificar os tipos de erros e acertos cometidos por um 
classificador
Curva ROC
Gráfico que relaciona a taxa de verdadeiros positivos e a de falsos positivos para diferentes limiares de 
decisão
101
Padronização
Outlier
Normalização
Mínimos quadrados
Folha
Desbalanceamento de classes
Nó
Overfitting
Regularização
Underfitting
Ajuste das variáveis para que possuam média 0 e desvio padrão 1, permitindo que variáveis em escalas 
Um valor atípico que se distancia de forma significativa da maioria dos dados presentes em um 
conjunto
Técnica que escala os dados numéricos para um intervalo fixo entre 0 e 1
Método determinístico utilizado para estimar os coeficientes de uma regressão, buscando minimizar a 
soma dos quadrados dos resíduos
É o nó final de uma árvore de decisão, onde não ocorrem mais divisões e a previsão final é definida
Problema em que uma classe é significativamente mais frequente que outra no dataset, o que pode 
tornar o modelo enviesado em direção à classe majoritária
Representa o critério de divisão de uma árvore de decisão baseado em um ponto de corte de uma 
variável
Situação em que o modelo se ajusta excessivamente aos padrões e ruídos dos dados de treino, 
resultando em alta variância e incapacidade de generalizar para dados novos
Técnica utilizada para evitar o overfitting ao adicionar uma penalidade aos coeficientes na função de 
custo, forçando o modelo a ser mais simples (ex: Lasso e Ridge
Situação em que o modelo é muito simples para capturar as relações e padrões dos dados, resultando 
em alto viés e baixa variância
 Indica o quão bem o modelo identifica padrões no treino; um alto viés resulta em underfitting
Mede a sensibilidade do modelo a variações nos dados de treino; uma alta variância resulta em 
overfitting
Viés
Variância
AUC
Área sob a curva ROC que quantifica o poder discriminatório do modelo (sucesso em separar as 
classes)
102
Perguntas 
Estatística
Preparação dos dados 
Qual é a diferença entre variáveis contínuas e discretas?
Qual é a diferença entre variáveis categóricas ordinais e nominais?
O que são medidas de posição?
Exemplifique uma diferença no uso da média e da mediana.
O que são medidas de dispersão?
Qual é a diferença entre variância e desvio padrão?
O que é uma função densidade de probabilidade?
Quais são os tipos de distribuição?
O que é uma distribuição normal e qual é a sua importância?
Qual é a diferença entre uma distribuição normal e a distribuição t-Student?
Quais são os parâmetros de uma distribuição normal?
O que é uma normal padrão? O que seria uma normal "não padrão"?
Como eu consigo mensurar a normalidade em um conjunto de dados?
Quais modelos pressupõem normalidade em alguma instância?
Qual é a importância de efetuar um teste de hipótese?
Forneça um exemplo de teste de hipótese aplicado a machine learning.
Qual é a diferença do erro do tipo I para o erro do tipo II?
O que é p-valor e nível de significância? Considerando os dois, quando a hipótese nula é aceita ou 
rejeitada?
O que é quartil e percentil?
Para que serve o método IQR e qual é sua importância?
O que é correlação?
Qual é a diferença da correlação de Pearson para a de Spearman?
O que é um histograma?
O que são outliers?
Quais são os métodos para tratar outliers?
Quais são os principais tipos de gráficos que podem ser utilizados para identificar outliers?
Quais são os métodos possíveis para imputar valores missing?
Forneça um caso em que imputar uma variável com a média pode não ser uma boa ideia.
Qual é a diferença entre normalização e padronização?
Explique a consequência de não ter os dados normalizados para o treinamento de um modelo.
O que é codificação de variáveis? Qual é a consequência de não codificá-las?
Diferencie Label Encoder e One Hot Encoder quanto ao seu uso.
Qual é a consequência de ter a variável target desbalanceada em um modelo de classificação?
Quais são as estratégias para lidar com desbalanceamento de classes?
O que é alta dimensionalidade e por que isso é um problema?
O que é feature selection e quais são os principais métodos?
103
Preparação dos dados 
O que são outliers?
Quais são os métodos para tratar outliers?
Quais são os principais tipos de gráficos que podem ser utilizados para identificar outliers?
Quais são os métodos possíveis para imputar valores missing?
Forneça um caso em que imputar uma variável com a média pode não ser uma boa ideia.
Qual é a diferença entre normalização e padronização?
Explique a consequência de não ter os dados normalizados para o treinamento de um modelo.
O que é codificação de variáveis? Qual é a consequência de não codificá-las?
Diferencie Label Encoder e One Hot Encoder quanto ao seu uso.
Qual é a consequência de ter a variável target desbalanceada em um modelo de classificação?
Quais são as estratégias para lidar com desbalanceamento de classes?
O que é alta dimensionalidade e por que isso é um problema?
O que é feature selection e quais são os principais métodos?
O que é CRISP-DM e qual é a sua importância?
Por que é necessário dividir o conjunto de dados entre treino e teste?
O que é uma função de custo?
Explique a diferença entre MAE, MSE, RMSE e MAPE.
O que é aprendizado supervisionado?
Qual é o objetivo do aprendizado supervisionado e como ele se diferencia do aprendizado não 
supervisionado?
Como um modelo de regressão se diferencia de um modelo de classificação?
Qual é a diferença entre dados rotulados e classes?
Qualé a diferença entre parâmetros e hiperparâmetros? Exemplifique.
Qual é a diferença entre modelos paramétricos e não paramétricos? Forneça um exemplo para cada.
O que são viés e variância e como se relacionam com underfitting e overfitting?
Compare overfitting e underfitting. Como é possível identificar cada um?
Quais são as métricas possíveis para avaliar um modelo de classificação e de regressão?
O que precision, recall e F1-score medem? Qual é a situação ideal para cada um?
Se eu aumento o meu threshold, o que acontece com o precision e com o recall? E quando eu diminuo?
O que é a curva ROC e a AUC?
O que significa ter um R² elevado?
Conceitos fundamentasi de machine learning
Quais são os pressupostos de uma regressão linear?
O que é homoscedasticidade e como identificá-la?
Por que podemos dizer que a regressão linear é um modelo paramétrico?
Qual é a preparação dos dados necessária para uma regressão linear?
O que significa multicolinearidade e por que isso é um problema?
Qual é o impacto de ter "betas grandes" em uma regressão linear?
Quais são as principais funções de custo?
Regressão Linear 
104
Quais são os métodos para descobrir os coeficientes de uma regressão?
O que é um gradiente?
Explique, passo a passo, o gradiente descendente e o método dos mínimos quadrados, bem como o 
que diferencia cada um deles.
É possível uma regressão linear sofrer underfitting?
O que acontece com os erros se eu tento ajustar uma regressão a uma senóide?
O que é regularização?
Qual é a diferença entre a regularização L1 e L2 e para qual caso cada uma é utilizada?
Quais são as vantagens e desvantagens de uma regressão linear?
Como é a relação de overfitting e underfitting em uma regressão linear?
O que é uma regressão logística?
Qual é a distribuição da variável target de uma regressão logística?
Qual é a função de custo de uma regressão logística?
O que é o método da máxima verossimilhança e qual é a sua importância?
Qual é a preparação dos dados para treinar uma regressão logística?
Quais são os principais parâmetros e hiperparâmetros que podem afetar o desempenho?
Como é a fronteira de decisão de uma regressão logística?
É possível prever uma variável multiclasse com uma regressão logística?
Explique o Teorema de Bayes.
Por que o nome do modelo é Naive Bayes?
Qual é a principal restrição?
Quais são os tipos de Naive Bayes e em qual caso cada um é indicado?
Considerando que eu tenho um dataset com diversas variáveis de tipos diferentes, eu posso treinar um 
único Naive Bayes ou preciso treinar diferentes modelos?
O Naive Bayes é impactado por outliers?
É necessário normalizar os dados no Naive Bayes?
Quais são as vantagens e as desvantagens do modelo?
Quais são os usos mais comuns?
O que é KNN?
Por que é possível dizer que o KNN é um modelo versátil?
Explique o funcionamento, passo a passo, do KNN de regressão e de classificação. Como eles se 
diferenciam?
Como e por que é possível usar o KNN na etapa de preparação dos dados? Qual é a vantagem dessa 
abordagem?
Como a mudança da métrica de distância impacta no KNN?
Qual é o custo computacional do modelo?
Por que podemos afirmar que o KNN é um lazy learner?
Como é possível definir o melhor K?
Regressão Logística
Naive Bayes
KNN
105
Qual é a consequência de ter um K alto? Justifique.
Qual é a consequência de ter um K baixo? Justifique.
O que é o SVM? Explique o seu funcionamento.
O que é um hiperplano?
O que são vetores de suporte?
De que modo os vetores de suporte direcionam o hiperplano?
É possível treinar um SVM para variáveis multiclasse?
É possível treinar um SVM com dados não linearmente separáveis?
O que é o Kernel Trick? Como é possível definir o melhor tipo de kernel para os dados?
Qual é a consequência de treinar um SVM com o tipo não ideal de dados?
Qual é o custo computacional do SVM?
Forneça as vantagens e desvantagens do modelo e seus usos típicos.
O que é uma árvore de decisão?
Explique a estrutura de uma árvore de decisão.
O que é uma métrica de impureza? Qual é a diferença conceitual em relação a uma função de custo?
Qual é a diferença entre Gini e entropia?
O que é ganho de informação?
Em classificação, como é definido o nó folha?
Em regressão, como é definido o nó folha?
Como os outliers afetam uma árvore de decisão, diferenciando regressão e classificação?
O que é minimizado em uma árvore de classificação?
Como é feita a previsão final em uma árvore de decisão de classificação e regressão?
Qual é a principal vulnerabilidade de uma árvore de decisão?
O que acontece se eu treinar uma árvore sem nenhuma restrição?
Quais são os principais hiperparâmetros para prevenir o overfitting na árvore? Explique cada um.
Quais são os principais hiperparâmetros para conter outliers em uma árvore?
O que é pré-poda e pós-poda? Qual é a importância?
Como uma árvore lida com valores missing no Scikit-learn?
Como é a fronteira de decisão de uma árvore de decisão?
Support Vector Machine (SVM)
Árvore de Decisão 
O que são modelos de ensemble e qual é o seu objetivo principal na ciência de dados?
Quais são os dois tipos ou categorias principais de modelos de ensemble?
Qual é o principal objetivo dos modelos de ensemble em relação ao trade-off entre viés e variância?
Por que os modelos de ensemble são considerados mais resistentes à sensibilidade a outliers?
O que é bagging? Forneça um exemplo.
Como funciona o processo de bootstrapping (amostragem com reposição) na criação dos subconjuntos 
de treino?
Modelos de ensemble
106
Como é definida a previsão final em um modelo de bagging voltado para regressão e classificação?
Quais são as principais vantagens do Random Forest em relação a uma árvore de decisão simples?
Como a explicabilidade do modelo é afetada ao trocar uma árvore de decisão por um Random Forest?
O que acontece se eu adicionar infinitas árvores em um Random Forest?
Qual é a relação de overfitting e underfitting no Random Forest?
O que é boosting?
Como a técnica de boosting se diferencia do bagging?
No funcionamento do AdaBoost, o que acontece com as observações classificadas incorretamente na 
iteração seguinte?
Como o Gradient Boosting inicia seu processo de predição antes de começar a treinar as árvores?
Como os valores previstos são atualizados no Gradient Boosting após a análise dos erros do modelo 
anterior?
Qual é a diferença entre o treinamento leaf-wise e level-wise?
Qual é a diferença do LightGBM para o XGBoost?
Qual é a principal vantagem do LightGBM?
O que é o K-means? Qual é o seu funcionamento?
Compare K-means e KNN.
O que é um centróide?
Qual é a diferença entre K-means, K-medoids e K-means++?
Avalie a sensibilidade a outliers do modelo.
É necessário efetuar a normalização das variáveis?
Quais são os principais hiperparâmetros do K-means?
Como é possível determinar a melhor quantidade de clusters?
Compare o método do cotovelo com o método da silhueta.
Os clusters formados pelo K-means possuem algum tipo de padrão?
Quais são as vantagens e desvantagens do modelo?
O que é o DBSCAN?
O que diferencia o DBSCAN de outros modelos não supervisionados?
Por que podemos dizer que o DBSCAN é um modelo baseado em densidade?
Quais são os principais hiperparâmetros do DBSCAN?
O que acontece se eu aumentar muito o número mínimo de pontos e o epsilon?
O que são core points e border points?
Como o DBSCAN isola outliers?
Quais são as vantagens e desvantagens?
Qual é o data prep necessário para o DBSCAN?
O que é o agrupamento hierárquico?
Quais são os tipos de agrupamento hierárquico?
O que é um método de ligação (linkage) e qual é a sua função?
K-means
DBSCAN
Agrupamento Hierárquico
107
Qual é o critério de formação de clusters do Single Linkage e do Complete Linkage?
O que é o "efeito chaining" (corrente) e em qual tipo de ligação ele acontece?
Qual é a lógica por trás da average linkage e por que ela é a opção mais utilizada?
O que é um dendrograma e qual é a sua vantagem para a análise dos clusters?
É necessário definir o número de clusters para treinar o agrupamento hierárquico?
Como é possível obter o melhor númerode clusters no agrupamento hierárquico?
Por que o agrupamento hierárquico apresenta limitações significativas quando aplicado a grandes 
volumes de dados?
Quais são as vantagens e desvantagens?
O que é o GMM?
O que é uma gaussiana?
O que é o método de Expectation-Maximization e qual é a sua utilidade?
O GMM é um modelo paramétrico ou não paramétrico?
Quais são as vantagens e desvantagens?
Gaussian Mixture Model (GMM)
108
Regressão Linear 
Regressão Logística
Árvore de decisão 
Árvore de regressão 
LightGBM Regressão
LightGBM Classificação
XGBoost Classificação
XGBoost Regressão
Adaboost
SVM Regressão 
SVM Classificação
Naive Bayes 
KNN Regressão 
KNN Classificação
K-means
Agrupamento Hierárquico
DBSCAN
Principais hiperparâmetros Modelo
fit_intercept, normalize, regularização (α) via Ridge/Lasso
C (inverso de regularização), penalty (l1 / l2 / elasticnet), solver
learning_rate, n_estimators, max_depth, scale_pos_weight
var_smoothing (Gaussiano), alpha (Multinomial), binarize (Bernoulli)
max_depth, min_samples_split, min_samples_leaf, criterion (gini/entropy)
learning_rate, n_estimators, max_depth, subsample
n_neighbors, metric, weights (uniform/distance), algorithm, p
max_depth, min_samples_split, min_samples_leaf, criterion (mse/mae)
 n_estimators, learning_rate, base_estimator, algorithm
n_neighbors, metric, weights, algorithm, p
learning_rate, n_estimators, num_leaves, min_child_samples
C, kernel (rbf/linear/poly), epsilon, gamma, degree
n_clusters, init (k-means++/random), n_init, max_iter, tol
learning_rate, n_estimators, num_leaves, class_weight
C, kernel (rbf/linear/poly), gamma, degree, class_weight
n_clusters, linkage, affinity, distance_threshold
eps, min_samples, metric, algorithm
Principais Hiperparâmetros
1090.04
0.03
P(x)
Testes de normalidade: Shapiro Wilk, Anderson Darling, Kolmogorov Smirnov (KS), Ryan Joiner 
Tipo de distribuição contínua, é a distribuição mais 
importante, uma vez que muitos fenômenos da natureza 
possuem comportamento aproximadamente normal.
Sua importância também vem do Teorema do Limite 
Central, que afirma que, conforme aumentamos o 
tamanho das amostras retiradas de uma população, a 
distribuição das médias amostrais tende a uma 
distribuição normal, independentemente da 
distribuição da população original. 
Esse teorema nos permite utilizar técnicas de inferência 
mesmo quando a população não segue uma distribuição 
normal, desde que a amostra seja suficientemente 
grande.
Ela é caracterizada por um formato de sino, 
Inferência Estatística: processo de fazer afirmações sobre uma população a partir de uma amostra
determinado pela média e pelo desvio padrão, com uma maior concentração dos dados em torno 
de sua média, que diminui de forma gradual conforme se afasta.
Distribuição Normal
Distribuição Uniforme
9
Simétrica Assimétrica positiva Assimétrica negativa 
A assimetria nas frequências interfere de forma muito mais intensa na média, que 
se desloca facilmente. Já a mediana, nesses casos, representa mais fielmente a 
centralidade dos dados mesmo em situações de assimetria.
Média Moda Mediana ModaModa
MedianaMediana
Média Média 
Exemplo para a média
Intervalo de Confiança
É uma faixa de valores que, a um determinado nível de 
confiança, dizemos que representa bem a população. É 
a ideia de construir um intervalo em torno da 
estimativa de um ponto, de modo que esse intervalo 
tenha uma confiança associada para conter o 
verdadeiro valor do parâmetro.
É calculado a partir de uma estimativa pontual (como a média amostral) ± uma margem de erro, que 
define a amplitude do intervalo.
Distribuição de t-student
Quando não sabemos o desvio padrão da população e 
usamos o desvio padrão amostral, utilizamos a 
distribuição t de Student para calcular o intervalo de 
confiança.
A distribuição t é simétrica em torno de 0, possui caudas mais pesadas do que a distribuição normal 
(apresenta mais massa de probabilidade nas extremidades) e se aproxima da distribuição Normal 
Padrão conforme o tamanho da amostra aumenta.
Uma distribuição normal padrão possui média, mediana e moda contendo o mesmo valor. Entretanto, 
também existem distribuições assimétricas: elas ainda possuem comportamento normal, porém, sua 
distribuição dos dados não permite que média, mediana e moda sejam iguais.
Distribuição normal assimétrica 
10
É uma distribuição contínua que modela o tempo entre 
eventos que ocorrem de forma contínua e 
independente, a uma taxa média constante.
Exemplo: tempo entre ligações em um call center.
P(x)
x
É uma distribuição discreta que modela experimentos 
binários, ou seja, a probabilidade de uma variável 
aleatória assumir somente dois valores distintos, 
normalmente representados por 1 (sucesso) ou 0 
(fracasso).
É um caso especial da distribuição Binomial, para um 
único experimento (*n*=1).
Importância aplicada: a Regressão Logística e o Bernoulli Naive Bayes assumem que a variável 
resposta segue uma distribuição de Bernoulli.
0 1
É uma distribuição discreta que modela o número de tentativas necessárias para se obter o primeiro 
sucesso.
Exemplo: número de meses até que um cliente tenha o primeiro atraso.
É uma distribuição discreta que modela a contagem do número de eventos que ocorrem em um 
intervalo de tempo ou espaço fixo. Ela supõe que os eventos ocorrem de forma independente, a uma 
taxa média constante, e que dois eventos não podem acontecer exatamente no mesmo instante.
Exemplo: número de e-mails por hora. 
É uma distribuição discreta que modela o número de sucessos em uma sequência de *n* tentativas 
independentes. Cada tentativa possui somente dois resultados possíveis (sucesso ou fracasso), com 
probabilidade de sucesso constante.
Distribuição Exponencial
Distribuição de Bernoulli
Distribuição Geométrica
Distribuição Poisson
Distribuição Binomial
11
Aprofundamento
A lei dos grandes números é um princípio da estatística que diz que conforme você aumenta 
progressivamente o número de amostras, mais próxima a média amostral fica da média 
populacional, suavizando a aleatoridade ao longo do tempo.
Vamos usar como exemplo o lançamento de uma moeda: no começo, podemos ter uma maior 
concentração de caras do que de coroas, porém, quando aumentamos o número de lançamentos 
conseguimos notar que os resultados se equilibram: a proporção de caras converge para uma 
probabilidade de 50%.
A Lei dos Grandes Números também converge com o Teorema do Limite Central, visto anteriormente. 
Conforme aumentamos o número de amostras, a média amostral, além de se aproximar da média 
populacional, também começa a assumir um comportamento 
Média
Número de amostras
Média amostral
Média populacional
Lei dos Grandes Números
Métricas de correlação
A correlação é um método estatístico que mede o grau de associação entre duas variáveis, ou seja, 
como elas variam juntas.
É uma métrica muito importante para entender como as variáveis de um dataset se comportam em 
conjunto e em relação à variável resposta.
Existem várias maneiras de calcular a correlação, as principais são:
Clique no QR Code!
https://www.youtube.com/watch?v=uial-2girHQ&pp=ygUVZGlzdHJpYnV0aW9ucyBweXRob24g0gcJCZEKAYcqIYzv
https://www.youtube.com/watch?v=xtTX69JZ92w&pp=ygUVZGlzdHJpYnV0aW9ucyBweXRob24g
https://www.youtube.com/watch?v=ZAIBVL4koGQ&pp=ygUXdGlwb3MgZGUgZGlzdHJpYnVpY29lcyDSBwkJkQoBhyohjO8%3D
https://www.youtube.com/watch?v=xI9ZHGOSaCg&pp=ugMGCgJwdBABugUEEgJwdMoFFGRpc3RyaWJ1aWNhbyBub3JtYWwg2AcB
12
Calcula o grau de correlação linear entre duas 
variáveis quantitativas e varia de -1 a 1.
Quanto mais próximo de 0, mais podemos afirmar 
que as variáveis não possuem relação linear. Já
quando o valor se aproxima de -1, podemos dizer que as variáveis apresentam correlação linear 
inversa, ou seja, são inversamente proporcionais: quando uma aumenta, a outra diminui.
Para utilizar a correlação de Pearson da forma correta, é necessário verificar se as variáveis possuem 
comportamento linear e seguem uma distribuição aproximadamente normal. Para isso, utilize gráficos 
de dispersão (scatterplots) e histogramas.
Correlação de Spearman
Calcula o grau de correlação, não necessariamente 
linear, entre duas variáveis. Ao contrário da 
correlação de Pearson, que é paramétrica, a 
correlação de Spearman usa rankings para efetuar 
os cálculos de correlação.
Ela também varia de -1 a 1, como Pearson.
Importância aplicada: a correlação é muito importante em diversos contextos de machine 
learning. Por exemplo, o Naive Bayes assume que as variáveis são independentes entre si, e 
por isso a matriz de correlação pode dar indícios para verificar essa suposição (por mais que 
não garanta independência). Já a regressão linear tem como um de seus pressupostos a 
ausência de multicolinearidade perfeita, ou seja, a correlação entre as features também deve 
ser baixa ou moderada.
Correlação de Pearson
13
O mapa de calor é uma forma 
simples e visual de observar as 
correlações entre as variáveis. As 
cores mais intensas representam o 
par de variáveis que possui um 
índice de correlação mais forte. 
Variáveis iguais estão na diagonal e 
possuem correlação igual a 1.
Para mais detalhes, consulte a 
documentação do Matplotlib/
Seaborn.
Métricas de distância
A Distância Euclidiana é a distância em linha reta entre dois pontos, representando a menor distância 
possível em um espaço.
Ela é calculada pela raiz quadrada da soma das diferenças ao quadrado entre as coordenadas dos 
pontos.
Uma de suas características é a sensibilidade a outliers. Devido ao termo quadrático, diferenças 
extremas têm um impacto muito maior do que diferenças menores.
A Distância de Manhattan é a distância entre dois pontos considerando apenas direções horizontais e 
verticais, ou seja, utiliza o módulo das diferençasentre as coordenadas.
Ela recebe esse nome por causa do bairro de Manhattan, que possui formato de grade. Quando você 
se desloca de um ponto para outro em uma rua, nem sempre é possível atravessar em linha reta, como 
na Distância Euclidiana. Em vez disso, o deslocamento ocorre apenas verticalmente ou 
horizontalmente através das calçadas.
Também é possível fazer uma analogia com o triângulo retângulo do teorema de Pitágoras: enquanto 
a Distância Euclidiana representa a hipotenusa, a Distância de Manhattan é a soma dos módulos dos 
catetos.
A principal vantagem de se utilizar a Distância de Manhattan é sua menor sensibilidade a outliers, já 
que utiliza valores absolutos em vez de elevar as diferenças ao quadrado, como ocorre na Distância 
Euclidiana.
Distância Euclidiana
Distância de Manhattan
14
Distância Euclidiana Distância de Manhattan
Vamos calcular a Distância Euclidiana e a de Manhattan considerando 3 pontos, com X representando 
idade e Y representando renda:
Por mais que o resultado da Distância Euclidiana sempre 
seja menor em relação à de Manhattan, é visível como na 
Distância Euclidiana o valor quadrático da renda (19600) 
em laranja ofusca o valor quadrático da variável de idade 
(4, em azul), sendo 4.900x maior.
Já na Distância de Manhattan, essa diferença é "somente" 
70x maior.
Conclusão: as variáveis acabam tendo pesos 
desproporcionalmente diferentes na Distância Euclidiana, 
em casos de outlier.
Distância entre A e C (sendo C um outlier)
OUTLIER
(30,10K)
(35,12K)
Idade
Renda
(35,150K)
C
A
B
Exemplo 1:
Vamos considerar que estamos trabalhando com o KNN, um modelo supervisionado que classifica 
um ponto a partir dos seus vizinhos mais próximos. Temos um ponto X, e outros dois com 
classificação A e B. A classificação atribuída a X vai ser aquela do ponto que estiver mais próximo.
Exemplo 2:
15
Com a Distância Euclidiana, o ponto X seria atribuído a mesma 
classe de B, por possuir a menor distância.
Já com a Distância de Manhattan, a menor distância acaba sendo de X até A. Logo, mesmo com os 
exatos mesmos dados, a classificação mudou, pois os pesos atribuídos às variáveis também mudaram.
Classificação com a Distância Euclidiana:
Classificação com a Distância de Manhattan:
OUTLIER
(30,10K)
Idade
Renda
(40,12K)
(32,150K)
X
A
B
Importância aplicada: algoritmos de machine learning como o KNN e o DBSCAN possuem um 
hiperparâmetro chamado metric. Podemos selecionar 'minkowski' como opção e definir um p 
qualquer.
P = 2
P = 1
Manhattan
Euclidiana
Distância de minkowski
Por mais que a Distância de Manhattan e a euclidiana sejam as principais que podem ser obtidas a 
partir da de Minkowski, podemos trocar p por qualquer outro valor e criar uma métrica alternativa.
A distância de Minkowski é uma métrica que generaliza a Distância Euclidiana e a Distância de 
Manhattan, permitindo também calcular distâncias com diferentes expoentes.
Comparando as duas fórmulas apresentadas anteriormente, é possível observar que elas são 
semelhantes, e isso não é por acaso.
 As duas distâncias podem ser obtidas a partir da fórmula geral da distância de Minkowski, apenas 
trocando o parâmetro p
Distância de Minkowski
16
A distância de Mahalanobis leva em consideração o índice de correlação entre as variáveis, e não a 
distância padrão entre os pontos. Desse modo, variáveis que possuem alto índice de correlação entre 
si são consideradas mais próximas, independentemente de suas escalas ou distâncias numéricas.
Um exemplo típico é a relação entre altura (cm) e peso (kg). Independentemente do valor que essas 
variáveis assumem, elas estão correlacionadas e, logo, próximas.
Aprofundamento
Distância de Mahalanobis
Clique no QR Code!
https://youtu.be/Ffbw5G9CGn4?si=80MHOyDOk8bCGM8f
https://youtu.be/gzmus8zwWno?si=IiSMVFLDqJqANo6m
https://youtu.be/eutzTEGgLpE?si=m0kpNViLzwFG_uxh
https://youtu.be/OHXM7qiI1ww?si=czsZVMpmi85UC9Dt
https://youtu.be/xXjmaTM_kNs?si=d6Qw6AOfIn0dydAw
https://youtu.be/bkARboD64FQ?si=5XzZhtGRsUOgPC0W
https://youtu.be/OdqwQI0lHOg?si=A2rbY1AYly-bzkvg
17
Análise e preparação dos dados
A etapa de preparação dos dados é essencial em qualquer projeto que envolva machine learning.
Dados com ruídos, outliers, valores faltantes ou com inconsistências são um cenário comum no dia a 
dia de quem trabalha com dados e afetam diretamente o poder preditivo de qualquer modelo.
Além das técnicas de tratamento de dados, aprenderemos também algumas ferramentas básicas de 
análise e visualização em Python, utilizando as bibliotecas Pandas, Seaborn e Matplotlib.
O Pandas é a principal biblioteca disponível para manipulação de dados em Python.
Ela permite manipular tabelas (ou DataFrames), aplicar métricas estatísticas e preparar os dados da 
melhor maneira para realizar análises mais aprofundadas.
Outras bibliotecas, como Matplotlib, Seaborn e Scikit-learn, utilizam os DataFrames do Pandas 
como referência para diversas operações, como para separar um dataset entre treino e teste, ou 
para definir uma variável como eixo X ou Y em gráficos customizados.
O Matplotlib é a principal e mais completa biblioteca para visualização de dados em Python.
Ela serve como base para a criação de gráficos que podem ser personalizados conforme as 
necessidades da análise.
Outras bibliotecas de visualização utilizam o Matplotlib como suporte para o seu funcionamento.
O Seaborn é uma biblioteca que facilita a criação de gráficos e tem como base o Matplotlib.
Neste material, utilizaremos o Seaborn para gerar os gráficos, mas eles também podem ser 
facilmente criados apenas com o Matplotlib.
O Scikit-learn é uma biblioteca voltada para a criação de modelos de machine learning.
Nesta seção, utilizaremos a ferramenta apenas para normalizar e categorizar variáveis.
A construção de modelos será abordada na próxima seção.
Principais bibliotecas em Python
Pandas
Matplotlib
Seaborn
Scikit-learn
18
Preparação dos dados com pandas
Descarte de colunas irrelevantes
Remoção de valores duplicados
Tratamento de valores nulos
A preparação dos dados é uma etapa essencial, pois garante qualidade para análises e modelos 
preditivos. Garantir essa qualidade antes de prosseguir com qualquer trabalho é fundamental. A 
análise descritiva tem como objetivo explicar como seus dados estão organizados e distribuídos. 
Através da análise descritiva, conseguimos conhecer mais o nosso conjunto de dados e identificar 
potenciais problemas a serem corrigidos.
É importante, principalmente:
É comum haver dezenas de colunas em um único dataset, e raramente vamos utilizar todas elas para 
efetuar as análises e predições. Por isso, é importante descartar variáveis das quais você já tem 
consciência, desde o início, de que não contribuirão.
Exemplo: altura do cliente em um modelo de previsão de inadimplência.
Em uma base, também pode haver linhas totalmente 
duplicadas. A função drop_duplicates do Pandas 
mantém somente um registro, descartando eventuais 
duplicatas.
Primeiro, precisamos identificar quantos valores nulos existem no conjunto de dados. Após isso, 
precisamos analisar quais variáveis possuem os nulos e, a partir disso, definir o método de 
imputação desses valores ausentes.
Descartar colunas que não tragam informações relevantes.
Descartar valores duplicados.
Identificar e remover outliers decorrentes de erros (ex.: criança com 200 kg).
Mensurar a quantidade de valores ausentes em cada variável.
Padronizar as variáveis (formato de data, uso de maiúsculas em textos etc.).
19
Podemos excluir todas as linhas que possuírem valores nulos, porém não é uma boa opção caso 
haja muitos registros.
Podemos imputar os registros nulos com a média, moda ou mediana da própria coluna, embora 
exista a possibilidade de introdução de viés. Para definir qual medida utilizar, é necessário 
analisar a natureza da variável.
Média: Para variáveis numéricas NÃO sensíveis a outliers
Mediana: Para variáveis numéricas robustas a outliers
Moda: Para variáveis categóricas
Exclusão dos registrosImputação com média, moda ou mediana.
Imputação com KNN
O KNN é um modelo supervisionado utilizado tanto para regressão quanto para classificação, e é 
frequentemente utilizado para tentar prever o valor de uma variável missing. Por ser um modelo, 
ele leva em consideração não só os dados de uma única coluna para fazer a imputação (como 
ocorre com o método anterior), mas sim utiliza como as outras features se comportam para tentar 
prever o valor ausente. 
O modelo é treinado utilizando os dados que não possuem nulo na variável resposta.
Por ser sensível a escala dos dados, para utilizar a imputação é necessário que os dados sejam 
normalizados previamente.
20
Tratamento de outliers 
Existem diversos métodos para identificar e tratar outliers. Na parte de estatística, já foi mencionado o 
método interquartil, porém existem outros métodos gráficos e quantitativos importantes, como:
Também conseguimos isolar outliers com modelos não supervisionados como DBSCAN ou 
supervisionados como uma árvore de decisão.
O Z-score mede quantos desvios-padrão um ponto está distante da média, sendo que pontos com 
valores geralmente abaixo de -3 ou acima de +3 são considerados outliers.
Também chamado de gráfico de dispersão.
Captura a distribuição de frequência de uma 
variável
Detecção a partir do z-score
Métodos gráficos 
Scatterplot
Histograma
21
Padronização e normalização 
dados numéricos podem, naturalmente, possuir escalas diferentes. Em um conjunto de dados, 
podemos ter a informação do preço de um imóvel, que pode ir até R$ 5.000.000, e a sua metragem, 
que pode ser 50 m². Essa diferença pode resultar em um treinamento frágil do modelo, onde variáveis 
com maior magnitude podem se sobressair a variáveis com menor magnitude, fazendo com que o 
modelo capture relações inexistentes e prejudique a nossa previsão.
Em modelos baseados em distância, como o KNN ou o agrupamento hierárquico, esse problema se 
agrava ainda mais.
Para contornar esse problema, podemos efetuar uma padronização ou normalização. Esses dois 
processos são técnicas matemáticas para deixar os valores em uma mesma escala ou intervalo.
Também é importante destacar que não devemos padronizar a variável target, somente as features.
Subtração do valor em questão pelo menor valor da coluna, 
dividido pela amplitude (maior valor menos o menor valor).
Coloca todos os pontos do conjunto em um intervalo fixo, 
entre 0 e 1.
Subtração do valor pela média e divisão pelo desvio padrão.
Todas as observações vão conter média 0 e desvio padrão 1.
Normalização (Min-Max Scaler)
Padronização (Z-score ou Standard Scaler)
22
Desbalanceamento de classes
Um problema frequente na hora de treinar um modelo é o desbalanceamento de classes.
Vamos pensar em um problema de fraude: a grande maioria dos clientes não é fraudadora, porém, 
existe uma pequena parcela de clientes fraudadores (ex: 98% e 2%, respectivamente). Esse 
desbalanceamento pode acarretar em um enviesamento do modelo em favor da classe 
majoritária, ignorando os padrões da classe minoritária. Além disso, mesmo que esse modelo se 
torne enviesado, ele possuirá métricas de desempenho muito boas - já que ele vai identificar os 
padrões dos 98% dos dados e tentar prever utilizando um conjunto que, provavelmente, também 
possui muito mais não fraudadores do que fraudadores.
Para contornar esse problema, temos três estratégias mais frequentes de reamostragem:
Consiste em retirar exemplos da classe 
majoritária, com o objetivo de se aproximar 
da quantidade da classe minoritária.
Desvantagens: você pode acabar retirando 
dados relevantes para a previsão do 
modelo, diminuindo o poder preditivo caso 
não seja feito da maneira adequada.
Um uma alternativa eficaz para resolver esse problema é utilizar o hiperparâmetro class_weight = 
'balanced', quando a variável target é a que está desbalanceada.
Automaticamente, o algoritmo pode atribuir um peso maior à classe minoritária, ajustando a 
função de custo de modo a dar mais importância a esses exemplares durante o treinamento.
Consiste na criação de exemplos artificiais 
da classe minoritária. Uma das técnicas 
conhecidas é SMOTE.
Desvantagens: a criação de exemplos 
artificiais não tem tanto valor quanto dados 
reais, e pode acabar criando vieses que não 
existem realmente.
Undersampling
Class Weight
Oversampling
Dados originais Dados originaisNovo conjunto Novo conjunto
23
Codificação de variáveis categóricas 
Dados categóricos são dados que representam categorias, classes e características. Assim, ao 
contrário das variáveis numéricas, não são, em um primeiro momento, representadas por números.
Entretanto, um modelo não consegue utilizar variáveis categóricas de forma nativa. Ele não consegue 
interpretar diretamente categorias como ensino fundamental, médio e superior, não consegue 
estabelecer, por exemplo, uma relação ordinal entre essas classes. Um modelo só consegue 
reconhecer o padrão entre números.
Por isso, é importante sempre codificarmos as variáveis, atribuindo números que indicam a presença 
ou não de cada classe.
No One Hot Encoder, cada categoria vira uma coluna distinta, sendo que a presença de 
determinada classe vai assumir o valor 1, e a ausência o valor 0.
É o método indicado para variáveis categóricas nominais, ou seja, que não possuem ordenação 
natural entre si, como nomes, sexo etc.
One Hot Encoding 
Dados originais dados codificados
Nomes Funcionários Paulo Thiago Giovanna Ellen Michelly
Paulo 1
0
0
0
0 0
0
0 0
0 0
0
0
0 0
0 0
0
00
0
1
1
1
1
Giovanna
Ellen
Thiago
Michelly
24
Label encoding
O Label Encoding é um método de codificação onde cada categoria é atribuída a um número 
distinto. Assim, não temos múltiplas colunas como no One Hot Encoder, somente uma única coluna 
numérica.
É o método indicado para variáveis categóricas ordinais, ou seja, que possuem ordenação natural. 
Utilizar Label Encoder no lugar de OneHotEncoder pode auxiliar o modelo na identificação de 
padrões.
Escolaridade Escolaridade Codificado
Ensino Fundamental
Ensino Fundamental
1
1
Ensino Superior 3
Ensino Médio 2
Redução de dimensionalidade com PCA 
A alta dimensionalidade pode ser um problema que afeta o desempenho de um modelo de machine 
learning, uma vez que, situações de alta dimensionalidade:
Reduzem a densidade dos dados, tornando mais difícil para o modelo reconhecer padrões. 
Demandam maior poder computacional 
Podem tendenciar o modelo a overfitting 
Muitas dimensões prejudicam a visualização e explicabilidade dos modelos
Com isso, é importante utilizar técnicas de redução de dimensionalidade quando necessárias. Isso 
pode acontecer reduzindo o número de features, com métodos de feature selection, ou criando 
novas features, com o PCA.
25
A análise dos componentes principais é uma técnica estatística de redução de dimensionalidade, que 
funciona através da combinação linear de variáveis correlacionadas entre si em variáveis não 
correlacionadas, capturando a maior parte da variância dos dados com perda controlada de 
informação. Os componentes principais são justamente essas combinações (lineares) entre as variáveis 
originais que capturam a variância dos dados. 
Analisa a correlação individual de cada feature com a variável target, selecionando as K features com 
maior associação estatística (usando testes como qui-quadrado ou F-value).
Análise dos componentes principais (PCA)
SelectKBest
Métodos de seleção de features (Feature Selection)
Remoção de features com baixa variância ou zero. Valores constantes ou muito próximos da média 
podem ser indicativos de baixo poder preditivo da variável target. É preciso, porém, analisar a 
distribuição e o tipo das variáveis de interesse para tornar esse método eficiente.
Remoção por baixa variância
Modelos como Regressão Linear com penalidade L1 (Lasso) ou árvores de decisão realizam seleção de 
variáveis de modo embutido. A regularização L1 força coeficientes irrelevantes a zero, enquanto 
árvores fornecem métodoscomo feature_importances_, que ranqueiam a contribuição de cada 
variável.
Regularização e Feature Importances
26
Algoritmo que usa Random Forest para determinar todas as features importantes. Cria shadow 
features para cada variável (com valores embaralhados e aleatórios) e depois treina o modelo com 
Random Forest. Após isso, verifica o feature importance: se a feature original tiver mais importância do 
que a sua sombra (mais importância do que um ruído aleatório), ela é considerada relevante; caso 
contrário, é descartada.
Treina o modelo normalmente e obtém a métrica de avaliação. Depois, no dataset de teste, para cada 
coluna, embaralha os valores para romper a ligação com a variável target e avalia novamente, 
medindo a queda no desempenho do modelo. Se o desempenho diminuir, a variável é considerada 
relevante; caso contrário, irrelevante. Esse método avalia a importância de cada feature dessa forma e 
é computacionalmente custoso, pois requer reavaliações do modelo para cada variável.
Boruta
Permutation Importance
27
Aprofundamento
Preparação geral 
Classes desbalanceadas Codificação de variáveis PCA Seleção de features
Valores nulos Outliers
Clique no QR Code!
https://youtu.be/iJ5c-XoHPFo?si=eUs8yjVGPoTeN5E2
https://youtu.be/RWaMw02_MQQ?si=yZG8bhg0-v72kv7L
https://youtu.be/GP-2634exqA?si=EKxt2useNBYehMqK
https://youtu.be/aLphsae3PSE?si=UkNoM74OuyD0Q9V_
https://youtu.be/bDhvCp3_lYw?si=GH2X1dTcS5WnKbmD
https://youtu.be/KdmPHEnPJPs?si=CJ-9x1rf6XZM-k9i
https://youtu.be/I_lx9RgvLjY?si=tWO03VgTW1Z2Q--X
https://youtu.be/Cw2IvmWRcXs?si=UAZPhVxyMne_8Ju1
https://youtu.be/4FBPtgLbehY?si=h8FzhxI9e8e334tN
https://youtu.be/flhjn6e6wnY?si=9uitxQplCYoOT2WB
https://youtu.be/JvFrJacbt6U?si=QDmdL_WPWTodBctK
https://youtu.be/589nCGeWG1w?si=jsHZHjhreeDKKAtm
https://youtu.be/FgakZw6K1QQ?si=ATur3D2rL2dmnP2X
https://youtu.be/_5t8ZtRybT8?si=Y1yeVtKKjoz52fVz
28
Conceitos para Machine Learning
A metodologia CRISP-DM é uma abordagem de organização para projetos de ciência de dados, que 
descreve fluxos e melhores práticas para projetos no contexto corporativo, dando a ênfase necessária 
não apenas às etapas técnicas, como a modelagem, mas também ao contexto de negócio 
diretamente envolvido.
Ela é dividida em 6 etapas: entendimento do negócio, entendimento dos dados, preparação dos 
dados, desenvolvimento do estudo/modelagem, avaliação e implementação. Parte essencial dessa 
abordagem é o fato de que esse fluxo não é linear: em diversos momentos vamos voltar a etapas 
anteriores para validar informações e refazer.
Qual é o problema que o modelo quer resolver?
Existe uma meta definida?
Existem variáveis que o time de negócio já sabe que são relevantes?
Qual vai ser o custo?
Quais são as bases utilizadas?
Qual o conceito e as escalas de cada variável?
Qual é a periodicidade desses dados?
A volumetria dos dados bate com outros relatórios?
Voltar à etapa de entendimento do negócio em casos de dúvidas.
Quais serão os modelos testados?
Quais são as vantagens e desvantagens de cada um?
Voltar à etapa de preparação dos dados se necessário (diferente 
para cada modelo que será testado).
Avaliação e otimização de 
hiperparâmetros.
Se satisfizer os requisitos, ir 
para deploy. Se não, voltar para 
o entendimento.
Reestruturação das bases origens.
Limpeza dos dados: outliers, desbalanceamento, valores ausentes, 
normalização, filtros de negócio etc.
Metodologia CRISP-DM
Entendimento 
do negócio
Entendimento 
dos dados
Preparação dos 
dados
Modelagem
Avaliação Deploy
29
Separação treino e teste 
O objetivo de um modelo de regressão é estimar um valor contínuo. O processo anterior ao 
treinamento do modelo em si é a separação entre treino e teste.
De forma geral, vamos tentar prever um valor com base em dados anteriores. O modelo aprende 
padrões nos dados e os utiliza para gerar previsões a partir de novos valores de entrada. É necessário, 
portanto, estabelecer uma etapa em que você vai efetivamente treinar esse modelo e outra etapa em 
que se avalia a eficácia do treinamento, utilizando dados que não foram vistos anteriormente (com o 
objetivo de simular quão bem o modelo se comportaria em uma situação real, na qual não sabemos a 
resposta).
Para isso, de forma simples, dividimos o conjunto de dados aleatoriamente em treino e teste, sendo 
a maior parte dos dados destinada ao treino. Também é comum dividir, juntamente com treino e teste, 
as variáveis explicativas (X) e a variável resposta (Y).
A divisão entre treino e teste apresentada a seguir é feita com o Scikit-learn. Porém, é 
importante destacar que, mesmo sendo realizada de forma aleatória, existe a possibilidade de 
obtermos uma amostra enviesada, que pode subestimar ou superestimar o desempenho em 
uma das etapas. Para prevenir que isso aconteça, é necessário assegurar a qualidade da 
amostra por meio da adoção dos tipos corretos de amostragem para cada problema, 
balanceamento de classes, aplicação de testes de hipótese e da comparação de medidas 
estatísticas, com o objetivo de garantir a representatividade da amostra em relação ao 
conjunto total de dados e direcionar o treinamento.
Todos os dados
Treinamento
Y treino X treino
Teste
Y teste X teste
30
A validação consiste em dividir o seu dataset original em subconjuntos, com o objetivo de separar uma 
etapa de treino (onde o modelo vai de fato aprender os padrões dos dados) e a etapa de teste, em 
que verificamos o desempenho do modelo em novos dados. A validação busca garantir a capacidade 
de generalização do algoritmo.
Técnicas de validação
Todos os dados
Todos os dados
Treinamento Teste
Consiste em dividir o dataset entre treino e teste uma única vez.
Exemplo: 80% dos dados para treino, e 20% para teste.
O K-Fold soluciona o problema do Holdout de avaliar o modelo com apenas uma divisão de 
treino e teste. Exemplo:
Considerando K = 4, o dataset é dividido em quatro partes (folds). Em cada iteração:
3 folds (K-1) são usados para treinamento do modelo
1 fold é usado para validar o modelo
Esse processo se repete 4 vezes, alternando o fold de validação, de modo que todas as partes do 
dataset sejam usadas tanto para treino quanto para teste.
Cada iteração fornece uma métrica diferente (o desempenho do modelo), e para mensurarmos o 
desempenho geral do modelo, fazemos a média entre os folds.
Iteração 1 Performance 1
Performance 
Modelo = Média 
das performances
Performance 2
Performance 3
Performance 4
1
2
3
4
Iteração 2
Iteração 3
Iteração 4
Desvantagem: ao treinar o modelo uma única vez, como podemos garantir que essa amostra de 
80% é realmente a ideal? E se ela estiver favorecendo ou desfavorecendo o modelo? Além disso, a 
cada execução obtemos resultados diferentes, dependendo da amostra utilizada.
Holdout
K-Fold Cross Validation
31
Com isso, além de mensurar como um modelo se comporta quando exposto a diferentes 
conjuntos de dados, simulando cenários reais, o K-Fold pode ser um excelente aliado no combate 
ao overfitting. Caso o desempenho no conjunto de treino seja muito superior à performance média 
nos folds de validação, isso pode ser um indicador importante da necessidade de ajustar o modelo 
e seus hiperparâmetros.
Stratified K-Fold: quando temos datasets desbalanceados, a classe minoritária pode aparecer 
pouco ou até mesmo não aparecer nos conjuntos de treino e teste. Para isso, usamos o 
Stratified K-Fold para garantir que em cada fold tenhamos a mesma proporção da variável 
target.
Group K-Fold: é utilizado quando queremos prevenir o vazamento de informações agrupadas 
entre os folds. Por exemplo: podemos enviesar o nosso modelo se as transações de um 
mesmo cliente estiverem tanto em um fold de treino quanto em um de teste.
Tipos de K-Fold:
Leave-one-out (LOOCV)
Out of Time
LOOCV (Leave-One-Out Cross-Validation): método de validação semelhante ao K-Fold, mas com 
K = n (número de observações disponíveis). Nele, em vez de separarmos pequenos conjuntos 
para alternar entre treino e teste, exatamente uma observaçãoé utilizada como teste e as demais 
(n - 1) como treino. Assim como no K-Fold, essa observação é alternada a cada iteração.
Exemplo:
Se o dataset possui 1.000 linhas, na primeira iteração a linha 1 é utilizada como teste e as linhas 
de 2 a 1.000 como treino (999 linhas). Na segunda iteração, a linha 2 é utilizada como teste e 
todas as demais (inclusive a linha 1, usada anteriormente) como treino. Esse processo se repete 
até que todas as observações tenham sido utilizadas como conjunto de teste.
Desvantagem: o LOOCV, embora seja uma ótima estimativa do desempenho real do modelo, é 
computacionalmente custoso para grandes conjuntos de dados. Em geral, a validação cruzada 
tradicional já é suficiente.
Out-of-Time: método de avaliação utilizado principalmente na análise de séries temporais. 
Consiste em utilizar dados do passado como partição de treino e dados do futuro como partição 
de teste.
O problema de não utilizar o out-of-time em séries temporais é o vazamento de informações do 
"futuro", o que pode superestimar o desempenho do modelo quando o objetivo é realizar 
previsões e generalizá-las para novos períodos de tempo.
32
Funções de custo são métricas que mensuram o erro do modelo.
De forma geral, os modelos de regressão e classificação são treinados com o objetivo de minimizar 
uma função de custo associada, de modo a ajustar seus coeficientes/parâmetros para que as previsões 
se aproximem o máximo possível dos valores reais de todos os pontos.
Funções de custo
Função de custo utilizada para problemas de regressão.
Trata-se da média do módulo da diferença entre os valores reais e os valores previstos pelo 
modelo. É sempre não negativa, e valores maiores correspondem a um modelo com erros mais 
elevados, indicando pior desempenho.
Erro: Diferença entre o 
valor real e o valor 
Número total de 
amostras
O objetivo do 
modelo de 
regressão 
linear é achar 
a melhor reta 
para diminuir 
essa 
diferença
valor 
predito
Valor real
MAE (Mean Absolute Error / Erro Médio Absoluto )
MSE (Mean Squared Error / Erro Quadrático Médio )
A MSE é uma função de custo utilizada em problemas de regressão.
Trata-se da média das diferenças quadráticas entre os valores reais e os valores preditos pelo 
modelo.
Por utilizar erros elevados ao quadrado, e não o valor absoluto, a MSE atribui maior peso a erros 
maiores — uma vez que, ao serem elevados ao quadrado, têm o seu valor inflado mais do que 
erros menores. Esse comportamento impacta principalmente outliers, que passam a ter influência 
desproporcional no valor da MSE.
Dessa forma, em dados que possuam uma quantidade grande de outliers não desejáveis, o uso da 
MSE pode não ser indicado. Por outro lado, quando o objetivo é penalizar erros grandes de 
maneira mais severa, o erro quadrático médio é uma boa opção.
33
Aplica log na função de verossimilhança para transformar o produto das 
probabilidades em soma, facilitando a otimização.
Número de amostrasNúmero de amostras valor 
verdadeiro da 
classe
valor previsto 
da classe
Log-Loss 
Função de verossimilhança 
LogLoss
0
MSE
0
MAE LogLoss
A Log Loss é a função de custo para problemas de classificação binária. Ela é uma transformação 
logarítmica da função de verossimilhança, que mede a plausibilidade dos dados observados, dados 
determinados parâmetros do modelo. O processo de encontrar esses parâmetros se chama 
método de máxima verossimilhança.
Em suma, a Log Loss mede o quão bem as probabilidades previstas pelo modelo se ajustam aos 
valores reais das classes, penalizando classificações incorretas.
34
Tipos de aprendizado
Aprendizado supervisionado
O aprendizado supervisionado trabalha com dados rotulados, ou seja, dados que possuem uma variável 
target (dependente) a ser estimada por meio da identificação de padrões entre as features (variáveis 
independentes).
Pense em uma equação simples: Y = 30X. Y seria a nossa variável dependente, o valor que queremos 
determinar através de X, a nossa variável independente.
Um modelo supervisionado pode ser tanto de regressão quanto de classificação, sendo que alguns 
modelos são capazes de desempenhar ambos os papéis.
Um modelo de regressão é aquele que tenta prever uma variável numérica.
Exemplo: previsão de renda, limite, altura, indicadores. Principais modelos de regressão:
Regressão Linear Simples
Regressão Linear Múltipla
Árvores de regressão 
Support Vector Machine 
O modelo tentará compreender 
os padrões existentes entre as 
features e a variável target 
durante a fase de treinamento. 
Na etapa de teste, ao receber 
novos dados de entrada, ele 
buscará prever se o cliente será 
ou não aprovado com base nos 
padrões identificados 
anteriormente.
Dados de entrada 
Variáveis independentes 
Features
Dados de saída 
Variável dependente
Target
num_cpf_cnpj idade renda aprovado
XXXXXXXXX 19 4K 0
XXXXXXXXX 40 2K 1
XXXXXXXXX 24 10K 0
XXXXXXXXX 30 3K 1
Regressão
KNN 
Random Forest
LightGBM
Redes Neurais
Um modelo de classificação é aquele que tenta prever uma variável categórica, representando 
uma classe ou determinada característica.
Exemplo: sexo, ser inadimplente ou não. Principais modelos de classificação:
Regressão Logística
Naive Bayes 
Árvore de classificação 
Support Vector Machine
KNN
Random Forest
LightGBM 
Redes Neurais
Classificação
35
Métricas de avaliação
Métricas para modelos de regressão
MSE
RMSE
MAE
MAPE
R2
Dependendo se o modelo é de classificação ou regressão, ele vai possuir métricas de avaliação 
diferentes. As métricas de avaliação servem para mensurar a performance geral do seu modelo 
depois de treinado, ao comparar as previsões com os valores reais.
A MSE é uma função de custo usada para avaliar o 
desempenho de modelos de regressão, também utilizada 
para mensurar a performance de um modelo de regressão.
Trata-se da média das diferenças quadráticas entre os 
valores reais e os valores preditos pelo modelo. Quanto 
maior o valor da métrica, maior o erro do modelo.
O RMSE é a raiz da MSE. É utilizado para retornar os erros 
às suas escalas originais, que são distorcidas na hora do 
cálculo da MSE.
Trata-se da média do módulo da diferença entre os 
valores reais e os valores previstos pelo modelo. É sempre 
não negativa, e valores maiores correspondem a um 
modelo com erros mais elevados, indicando pior 
desempenho.
Representa a porcentagem do erro em relação aos valores 
reais.
O R² representa a proporção da variância da variável 
dependente que é explicada pelo modelo de 
regressão. É calculado como a razão entre a variância 
explicada pelo modelo e a variância total dos dados 
observados. O R² varia entre 0 e 1, sendo que 0 indica 
que o modelo não explica nenhuma variação dos dados 
em torno da média e 1 indica que o modelo explica 
toda a variação dos dados. 
Quanto maior o número de variáveis, maior é o R², e 
isso pode ser um empecilho.
36
R² Ajustado 
O R² ajustado é uma modificação do R² que leva em 
conta o número de variáveis preditoras no modelo. 
Como foi dito anteriormente, o R² sempre aumenta 
quando novas variáveis são adicionadas; o R² ajustado 
aplica uma penalidade pela inclusão de variáveis que 
não contribuem significativamente.
Matriz de confusão
O modelo previu como positivo 
e era negativo
O modelo previu como negativo e 
era positivo
O modelo previu como negativo 
e realmente era negativo
O modelo previu como positivo 
e realmente era positivo
Falso Positivo (FP) 
Falso Negativo (FN) 
Verdadeiro Negativo (VN) 
Verdadeiro Positivo (VP) 
NegativoPositivo
Valor previsto
N
eg
at
iv
o
Po
sit
iv
o
Va
lo
r r
ea
l
Va
lo
r r
ea
l
Métricas para modelos de classificação
A matriz de confusão comumente considera positivos e negativos, sendo esses a 
representação de duas classes distintas.Porém, é possível adicionar mais classes.
As métricas para modelos de classificação são calculadas com base em uma matriz de 
confusão, que relaciona os tipos de erros e acertos entre as classes.
O R² negativo indica que o modelo está performando pior do que a média, o que pode 
significar um problema no próprio pipeline.
37
O recall é usado quando o mais importante é identificar falsos negativos, como por exemplo em um 
diagnóstico de câncer, onde é mais importante identificar quem tem câncer, mas o modelo indicou 
que não tem (FN).
Curva ROC e AUC
F1-Score
Recall/Sensibilidade
É um gráfico onde o eixo x é a taxa de falsos positivos e o eixo y é a taxa de verdadeiros positivos, e 
tem como objetivo representar o quão bem um modelo distingue a classe positiva da classe negativa.
O cenário ideal de uma curva ROC é ela estar mais próxima do canto superior esquerdo; isso 
significaria uma alta taxa de verdadeiros positivos e uma baixa taxa de falsos positivos, o que 
determina o poder discriminatório do modelo.
Podemos averiguar isso com a área sob essa curva (AUC).
 AUC próximo de 1: conseguiu separar as classes
 AUC próximo de 0: não conseguiu separar as classes
O F1-Score é a média harmônica entre o precision e o 
recall. Desse modo, tem como objetivo maximizar 
ambas as métricas.
Recall: número de verdadeiros positivos dividido pela 
soma dos verdadeiros positivos e falsos negativos. É a 
taxa de acerto da classe positiva: de todos os exemplos 
que realmente são positivos, quantos o modelo 
conseguiu capturar?
O precision é utilizado quando a prioridade é minimizar falsos positivos. Um exemplo é a detecção de 
spam: para uma empresa, é mais importante não classificar um e-mail importante como spam (FP) do 
que deixar de classificar um spam real (FN).
Precision
Número de verdadeiros positivos dividido pela soma 
dos verdadeiros positivos e falsos positivos. 
Basicamente, de todos os exemplos que o modelo 
previu que eram positivos, quantos realmente eram 
positivos?
38
Região ótima 
Classificador aleatório 
Taxa de falsos positivos
AUC
Ta
xa
 d
e 
ve
rd
ad
ei
ro
s 
po
sit
iv
os
Classe negativa
Classe positiva
Aprendizado não supervisionado
O aprendizado não supervisionado trabalha com dados não rotulados, ou seja, dados que não possuem 
uma variável target a ser estimada. O objetivo de um modelo não supervisionado não é prever algum 
valor, seja ele numérico ou categórico, e sim identificar padrões entre os dados e manipulá-los a partir 
disso, efetuando uma clusterização, por exemplo.
Por ter como principal objetivo identificar padrões e, geralmente, definir clusters, uma pergunta 
recorrente é qual o número de grupos que melhor segrega os dados.
Determinados algoritmos, como o DBSCAN, determinam automaticamente o número ideal de clusters. 
Outros, como o agrupamento hierárquico e o k-means, tratam essa escolha como uma decisão do 
usuário, definida a partir de hiperparâmetros.
Ainda assim, existem métodos auxiliares para a definição do número de clusters, tais como:
Identificação de padrões e segregação dos dados 
em clusters
num_cpf_cnpj idade renda aprovado
XXXXXXXXX 19 4K 0
XXXXXXXXX 40 2K 1
XXXXXXXXX 24 10K 0
XXXXXXXXX 30 3K 1
39
O método do cotovelo é uma técnica utilizada para escolher o melhor número de clusters, 
buscando encontrar um ponto ótimo entre a minimização da distância intra-cluster (WCSS) e a 
quantidade de clusters.
À medida que aumentamos o número de clusters, a distância entre os pontos de um mesmo 
cluster tende a diminuir. Entretanto, chega um momento em que essa melhora se estabiliza, ou 
seja, aumentar o número de clusters passa a não trazer um ganho marginal significativo.
Ao se plotar no eixo Y a distância intra-cluster e no eixo X a quantidade de clusters, podemos 
notar uma inflexão na curva, e esse será o ponto ótimo.
Ao usar o método do cotovelo, entretanto, você pode estar criando modelos com clusters muito 
próximos, uma vez que a distância extra-cluster não é um critério para definição.
Métodos de definição de clusters
Método do Joelho/Cotovelo
Cotovelo: melhor número de clusters = 4
W
CS
S 
K (n. clusters)
4 6 8 10
Método da Silhueta
O método da silhueta (ou silhouette score) é uma 
métrica que tenta balancear a coesão (a distância 
intra-cluster, o quão bem os pontos estão 
agrupados em um mesmo cluster) e a separação 
(o quão bem os clusters estão separados uns dos 
outros), variando de -1 a 1.
Em comparação com o método do cotovelo, o 
da silhueta é melhor para observar o quão bem 
os clusters estão separados entre si. De modo 
geral, é importante sempre olhar os dois juntos 
para definir o melhor K.
40
Principais modelos não supervisionados:
K-means
DBSCAN 
Agrupamento Hierárquico 
Gaussian Mixture Models
Parâmetros e Hiperparâmetros
Antes de aprender sobre qualquer modelo, é essencial entender a diferença entre parâmetros e 
hiperparâmetros.
Um parâmetro é uma variável inerente ao modelo, que é definida através do aprendizado do modelo 
com base na relação entre os dados disponíveis, e não manualmente.
Um exemplo típico de parâmetro são os coeficientes de uma regressão linear. Todo o processo de 
construção de uma regressão tem como objetivo a determinação desses betas, que são intrínsecos à 
reta que melhor se ajusta aos seus dados. Ou seja: não é possível defini-los manualmente, apenas 
estimá-los a partir dos dados.
Parâmetros
41
Hiperparâmetros são variáveis externas ao modelo que controlam o processo de aprendizado; é o modo 
como conseguimos controlar os nossos parâmetros. Eles não são estimados a partir dos dados, mas 
definidos antes do treinamento, e sua escolha influencia diretamente o desempenho e a capacidade de 
generalização do modelo. 
No geral, não treinamos um modelo com as suas "configurações padrão". Cada conjunto de dados 
possui suas características que exigem determinados ajustes no modelo, com o objetivo de orientar 
uma melhor previsão. 
Exemplos de hiperparâmetros são: a profundidade de uma árvore de decisão, o número mínimo de 
amostras para formar um nó, o kernel utilizado em um SVM, o número de clusters em um k-means, 
entre outros.
O processo de tunagem de hiperparâmetros pode ser extremamente custoso e lento. Ele consiste em 
testar diferentes valores como possíveis hiperparâmetros e treinar o modelo com cada um deles. Após o 
treinamento, é possível mensurar o "quão bem" cada combinação foi, através de uma métrica de 
avaliação. Desse modo, conseguimos determinar empiricamente qual é a melhor.
Hiperparâmetros
Tunagem de hiperparâmetros
consiste em testar todas as combinações de hiperparâmetros definidas pelo usuário, medindo a 
performance de cada uma delas.
Vamos supor que tenho uma árvore de decisão e quero saber qual profundidade, número mínimo 
de amostras para formar um nó e número mínimo de amostras para formar um split vão trazer a 
melhor precisão.
Grid Search
O algoritmo escolhe aleatoriamente diversas combinações de hiperparâmetros, considerando um 
intervalo de valores definido pelo usuário. Pode ser menos custoso computacionalmente do que o 
GridSearchCV, já que não testa todas as possibilidades.
Random Search
42
Overfitting e Underfitting
Antes de definir overfitting e underfitting, é essencial compreender os conceitos de viés e variância no 
contexto de machine learning.
De forma geral, viés é o quão bem o modelo está identificando os padrões de treinamento, enquanto 
variância mede a sensibilidade do modelo a variações nos dados de treinamento, ou seja, o quanto o 
seu desempenho se altera quando é exposto a novos dados.
O underfitting se caracteriza como uma situação de alto viés e nas etapas de treinamento e teste,
enquanto o overfitting apresenta baixo viés na etapa de treino e alta variância no teste.
Agora, temos um novo modelo que consegue separarperfeitamente os pontos verdes dos roxos. O erro do modelo é 
praticamente nulo.
Esse é um caso em que temos baixo viés, mas o problema surge 
quando novos dados são inseridos. O modelo está tão complexo 
e especializado nos dados que foram utilizados no treino, que não 
conseguirá generalizar os resultados para dados que não sigam 
exatamente o mesmo padrão de treinamento, caracterizando 
assim uma alta variância e uma situação de overfitting.
Na situação à direita, temos nossos dados reais em pontos e a 
previsão em vermelho. Podemos observar que a linha não está 
capturando bem a relação entre os dados, uma vez que 
apresenta um erro muito grande. Esse modelo é muito simples 
para resumir a relação entre os dados.
Podemos assumir, portanto, que se trata de uma situação de 
underfitting. Nem na etapa de treinamento nem na de teste esse 
modelo irá performar bem (alto viés), e ele erra de maneira 
consistente (baixa variância), devido à sua baixa complexidade.
O modelo ideal, portanto, é aquele que consegue encontrar o 
ponto ótimo desse trade-off entre viés e variância: aumentar a 
complexidade do modelo sem que ele se torne tão complexo a 
ponto de se sobreajustar aos dados de treinamento, e sem 
deixá-lo tão simples a ponto de não capturar as nuances 
presentes nos dados.
43
Overfitting Underfitting
Identificação 
Como identificar overfitting e underfitting na prática
Baixo erro de treinamento e alto erro de 
teste; Alto viés e baixa variância
Alto erro de treinamento e alto erro de 
teste; Baixo viés e alta variância
Alta complexidade do modelo, número 
alto de variâveis explicativas, data leakage, 
ruídos excessivos
Baixa complexidade do modelo, variáveis 
não significativas, dataprep incorreto, 
ruídos excessivos
Aumentar complexidade, feature selection, 
validação cruzada para seleção de 
hiperparâmetros, revisão do dataprep
À medida que o nível de 
complexidade do modelo aumenta, 
ele se torna mais propenso ao 
overfitting. Nessa situação, o viés no 
conjunto de treino tende a diminuir 
e o erro no conjunto de teste 
também diminui, até um ponto 
específico em que o erro de teste 
passa a crescer, devido ao ajuste 
excessivamente específico aos 
padrões dos dados de treino. A 
partir daí, a variância aumenta.
Diminuir complexidade, feature selection, 
validação cruzada para seleção de 
hiperparâmetros, modelos de ensemble
Causa
Soluções
O inverso ocorre quando a complexidade do modelo diminui: a variância reduz, enquanto o viés aumenta.
Podemos identificar sobreajuste (overfitting) e subajuste (underfitting) por meio de curvas de aprendizado, 
comparando o desempenho do modelo, medido por uma função de custo ou métrica de avaliação, em relação 
ao aumento de sua complexidade (por exemplo, a variação de um hiperparâmetro). Exemplo:
44
Ótimo desempenho no teste 
conforme aumentamos a 
profundidade da árvore, enquanto 
o treino estabiliza/diminui a partir 
do 5.
Baixa performance tanto no treino 
quanto no teste
Performance do treino e teste 
convergindo ao longo das 
iterações.
Overfitting UnderfittingModelo ideal
Aprofundamento
CRISP-DM
Tipos de aprendizado 
Definição de clusters Parâmetros e 
hiperparâmetros
Overfitting e Underfitting
Métricas de regressão e classificação
Treino, teste e validação Função de custo
Clique no QR Code!
https://youtu.be/ulLjrMti3RQ?si=Zj-tnvnA2ChBlpCA
https://youtu.be/Pwgpl9mKars?si=TFVpCq7pbWUnTxh4
https://youtu.be/SjOfbbfI2qY?si=FXJ9-wEShxrDbMZA
https://youtu.be/_XJTjJ0ZFFE?si=AxTedBZXi4u4Fbw1
https://youtu.be/zERI-vxicmo?si=J7L4r3PU1j-vcLdf
https://youtu.be/CWxaXyXZ-1A?si=HNBbV8mwykADdp8k
https://youtu.be/PF2wLKv2lsI?si=ftjc-P0DdXw8B5E6
https://youtu.be/Nvxi0Eaha4c?si=rCe3-gFfhZBQbnyB
https://www.youtube.com/watch?v=JDDqP6IZ4NQ
https://youtu.be/rDIocV_r9Xk?si=2dRy2o1G3fJzt7y_
https://www.youtube.com/live/GNb74Vl5vhk?si=GjGLetqLZvDYUvol&t=1
https://youtu.be/bMccdk8EdGo?si=wixtfcqrH8HFDK7K
https://youtu.be/Kdsp6soqA7o?si=47NNaJxTOxDpkps2
https://youtu.be/vP06aMoz4v8?si=wtjc5Ih-FYfJgRe8
https://youtu.be/4jRBRDbJemM?si=orj0SHh3GEU9Cxi7
https://youtu.be/DzrvLpxTxJw?si=cLhkiI1JQcfuRwG5
https://youtu.be/MHnoWsBJpeM?si=ZbQHEk67WnYvUm1B
https://youtu.be/fn2BPbsHLpc?si=lax5n6-RhJ8ZL2MX
https://youtu.be/EuBBz3bI-aA?si=OjodVfOxZUItVO_Y
https://youtu.be/HdlDYng8g9s?si=tO2MHij9Snms4wR6
45
Aprendizado Supervisionado
A regressão linear é um tipo de modelo supervisionado de regressão, ou seja, que tem como objetivo 
prever um valor contínuo que pode assumir qualquer valor numérico dentro de um intervalo real.
Ela faz isso modelando a relação linear entre uma variável resposta (Y) e uma ou mais variáveis 
explicativas (X), buscando encontrar a melhor equação que minimize o erro mensurado por uma 
função de custo, ou seja, a diferença entre os valores reais e previstos entre todas as variáveis 
explicativas em relação à variável resposta, considerando que estas possuam relação linear.
Regressão Linear
Tipos de regressão
Erro: Diferença entre o 
valor real e o valor 
Número total de 
amostras
O objetivo do 
modelo de 
regressão 
linear é achar 
a melhor reta 
para diminuir 
essa 
diferença
valor 
predito
Valor real
Variável independente
ErroCoeficiente 
angular 
Intercepto
Variável 
dependente
Regressão Linear Múltipla
Regressão Linear Simples
É uma regressão linear em que há mais de um coeficiente e mais de uma variável independente 
que explicam uma variável resposta. Nela, o módulo dos coeficientes aponta o poder explicativo 
de cada variável, ou seja, qual delas é mais "importante" para prever o valor desejado.
Por ser um problema com mais de uma variável independente, ele deixa de estar em duas 
dimensões e passa a estar em múltiplas dimensões, o que dificulta a visualização em relação à 
regressão linear simples.
É uma regressão linear em que há apenas um coeficiente/parâmetro associado a uma variável. O 
modelo estima um coeficiente associado a X, resultando em uma relação entre duas variáveis, que 
pode ser representada como uma reta. Assim, é o caso mais simples de regressão linear e de fácil 
visualização.
Exsitem dois tipos de regressão linear: a regressão simples e múltipla. 
46
Na prática, conseguimos aplicar uma regressão linear a qualquer situação e a quaisquer dados. 
Entretanto, isso não significa que a nossa previsão sairá como esperado ou que esse modelo, em 
específico, seja o ideal para os dados disponíveis.
Para que uma regressão linear seja eficiente, os nossos dados precisam seguir uma série de 
pressupostos. São eles:
Relação Linear Relação Não Linear
Y
X X X
Y Y
Pressupostos de uma regressão linear
O valor a ser predito precisa possuir relação linear com as variáveis utilizadas para a previsão. É 
possível verificar esse pressuposto a partir de gráficos de dispersão.
1. Relação linear entre a variável resposta e as variáveis independentes
A multicolinearidade acontece quando duas variáveis independentes (X) são altamente 
correlacionadas. Ou seja, possuem comportamento muito parecido ou idêntico, trazendo 
informações redundantes ao modelo.
O problema da multicolinearidade está justamente na dificuldade de interpretar os efeitos reais de 
cada coeficiente individual na regressão, tornando-os instáveis e inflando os erros-padrão.
É possível identificar a multicolinearidade por meio de uma matriz de correlação e do Fator de 
Inflação da Variância (VIF).
2. Ausência de multicolinearidade
47
Homocedasticidade Heterocedasticidade
Em uma regressão, é necessário que os resíduos possuam variância constante ao longo de todos 
os níveis de Y. Para verificar essa condição, podemos utilizar o gráfico de resíduos versus valores 
ajustados (valores previstos).
Se os pontos desse gráfico se distribuírem de forma aleatória e homogênea em torno de zero, 
podemos considerar que há variância constante. Por outro lado, caso os pontos se concentrem em 
determinadas regiões, isso pode ser um sinal de heterocedasticidade.
Os erros de uma regressão linear (diferença entre os valores reais e os preditos)