T01 – Introdução
A ciência que analisa dados brutos para extrair conhecimento útil (padrões) deles.
Big Data:
Volume: Armazenamento e gerenciamento de grandes quantidades de
dados não estruturados.
Velocity: Processamento e análise dos dados em tempo real.
Variety: Integração e uso conjunto de dados de diferentes fontes, formatos
e momentos.
Arquiteturas de Big Data:
Nas arquiteturas de Big Data, os sistemas distribuídos permitem o
processamento de grandes conjuntos de dados através de clusters.
Uma das primeiras técnicas desenvolvidas para este fim foi o
MapReduce (mapear e reduzir). Este modelo divide o conjunto de
dados em partes menores, denominadas “chunks”, que são
armazenadas e processadas por máquinas distintas no cluster,
garantindo eficiência e paralelismo. A implementação mais famosa do
MapReduce é o Hadoop. Estes sistemas devem incorporar
mecanismos de redundância e tolerância a falhas
Data Science:
A ciência de dados cria modelos para extrair padrões de dados complexos
e aplicá-los em problemas reais. Combinando mineração de dados,
estatística e visualização, permite extrair conhecimento útil e significativo,
indo além da mera análise de dados.
Big data & Data Science:
Big Data apoia a recolha e gestão de grandes volumes de dados. Data
Science usa técnicas para analisar estes dados e descobrir conhecimentos
úteis.
What is Data?
Os dados são simplesmente bits codificando números, textos, imagens,
sons, etc. Quando adicionamos informação aos dados, atribuindo-lhes um
significado, esses dados tornam-se conhecimento. Mas antes de os dados
se tornarem conhecimento, passam por várias etapas em que os dados
ainda são chamados de dados, apesar de estarem um pouco mais
organizados.
No contexto de dados tabulares, a informação é organizada em linhas e
colunas:
Colunas: Cada coluna representa uma característica ou propriedade
específica dos dados. Tal coluna é conhecida como atributo ou, de
forma equivalente, característica.
Linhas: Cada linha corresponde a uma ocorrência ou exemplo concreto
dos dados. Tal linha é conhecida como instância ou, de forma
equivalente, objeto.
Definição de Instância ou Objeto:
As instâncias, também denominadas objetos, são exemplos concretos
do conceito que pretendemos caracterizar ou estudar. Em outras
palavras, uma instância é um caso específico que apresenta as
características definidas pelos atributos.
Definição de Atributo ou Característica:
Os atributos, também conhecidos como características, são as
propriedades ou traços que estão presentes nas instâncias. Eles
definem e descrevem os aspetos observáveis ou mensuráveis de cada
objeto.
A short taxonomy on data analytics
Analises descritivas:
Resumem ou condensam os dados para extrair padrões.
Estas análises aplicam algoritmos diretamente aos dados e produzem
resultados como estatísticas, gráficos ou agrupamentos de instâncias
similares.
Método ou técnica: Um procedimento sistemático que alcança um
objetivo específico.
Algoritmo: Um conjunto de instruções passo a passo que implementa
um método e pode ser traduzido para linguagens de programação.
Análises preditivas:
Utilizam algoritmos para criar modelos a partir dos dados. Esses
modelos generalizam as informações e permitem prever novos
resultados.
Modelo: Uma generalização obtida dos dados, que pode ser usada para
gerar previsões. Pode ser visto como um protótipo que pode ser usado
para fazer previsões. Assim, a indução de modelos é uma tarefa
preditiva.
Data Mining
Process model
- The KDD (Knowledge Discovery in Databases) process model
o Selection: Identify and choose all relevant internal and external
information sources and determine the subset of data or variables
necessary for the KDD process.
o Preprocessing: includes the removal of data with extreme values
(outliers), filling in missing values, etc.
o Transformation: Converting data into a format suitable for Data
Mining algorithms.
o Data Mining: Use specialized tools and algorithms to search for
existing patterns within the data. This search can be fully automated
or assisted by an analyst generating hypotheses. At the end of this
step, the Data Mining system should produce a detailed report of the
analysis performed.
o Interpretation/Evaluation: Collaborate with business analysts to
evaluate the results. If the discovered knowledge is not satisfactory,
the team can design a new set of experiments, leading to another
iteration of the process.
- The CRISP-DM (CRoss Industry Standard Process for Data Mining) process model
o Business Understanding: Understand the project's objectives from
a business perspective and define a preliminary plan to achieve
those goals.
o Data Understanding: Gather data and carry out early activities to
become familiar with it, identifying issues or interesting subsets.
o Data Preparation: Build the final dataset from the initial one. This
step is often repeated multiple times throughout the process.
o Modelling: Apply various modelling techniques and calibrate their
parameters for optimization. It is common to return to the Data
Preparation stage during this phase.
o Evaluation: Although a model may seem to have high quality from a
data analysis perspective, it is necessary to verify whether it meets
the business objectives.
o Deployment: Organize and present the knowledge acquired from
the model in a way that the customer can e ectively use it.
T02 Classification
Predição Supervisionada
A predição supervisionada envolve a construção de modelos preditivos a partir de
dados rotulados (de treino), com o objetivo de prever rótulos para dados não
rotulados (de teste).
Tipos de Tarefas
1. Regressão:
o Rótulos quantitativos (e.g., preços de casas).
2. Classificação:
o Rótulos qualitativos, que podem ser:
Binários: e.g., "criança" ou "adulto".
Nominais: e.g., tipos de carro como "familiar", "desportivo".
Ordinais: e.g., avaliações de filmes como "mau", "bom".
Classificação
Uma tarefa preditiva em que os objetos são classificados em categorias
qualitativas com base nos seus atributos preditivos.
Exemplo Simples
Tabela com idades e rótulos ("bom" ou "mau").
Modelo induzido:
o Regra: "Se idade < 32, jantar será mau; caso contrário, será Bom."
Medidas de Desempenho Preditivo
Desempenho Preditivo
Avalia-se o quão frequentemente os rótulos previstos correspondem aos
rótulos reais.
A performance deve ser melhor que a predição baseada na classe
majoritária (aquela com mais objetos).
Matriz de Confusão
Representa o desempenho preditivo de classificadores binários:
o Classes Verdadeiras: Positivas ou Negativas.
o Classes Previstas: Positivas ou Negativas.
Combinação de Medidas
Curva ROC (Receiver Operating Characteristics):
o Combina "recall" e " specificity".
o A área sob a curva (AUC) é usada como métrica:
Quanto maior a AUC, melhor o desempenho do classificador.
Classificadores ideais estão próximos do canto superior
esquerdo da curva.
Generalização
A generalização é um aspeto crucial na avaliação do desempenho de um
método quando confrontado com dados novos.
Questões importantes:
o Como estimar o desempenho do modelo em dados novos?
É essencial definir procedimentos que garantam a credibilidade da
estimativa do desempenho do modelo quando exposto a dados que
não foram utilizados na sua fase de treino.
o Que medida de desempenho utilizar nesta estimativa?
A escolha da métrica de desempenho (por exemplo, exatidão,
precisão, recall, F1-score, etc.) deverá refletir adequadamente os
objetivos e as especificidades da aplicação em questão.
Métodos de Validação:
o Holdout: Consiste em dividir uma única vez o conjunto de dados em
treino e teste.
o Random Sub-sampling: Repetidas vezes, o conjunto de dados é
repartido aleatoriamente em subconjuntos de treino e teste,
permitindo avaliar a estabilidade do modelo.
o k-fold cross validation: O conjunto de dados é dividido em k partes
(folds); o modelo é treinado k vezes, cada vez utilizando k-1 partes
para treino e a parte restante para teste.
o Leave-one-out: Um caso extremo de validação cruzada onde k é
igual ao número de exemplos no conjunto de dados, ou seja, cada
amostra é, por sua vez, utilizada como conjunto de teste.
o Bootstrap: Técnica de reamostragem que utiliza amostras geradas
com reposição para estimar a distribuição da performance do
modelo.
Árvores de Decisão
Algoritmos de Indução de Árvores de Decisão
Árvore de Decisão (Decision Tree – DT):
Particiona os atributos preditores em formato de árvore para tarefas de
classificação ou regressão.
Estrutura da Árvore:
o Root node: Nó inicial com o atributo mais informativo.
o Internal nodes: Nós que representam decisões baseadas em
atributos.
o Branches: Ramos que ligam os nós, correspondendo a resultados
de decisões.
o Leaf nodes: Nós-folha que representam a classe ou valor final.
Processo de Indução:
o Utiliza uma abordagem Greedy (gananciosa) para dividir os dados.
Greedy: Seleciona a melhor divisão localmente em cada passo, sem
garantir o ótimo global.
o Inicia no nó raiz e expande em direção aos nós-folha.
o Cada divisão separa exemplos de treino usando medidas de
impureza.
Medidas de Impureza para Classificação:
o Índice de Gini: Mede a probabilidade de que dois elementos
selecionados aleatoriamente de um conjunto sejam classificados
incorretamente, com o valor mínimo indicando pureza máxima e o
valor máximo indicando uma distribuição uniforme entre classes.
o Entropy: Avalia o grau de desordem ou imprevisibilidade de um
conjunto de dados, onde valores mais baixos indicam maior
homogeneidade e valores mais altos representam maior incerteza.
Para Regressão:
o Utilizada em tarefas de regressão, mede a diminuição da dispersão
dos valores no conjunto de dados após uma divisão, indicando quão
bem a divisão separa os dados.
Hiperparâmetros e Pruning:
o Pruning: Processo de podar a árvore para evitar complexidade
excessiva.
Pré-pruning: Impede o crescimento excessivo durante a
construção.
Pós-pruning: Simplifica a árvore após sua construção.
o Definir hiperparâmetros, como o número mínimo de objetos por leaf
node, controla o over-fitting.
o Valores Muito Baixos promovem overfitting, pois a árvore se ajusta
demasiado aos dados de treino, perdendo capacidade de
generalizar para novos dados.
Over-fitting: Ajuste excessivo ao conjunto de treino que reduz a
generalização para novos dados.
Vantagens:
o Alta interpretabilidade; resultados em forma de gráfico ou regras.
o Não necessita de pré-processamento extensivo.
o Robusta a outliers, dados faltantes, atributos correlacionados ou
irrelevantes.
Desvantagens:
o Cada divisão é feita localmente (greedy), podendo não ser ótima
globalmente.
o Divide o espaço de forma bi-dimensional (linhas horizontais e
verticais), o que pode dificultar a modelagem de relações
complexas.
T03-A General Introduction to Data Analytics
Estatística descritiva
Descriptive Statistics referem-se a métodos/técnicas usados para descrever ou
resumir dados de uma forma que permita aos humanos compreender melhor as
características de uma amostra ou população.
População: Conjunto de objetos, eventos ou instâncias de interesse para
uma pergunta ou experiência.
Amostra: Subconjunto de dados selecionado de uma população, seguindo
um procedimento definido.
Dedução: Raciocínio sobre a amostra retirada da população.
Indução: Raciocínio sobre a população com base na amostra.
Tipos de escalas
Escalas Qualitativas: Usadas para categorizar dados, muitas vezes sem
significado numérico direto.
Nominal: Dados categóricos sem ordem intrínseca. Exemplo: Nomes de
amigos, género. Operações: = e ≠.
Ordinal: Dados categóricos ordenados. Exemplo: Classificação de
empresas (Bom, Médio, Mau). Operações: =, ≠, <, >.
Escalas Quantitativas: Medem dados numéricos.
Relativa: Não tem zero absoluto. Exemplo: Temperatura em Celsius (0°C
não representa ausência de calor). Operações: +, -.
Absoluta: Tem zero absoluto. Exemplo: Peso, altura. Operações: +, -, /, ×.
Tipos de escalas vs Tipos de dados
As escalas e os tipos de dados são conceitos relacionados, mas distintos.
As escalas definem como os dados podem ser organizados e interpretados,
enquanto os tipos de dados em software especificam como os dados são
armazenados e manipulados.
Análise Descritiva Univariada
Frequencies
Frequency: Representa essencialmente uma contagem de ocorrências.
Absolute Frequency: Conta o número de vezes que um valor específico
aparece no conjunto de dados.
Relative Frequency: Calcula a percentagem que um valor representa em
relação ao total de ocorrências.
Absolute Cumulative Frequency: Soma o número de ocorrências de
valores iguais ou inferiores a um dado valor.
Relative Cumulative Frequency: Percentagem acumulada de ocorrências
de valores iguais ou inferiores a um dado valor.
Funções de Distribuição:
o As frequências relativas descrevem como os dados estão
distribuídos.
o Quando derivadas de uma amostra, as distribuições são chamadas
de empíricas.
Atributos Discretos vs. Contínuos:
o Atributos Discretos: Como números inteiros, possuem uma
Probability Mass Function.
o Atributos Contínuos: Como números reais, possuem uma
Probability Density Function, representando a probabilidade em
intervalos contínuos.
Visualização de Dados
Pie Chart: Usado para escalas nominais ou qualitativas simples.
Bar Chart: Usado para escalas qualitativas ou quantitativas discretas.
Line Chart: Excelente para representar evolução no tempo.
Histogramas:
o Representa distribuições empíricas para atributos em escala
quantitativa.
o Uma decisão crucial é definir o número de "bins" (células).
A escolha do número ideal depende do problema, mas uma regra prática
sugere usar um valor próximo à raiz quadrada do número de observações.
Distribuições Empíricas vs. Probabilidades:
o Distribuições empíricas baseiam-se em amostras.
o Distribuições de probabilidade referem-se a populações inteiras.
Estatisticas
Estatística descreve numericamente características de uma amostra ou
população.
Location Statistics: Indicadores de tendência central.
Dispersion Statistics: Medidas de dispersão dos dados.
Box-plot: Mostra Min, Q1, Mediana, Q3, Max, e pode indicar simetria ou assimetria
(skewness).
Central Tendency: Mean, Median e Mode. Medianas e modos são mais robustos
em presença de outliers ou distribuições assimétricas.
Uso da Mean em Escalas Ordinais:
Embora controverso, o uso da mean em escalas ordinais é possível em certos contextos,
especialmente com escalas ordinais numéricas como a Likert scale.
A Likert scale usa valores ordenados (e.g., de 1 "discordo totalmente" a 5 "concordo
totalmente"), onde a média pode ser calculada, mas sua interpretação deve ser cuidadosa
devido à natureza ordinal dos dados.
Dispersion Statistics
As estatísticas de dispersão medem o quão distantes estão os diferentes valores
numa amostra ou população.
Amplitude: Diferença entre o valor máximo e o valor mínimo.
Interquartile range: Diferença entre o terceiro (Q3) e o primeiro quartil (Q1).
Mean absolute deviation (MAD):
Mede a distância média absoluta entre as observações e a média.
Standard deviation (desvio padrão)
Indica a distância típica entre as observações e a sua média.
A variância é o quadrado do desvio padrão.
Uniform Distribution: Se 𝑥 segue uma distribuição uniforme com parâmetros 𝑎 e
𝑏, então todos os intervalos de igual comprimento têm a mesma probabilidade de
ocorrência.
Normal Distribution: Muitas quantidades físicas (como alturas) são
aproximadamente normais, especialmente quando são soma de muitos fatores
independentes.
A distribuição Normal é simétrica, com a media localizar o pico da
“curva de sino” e o desvio padrão a definir a dispersão em torno da
média.
Análise Bivariada
Dois atributos quantitativos:
Técnicas de visualização: scatter plots, histogramas 3D, etc.
Covariância:
o Mede o grau de relação linear entre dois atributos.
o A escala dos atributos influencia a Covariância dos valores obtidos
Pearson correlation:
o Varia entre -1 e 1, independente da escala.
o Linha crescente, coeficiente = 1
o Linha decrescente, coeficiente = -1
o Linha horizontal, coeficiente = 0
Spearman's rank correlation:
o Baseia-se nos rankings dos valores, útil quando as relações não são
estritamente lineares.
Um atributo qualitativo e um quantitativo:
Box-plots: Para visualizar a distribuição do atributo quantitativo para cada
categoria qualitativa.
Contingency tables (Tabelas de contingência): Matriz com frequências,
totais por linha e coluna.
Dois atributos qualitativos (pelo menos um nominal):
Mosaic plots: Representação visual onde as áreas são proporcionais às
frequências relativas, complementando as tabelas de contingência.
Dois atributos ordinais:
Podem usar métodos anteriores, mas com atenção à ordem dos valores.
Para correlações, preferir o Spearman's rank correlation.
Em scatter plots de dados ordinais, pode-se aplicar o efeito jitter para
evitar sobreposição de pontos com os mesmos valores.
Contingency tables e mosaic plots também são aplicáveis, organizando
valores em ordem crescente.
Considerações Finais
A estatística descritiva oferece ferramentas essenciais para analisar dados
através de frequências, gráficos e estatísticas numéricas. A escolha da técnica
depende do número de atributos e do tipo (quantitativo, qualitativo, ordinal) em
análise. Tanto distribuições univariadas (como Uniform e Normal) quanto
métodos bivariados (correlações, scatter plots, tabelas de contingência, mosaic
plots) são fundamentais para descrever e interpretar os dados de forma eficaz.
Análise Descritiva Multivariada
Frequências Multivariadas
Para cada atributo, as frequências podem ser calculadas de forma
independente.
Os valores de frequência para cada atributo podem ser organizados numa
estrutura matricial.
Visualização de Dados Multivariados
Com três atributos, onde pelo menos dois são quantitativos, é possível
usar um bivariate plot. O terceiro atributo é representado através de cores
ou formas dos pontos no gráfico.
Se o terceiro atributo for qualitativo, usa-se cor ou forma para diferenciá-
lo.
Para mais de três atributos, podem ser utilizados gráficos 3D ou
representar um quarto atributo similarmente ao terceiro em um
bidimensional space.
Métodos para visualizar mais de quatro atributos incluem:
o Parallel coordinates (ou profile plots)
o Star plots e Chernoff faces
Estatísticas de Localização Multivariadas
Para cada atributo, medem-se estatísticas de localização como mínimo,
máximo, média, moda, quartis.
Se o número de atributos for pequeno, pode-se usar um conjunto de
boxplots, um para cada atributo.
Estatísticas de Dispersão Multivariadas
Calculam-se medidas de dispersão (amplitude, intervalo interquartílico,
MAD, desvio padrão) para cada atributo individualmente.
A relação entre dois atributos é avaliada com medidas de covariância e
correlação.
o A matriz de covariância possui variâncias na diagonal principal.
o A matriz de correlação de Pearson mostra coeficientes entre
atributos.
o Ambas são simétricas
Visualização de múltiplos atributos
Scatter plot matrix (Draftsman's display): permite analisar visualmente a
relação entre vários atributos em gráficos de dispersão organizados numa
grelha. Cada célula mostra a relação entre dois atributos.
Correlogram (matriz de correlação): representa visualmente a matriz de
correlação; quanto mais escura a cor num quadrado, maior a correlação
entre os dois atributos.
Heatmap: visualização que destaca a proximidade (ou valores) dos objetos
num conjunto de dados, considerando os atributos preditivos. Cada
coluna representa um atributo, e cada linha representa um objeto (ou
caso). A cor ou tom do quadrado indica o valor daquele atributo nesse
objeto.
Infográficos: são criações mais subjetivas e manuais, focadas num
conjunto de dados específico, ao contrário de gráficos gerados
automaticamente (ex.: plots e matrizes) que podem ser facilmente
aplicados a diferentes dados.
Word cloud (nuvem de palavras): muito utilizada em text mining para
ilustrar a frequência das palavras num texto. As palavras mais frequentes
aparecem com maior dimensão.
o Antes de gerar a word cloud, costuma-se remover artigos,
preposições, números e aplicar stemming (reduzir as palavras à
sua raiz).
Conclusões
À medida que o número de atributos aumenta, a análise descritiva
multivariada torna-se mais complexa.
É uma extensão natural da estatística univariada e bivariada para múltiplos
atributos.
T04 - Data quality and preprocessing
Data quality
Missing values:
Ignorar valores em falta (aproveitando só os atributos preenchidos).
Adaptar o algoritmo de aprendizagem para aceitar e processar valores em
falta.
Remover objetos (registos) que tenham valores em falta.
Preencher (fill) os valores em falta com estimativas baseadas noutros
objetos.
A abordagem mais comum é o preenchimento, que pode incluir:
Atribuição de valores de localização (por exemplo, média ou mediana para
valores quantitativos/ordinais, e modo para nominais).
Fazer esta substituição considerando apenas objetos da mesma classe
(em tarefas de classificação).
Usar um algoritmo de aprendizagem para prever o valor em falta de um
atributo específico.
Outra opção é criar:
Um novo valor que indique que o original estava em falta.
Um novo atributo (booleano) que assinale se o valor do atributo
relacionado estava ou não em falta.
Redundant data:
Refere-se ao excesso de dados que não trazem informação nova ou são
irrelevantes.
Exemplos:
o Objetos duplicados ou semelhantes, cuja informação já existe.
o Atributos preditivos redundantes, quando o valor de um atributo
pode ser derivado de outro.
A técnica de deduplication tem como objetivo identificar e remover cópias
de objetos no conjunto de dados.
Inconsistent data:
São valores que violam alguma consistência esperada (por exemplo, códigos
postais que não correspondem à cidade).
Podem ser detetados quando:
o Um atributo viola relações conhecidas (ex.: valor negativo quando só são
permitidos positivos).
o Um atributo tem um valor impossível numa dada situação.
Geralmente, valores inconsistentes podem ser tratados como missing values.
Noisy data
Dados que não respeitam os padrões esperados devido a medições
incorretas, erro humano ou contaminação.
Pode ser detetado por:
o Adaptação de algoritmos de classificação.
o Uso de noise filters em pré-processamento.
Os label noise filters baseados em k-NN são comuns para detetar ruído
no atributo-alvo.
Nem sempre é possível ter 100% de certeza de que um objeto é ruidoso.
Outliers
Valores ou objetos que se destacam do padrão geral (anómalos), mas que
podem ser legítimos.
Não são necessariamente ruído; há aplicações cujo foco principal é a
deteção de outliers.
Converting to a different scale type
Nominal para Relativo
Usa-se a técnica 1-of-n (ou one-attribute-per-value), criando várias colunas
binárias (0/1) para cada valor nominal.
Exemplo: Green → 001, Yellow → 010, Blue → 100.
Ordinal para Natural ou Binário
Atributos ordinais (ex.: small, medium, large) podem ser convertidos para
números inteiros (0,1,2,...) ou para códigos como Gray code ou
Thermometer code.
Discretização
Transforma dados quantitativos em categorias nominais ou ordinais.
Definimos um número de bins (intervalos) e atribuímos cada valor ao bin
correspondente, seja por largura (by width) ou frequência (by frequency).
Conversão de dados para a mesma escala
É fundamental em algoritmos que usam medidas de distância (ex.:
distância Euclidiana).
Se todos os atributos estiverem na mesma escala, nenhum atributo
domina os outros por ter valores numericamente maiores, assegurando
um tratamento equilibrado de cada atributo
Normalização de Escala
Min-max rescaling: (valor - mínimo) / (máximo - mínimo) → tudo em [0,1].
Standardization: (valor - média) / desvio_padrão → valores com média 0 e
desvio padrão 1.
Data transformation
Pode ser necessária para simplificar a análise ou permitir o uso de técnicas de
modelação específicas.
Aplicar uma função logarítmica aos valores de um atributo preditivo (por
exemplo, “log(salary)”).
Converter para valor absoluto (caso existam valores negativos).
Dimensionality reduction
A redução de dimensionalidade pode beneficiar algoritmos de aprendizagem ao:
Reduzir o tempo de treino e a memória necessária
Eliminar atributos irrelevantes ou ruidosos
Produzir modelos mais simples e interpretáveis
Facilitar a visualização de dados
Reduzir o custo de extração de atributos
1. Attribute aggregation (agregação de atributos):
o Substitui um conjunto de atributos por novos atributos combinados.
o Projecta o conjunto de dados original num espaço de menor dimensão.
Principal Component Analysis (PCA): Combina linearmente os
atributos originais em principal components ortogonais e não
correlacionados.
Independent Component Analysis (ICA): Assume que os
atributos originais são estatisticamente independentes,
procurando reduzir estatísticas de ordem superior.
Multidimensional Scaling (MDS): Baseia-se nas
distâncias/dissimilaridades entre objectos para projectar os
dados num espaço de menor dimensão (normalmente 2D),
minimizando a diferença entre as distâncias originais e as
distâncias no espaço projectado.
2. Attribute selection:
o Escolhe um subset de atributos em vez de criar atributos novos.
o Acelera o processo de aprendizagem, pois reduz a quantidade de
operações.
o Três categorias principais:
1. Filters:
Usam relações simples ([Link]., Pearson correlation) entre
cada atributo preditivo e o atributo alvo.
Ordenam (rank) os atributos com base nessas relações.
2. Wrappers:
Usam explicitamente um classificador para avaliar
subconjuntos de atributos, seleccionando aquele com
melhor desempenho preditivo.
Têm, em geral, maior custo computacional, mas podem
produzir melhores resultados.
3. Embedded:
A selecção de atributos faz parte interna do algoritmo
preditivo ([Link]., decision trees).
Dentro das técnicas wrapper, destacam-se várias estratégias de pesquisa:
Exhaustive search: testa todos os subsets possíveis.
Forward selection: começa sem atributos e adiciona iterativamente
aquele que mais melhora a performance, até deixar de haver melhorias
significativas ou até ser atingido um critério pré-definido.
Backward selection: começa com todos os atributos e remove aquele
cuja remoção aumenta mais a performance, repetindo até não haver
melhoria.
Floating search methods: combinam passos forward e backward para
explorar um espaço de soluções maior.
O conceito de curse of dimensionality descreve como, ao aumentar o número de
atributos sem aumentar proporcionalmente o número de instâncias, se gera mais
sparsidade (dispersão) e são necessários muitos mais exemplos para cobrir o
espaço de atributos de forma eficaz.
Aspectos complementares:
É importante garantir a qualidade dos dados (lidar com valores em falta,
inconsistências, ruído e outliers).
Podem aplicar-se transformações de escala ou de tipo de variável (por
exemplo, normalizar ou discretizar).
T05 - Classification algorithms
Visão Geral
Os algoritmos de classificação podem ser agrupados em diferentes categorias,
de acordo com o seu modo de funcionamento:
Distance-based: por exemplo, k-NN (k Nearest Neighbour).
Probability-based: por exemplo, Naïve Bayes e Logistic Regression.
Search-based: por exemplo, Decision Trees (CART, C5.0) e Model Trees.
Optimization-based: por exemplo, Artificial Neural Networks (ANN),
Deep Learning e Support Vector Machines (SVM).
1. Distance-based
k-NN (k Nearest Neighbour)
Ideia principal: classifica um novo exemplo com base nas classes dos
seus k vizinhos mais próximos do conjunto de treino, medindo a distância
(p. ex. euclidiana).
Características:
o Não cria um modelo explícito (lazy learning).
o Possível usar diferentes métricas de distância (Euclidiana,
Manhattan, etc.).
o Também aplicável em regressão (k-NN regression).
Vantagens:
o Simples de compreender e implementar.
o Bom desempenho em diversos tipos de problemas.
o Incremental e adaptável a novos dados sem retraining completo.
Limitações:
o Fase de teste lenta (tem de procurar os vizinhos no conjunto inteiro).
o Sensível a outliers e atributos irrelevantes.
o Requer normalização de atributos quantitativos.
o Não há interpretabilidade do tipo “modelo” (usa apenas a
informação local).
2. Probability-based
2.1 Naïve Bayes
Ideia principal: aplica o Teorema de Bayes para calcular P(y∣X)
assumindo independência condicional entre atributos.
Tipo: modelo gerativo (modela a distribuição conjunta P(X,y).
Vantagens:
o Treino e teste muito rápidos.
o Bom desempenho se os atributos forem (quase) independentes.
o Modelo simples de interpretar (probabilidades condicionais).
o Robusto a ruído e dados irrelevantes.
Limitações:
o Hipótese de independência raramente realista.
o Atributos contínuos exigem escolher funções de densidade (p. ex.
Gaussiana).
2.2 Logistic Regression
Ideia principal: estima a probabilidade de um exemplo pertencer a uma
classe (binária), ajustando uma função logística sobre uma combinação
linear dos atributos.
Logit (ou log-odds)
Vantagens:
o Fácil de interpretar (coeficientes lineares).
o Não tem hiperparâmetros principais para ajuste (na forma simples).
Limitações:
o Supõe separabilidade (aproximadamente) linear.
o Sensível a outliers e a atributos fortemente correlacionados.
3. Search-based
3.1 Decision Trees
Algoritmos: CART, C5.0, entre outros.
Ideia principal: particionar iterativamente o conjunto de treino consoante
valores/categorias dos atributos, formando uma árvore (nós interiores =
condições, folhas = classes).
Medidas de impureza: Gini Index, Entropy (para classificação).
Vantagens:
o Altamente interpretáveis (fáceis de visualizar como árvore ou
conjunto de regras).
o Normalmente robustas a outliers, dados em falta e não exigem
normalização.
Limitações:
o Podem sobreajustar (necessitam de pruning).
o Cortes apenas ortogonais (dificuldade em certos padrões).
3.2 Model Trees e MARS (para regressão)
Model Trees: usam regressões lineares (em vez de médias) nas folhas.
MARS (Multivariate Adaptive Regression Splines): ajusta “hinge
functions” (max(0, x−c)) em segmentos dos atributos, permitindo modelar
relações não lineares.
Vantagens:
o MARS e Model Trees podem modelar melhor do que CART (para
regressão).
o MARS faz seleção de atributos embutida e não exige normalização.
Limitações:
o Possível menor interpretabilidade face a uma árvore simples
(sobretudo no MARS, que gera múltiplos segmentos).
o Atributos correlacionados e outliers podem afetar a qualidade do
modelo.
4. Optimization-based
4.1 Artificial Neural Networks (ANN)
Ideia principal: inspiradas no sistema nervoso, ajustam “pesos” nas
ligações entre neurónios para minimizar o erro preditivo.
Perceptron: uma só camada, apenas resolve problemas linearmente
separáveis.
MLP (Multi-layer Perceptron): mais camadas, maior capacidade de
modelagem (pode aproximar funções complexas).
Aprendizagem: normalmente via backpropagation, otimizando uma
função de custo (ex: erro quadrático).
Vantagens:
o Excelente desempenho em muitas tarefas (classificação e
regressão).
o Altamente robustas a ruído.
o Fáceis de estender a múltiplas classes.
Limitações:
o Difíceis de interpretar (caixa negra).
o Alto custo computacional no treino e muitos hiperparâmetros
(número de camadas, neurónios, learning rate, etc.).
o Atributos qualitativos precisam de codificação (p. ex. one-hot).
Deep Learning
Deep Networks: redes neurais com várias camadas escondidas (CNN,
RNN, Autoencoders, etc.).
Excelentes resultados em visão por computador, NLP, etc., mas exigem
grandes conjuntos de treino e hardware potente (GPUs).
Prós & Contras: semelhantes às ANNs, mas com ênfase ainda maior na
capacidade de generalização e no custo computacional/dados.
4.2 Support Vector Machines (SVM)
Teoria: baseadas na Statistical Learning Theory (Vapnik, Chervonenkis).
Ideia principal: encontrar o hiperplano (ou conjunto de hiperplanos) que
maximize a margem entre classes.
Versões:
o SVM para classificação binária (com soft margin – parâmetro C – ou
ν-SVM).
o SVR (Support Vector Regression), que minimiza a faixa (ε-
insensitive) em torno dos dados.
o Kernels para lidar com não linearidades (RBF, Polynomial, etc.).
Vantagens:
o Forte fundamentação matemática.
o Normalmente boa capacidade de generalização.
Limitações:
o Sensível à escolha dos hiperparâmetros (C, ν, ε, kernel, γ).
o O custo computacional pode escalar com o número de support
vectors.
o Naturalmente binária (para multiclasse usam-se estratégias one-vs-
one ou one-vs-all).
T06 - Regression & Ensemble Learning
Linear Regression
1. Univariate Linear Regression
o Objetivo: encontrar β0 (intercept) e β1 que minimizem o erro
quadrático médio (sum of squared errors).
2. Multivariate Linear Regression
o Tem como objetivo minimizar o erro médio quadrático (MSE).
3. Assumptos
o Erros independentes e identicamente distribuídos.
o Variância constante.
o Normalidade dos erros.
o Em caso de violação destes pressupostos, a estimação dos
parâmetros pode ser afetada.
4. Vantagens
o Boa interpretabilidade.
o Sem necessidade de muitos hiperparâmetros.
o Fundamentos matemáticos sólidos.
5. Desvantagens
o Mau ajuste se a relação entre atributos e rótulo for não-linear.
o Requer número de instâncias maior do que o número de atributos.
o Sensível a atributos correlacionados e a outliers.
Medidas de Desempenho (Performance Measures) em Regressão
Mean Absolute Error (MAE)
Mean Squared Error (MSE)
Root Mean Squared Error (RMSE)
Relative Mean Squared Error (RelMSE)
Coefficient of Variation (CV)
Noise e Generalização
Modelo subjacente:
o O “noise” assume-se normalmente distribuído com média zero.
Objetivo: obter um modelo que aproxime bem f e generalize para novos
dados, mantendo baixo bias e baixa variance.
Bias e Variance
Bias: diferença esperada entre a média dos modelos (do mesmo tipo) e a
função verdadeira f.
Variance: variação do modelo em torno da sua média quando treinado
com diferentes amostras.
Trade-off Bias-Variance: modelos muito complexos tendem a ter baixo
bias mas alta variance, e vice-versa.
Métodos de Regularização (Shrinkage Methods)
Ideia geral: aumentar ligeiramente o bias para reduzir a variância,
introduzindo um termo de penalização.
1. Ridge Regression
o Penaliza a soma dos quadrados dos coeficientes.
o Lida melhor com atributos correlacionados do que a ordinary least
squares regression.
2. Lasso Regression
o Penaliza a soma dos valores absolutos dos coeficientes.
o Lida melhor com a atributos correlacionados do que a ridge
regression
o Faz seleção de atributos (pode anular coeficientes de atributos
irrelevantes).
Combinações Lineares de Atributos
1. Principal Components Regression (PCR)
o Cria componentes principais (PCs) sem considerar a correlação
com o rótulo.
o Depois, usa esses PCs como atributos num modelo de regressão
linear.
2. Partial Least Squares (PLS)
o Considera a correlação de cada atributo preditivo com a variável-
alvo para gerar as componentes.
o Em geral, atinge bons resultados com menos componentes
principais do que PCR.
Transformação da Variável-Alvo
Pode ser útil transformar o alvo (por exemplo, usando log) quando a sua
distribuição ou a relação com os preditores o justifica (e.g., para lidar com
heterocedasticidade ou não linearidade).
Seleção de Técnica Preditiva
Existem muitas técnicas (para regressão e classificação).
A escolha costuma recair em técnicas conhecidas por bom desempenho.
Ainda assim, há sempre múltiplas opções, e costuma-se recorrer a
experimentação (e.g., cross validation) para decidir.
Ensemble Learning
Definição
Ensemble Learning: usar um conjunto de modelos (base models) e
combiná-los para obter a predição final.
Processo
1. Geração (ensemble generation): construir diversos modelos base.
2. Poda (ensemble pruning) (opcional): eliminar alguns modelos.
3. Integração (ensemble integration): combinar as predições (por exemplo,
via média ou voting) para obter a predição do ensemble.
Taxonomia
Geração:
o Homogeneous – todos os modelos provenientes do mesmo
algoritmo.
o Heterogeneous – modelos de algoritmos diferentes.
o Estratégias de combinação: Sequential, Parallel ou ambas.
Integração:
o Combination (e.g., média para regressão, voting para classificação)
o Selection (selecionar um modelo ou subconjunto de modelos)
Pruning:
o Pre-pruning ou Post-pruning (geralmente para reduzir
complexidade ou sobreajuste).
Erro de Generalização em Regressão: Usualmente assume-se a média simples
das previsões individuais para integrar.
Métodos de Geração
1. Data Manipulation
o Subsampling (e.g., bootstrap).
o Manipular atributos (feature manipulation).
o Manipular a variável de saída.
2. Modeling Process Manipulation
o Parameter sets diferentes.
o Algoritmos de indução diferentes.
o Modificação do próprio modelo (e.g., Negative Correlation
Learning).
Pruning
Partitioning-based: divide os modelos em grupos e escolhe
representações de cada grupo.
Search-based: procura subconjuntos ideais ou quase-ideais (por exemplo,
com pesquisa greedy).
Evaluation Measures: avaliam o desempenho e/ou a diversidade do
conjunto para decidir quais modelos remover.
Métodos de Integração
Classificação
Voting (maioria)
Weighted Voting (votos com pesos)
Stacking (um meta-modelo aprende a combinar as saídas)
Regressão
Simple Average (média simples)
Weighted Average (média ponderada)
Stacking (meta-modelo para valores contínuos)
Exemplos de Métodos Ensemble
Bagging
Abordagem paralela.
Cada modelo é treinado usando uma amostra bootstrap do conjunto de
treino.
A predição final é combinada (para regressão: média simples; para
classificação: voting).
Vantagens:
o Boa melhoria de desempenho para modelos base instáveis (e.g.,
decision trees).
o Quase sem hiperparâmetros.
Desvantagens:
o Método estocástico.
o Maior custo computacional (vários modelos).
Random Forest
Conjunto de decision trees (floresta).
Semelhante a Bagging, mas em cada nó da árvore seleciona-se
aleatoriamente um subconjunto de atributos.
Vantagens:
o Alto desempenho preditivo.
o Hiperparâmetros fáceis de ajustar (número de árvores, etc.).
Desvantagens:
o Grande custo computacional (muitas árvores).
o É estocástico (por causa do bootstrap).
AdaBoost
Boosting: abordagem sequencial.
A cada iteração treina-se um modelo base usando pesos para os exemplos
de treino, que variam conforme a dificuldade de predição.
A predição final é uma combinação ponderada (weighted voting ou, no
caso de regressão, soma ponderada).
Vantagens:
o Elevado desempenho em muitos problemas.
o Hiperparâmetros fáceis de ajustar.
Desvantagens:
o Sequencial e, portanto, menos paralelizável.
o Difícil de interpretar.
o Custoso computacionalmente.
Negative Correlation Learning
Conjunto de redes neurais treinadas em paralelo e de forma interativa.
Introduz penalizações de correlação nos erros para estimular diversidade
entre os modelos.
T07 – Clustering
Definição e objetivo do Clustering
O clustering consiste em agrupar objetos de modo que os elementos no mesmo
grupo sejam mais semelhantes entre si do que em relação aos de outros grupos.
Geralmente, é necessário definir previamente o número de clusters e a escolha
das métricas de semelhança/distância é crucial para a qualidade da análise.
Tipos de atributos e medidas de distância
Quantitative attributes: utilizam valores numéricos contínuos ou discretos
(ex.: idade).
Qualitative attributes (ordinal): valores categóricos com ordem (ex.: níveis
de educação).
Qualitative attributes (nominal): valores categóricos sem ordem (ex.:
nomes).
Para medir distâncias:
Minkowski distance (generalização que inclui outras métricas).
o Manhattan distance (r=1): soma das diferenças absolutas.
o Euclidean distance (r=2): raiz quadrada da soma dos quadrados
das diferenças.
Hamming distance: conta o número de posições diferentes em duas
sequências de mesmo tamanho (ex.: strings).
Levenshtein (edit distance): calcula quantas inserções, remoções ou
substituições são necessárias para transformar uma sequência noutra.
Bag-of-words: representação de texto como vetor da frequência de cada
palavra, permitindo calcular distância entre textos.
Dynamic Time Warping: mede similaridade entre séries temporais,
considerando variações e “desalinhamentos” no tempo.
Distância entre imagens: pode basear-se em features como coordenadas
de pontos de referência (ex.: distância entre olhos) ou diretamente em
matrizes/vetores de pixeis.
Principais técnicas de clustering
1. Partitional
o Cada objeto num cluster está mais próximo dos objetos dentro do
próprio cluster do que de qualquer objeto fora do cluster.
o Geralmente necessita de definir o número de clusters (K) no início.
2. Prototype-based
o Cada objeto num cluster está mais próximo de um prototype que
representa o cluster do que dos protótipos de outros clusters.
o Exemplo: K-means.
3. Graph-based
o Os dados são representados por um grafo onde cada nó
corresponde a um objeto.
o Objetos que pertencem ao mesmo cluster encontram-se ligados por
arestas.
o Exemplo: Agglomerative Hierarchical Clustering (quando interpretado como um grafo).
4. Density-based
o Um cluster é definido como uma região de alta densidade de
objetos rodeada por áreas de baixa densidade.
o Exemplo: DBSCAN.
Exemplos de métodos de clustering
1. K-means
o Método de clustering mais popular.
o Partitional e prototype-based.
o Usa um número fixo de clusters K.
o Pode recorrer a:
Centroid: a “média” (ou perfil) dos objetos no cluster.
Medoid: o objeto real (instância) que minimiza a soma das
distâncias a todos os outros objetos no cluster (ex.: k-
medoid).
o Prós:
Eficiente computacionalmente.
Normalmente encontra bons resultados.
o Contras:
Pode ficar preso em mínimos locais.
É necessário definir K à partida.
Não lida bem com dados ruidosos (noise) e outliers.
Só encontra clusters convexos.
2. DBSCAN
o Density-based; não necessita de definir o número de clusters
antecipadamente.
o Agrupa objetos que formam uma região densa (núcleo), e trata
objetos não pertencentes a zonas densas como noise.
o Conceitos principais:
Core instance: atinge diretamente um número mínimo
(delta) de outras instâncias dentro de uma determinada
distância (epsilon).
Reachability: determina se se pode chegar a um objeto a
partir de outro por uma cadeia de instâncias dentro de
epsilon.
o Prós:
Pode detetar clusters de forma arbitrária (não apenas
convexos).
Robusto a outliers.
o Contras:
Mais complexo computacionalmente do que K-means.
Dificuldade em definir valores adequados para hyper-
parâmetros (epsilon, delta).
3. Agglomerative Hierarchical Clustering
o Cria uma dendrogram (árvore hierárquica) ao agglomerar
iterativamente os objetos ou clusters mais próximos.
o Linkage criteria:
Single linkage: tende a criar um cluster dominante (favorece
cadeias).
Complete linkage: tende a formar clusters mais
homogéneos (sem grandes cadeias).
Average linkage: equilíbrio entre single e complete.
Ward linkage: favorece clusters compactos.
o Prós:
Facilmente interpretável (sobretudo para conjuntos de dados
pequenos).
Parâmetros fáceis de definir (distância, linkage).
o Contras:
Pode ser caro computacionalmente para grandes datasets.
Interpretação do dendrograma pode ser subjetiva.
Também pode ficar preso em ótimos locais.
Validação de clustering
É essencial avaliar a qualidade dos clusters encontrados por qualquer algoritmo.
Existem vários tipos de medidas de validação:
1. Índices externos
o Avaliam o clustering com base em informação externa (por exemplo,
etiquetas de classe).
2. Índices internos
o Avaliam a compacidade (objetos próximos dentro de cada cluster) e
a separação (distância entre clusters).
o Exemplos:
Silhouette:
Para cada objeto xi , calcula a distância média aos
objetos do mesmo cluster a(xi) e a distância média
aos objetos do cluster mais próximo (b(xi)).
Mede o quão bem cada objeto se enquadra no seu
cluster relativamente aos outros clusters.
Within groups sum of squares (WGSS ou WSS):
Soma das distâncias quadradas entre cada objeto e o
centróide do seu cluster.
Usado, por exemplo, na técnica do “Elbow curve”
para determinar o número ótimo de clusters.
3. Índices relativos
o Comparam partições encontradas por técnicas diferentes ou por
várias execuções da mesma técnica.
4. Índice externo de Jaccard
o Mede a similaridade entre as etiquetas de classe e a atribuição a
clusters
Quanto mais próximo de 1, maior a concordância entre as
atribuições a clusters e as classes reais.
Observações finais
É importante escolher cuidadosamente a similarity measure (medida de
semelhança) ou distance measure (medida de distância).
Diferentes métodos de clustering (ou diferentes execuções do mesmo
método) podem produzir resultados distintos.
A presença de atributos correlacionados, irrelevantes ou redundantes pode
aumentar o custo computacional e reduzir a qualidade dos resultados.
A ausência de labels complica processos de seleção de variáveis, pois não
se sabe que atributos são realmente relevantes.
T08 - Frequent Pattern Mining
Frequent Pattern Mining visa encontrar conjuntos de itens itemsets que
aparecem frequentemente num conjunto de transactional data.
Um itemset é uma combinação de itens; a frequência de um itemset denomina-
se support.
A métrica support de um itemset é a razão entre o número de transações que
contêm todos os itens e o número total de transações.
Monotonicidade
Se um itemset é frequente, todos os seus subconjuntos também são
frequentes.
Se um itemset não é frequente, nenhum dos seus superconjuntos pode ser
frequente.
Algoritmos Principais
1. Apriori
o Gera itemsets frequentes de forma iterativa (nível a nível,
começando por 1-itemsets, depois 2-itemsets, etc.).
o Explora a propriedade de monotonicidade para podar rapidamente
conjuntos que não são frequentes.
2. Eclat
o Utiliza um formato de dados vertical (TID-set) para cada item,
contando o support através da interseção dos TID-sets.
o Pode ser mais rápido em alguns cenários, pois evita a leitura linha a
linha do conjunto de transações.
3. FP-Tree (Frequent Pattern Tree) e FP-Growth
o Constrói uma árvore (FP-Tree) compacta baseada na frequência dos
itens.
o Requer apenas duas passagens pelos dados.
o O FP-Growth divide a procura em subproblemas (por ex., itemsets
que contêm determinado item) e gera todos os itemsets frequentes
de forma mais eficiente do que enumerar todas as combinações.
Regras de Associação
As regras de associação são expressões do tipo A⇒C, em que A e C são
subconjuntos de itens que não se sobrepõem. A ideia principal é que, se A
(antecedente) ocorre numa transação, então C (consequente) também deve
ocorrer na mesma transação, com alguma frequência. Essas regras ajudam a
compreender que itens estão associados no conjunto de dados.
Métricas de Qualidade (Support e Confidence)
Para cada regra A⇒C, podemos medir a sua qualidade usando duas métricas
principais.
1. Support(A⇒C):
o É igual ao suporte do itemset A∪C, ou seja, a proporção de
transações em que A e C aparecem juntas.
2. Confidence(A⇒C):
o Mede a fração das transações que contêm A e C em relação ao total
de transações que contêm A.
o Formalmente, confidence(A⇒C) = support(A∪C)/support(A)
Mineração de Regras de Associação
O processo clássico de geração de regras de associação ocorre em duas fases:
1. Encontrar itemsets frequentes: Usa-se um limiar de suporte mínimo
(min_sup) para identificar todos os conjuntos de itens que ocorrem com
frequência suficiente.
2. Gerar regras: A partir dos itemsets frequentes, criam-se regras que
satisfaçam um limiar de confiança mínimo (min_conf), isto é, apenas as
regras cujo valor de confidence seja maior ou igual a min_conf são
consideradas relevantes.
Monotonicidade e Geração de Regras
Há uma propriedade de monotonicidade na confiança: mover itens do
antecedente para o consequente não costuma aumentar a confiança.
Para gerar regras a partir de um itemset frequente, é comum partir de todas as
regras cuja parte consequente (right-hand side) tenha apenas 1 item, verificando a
confiança de cada uma. Em seguida, aumentam-se gradualmente o número de
itens no consequente, mantendo apenas aquelas que continuem a respeitar
min_conf.
Cross-Support Patterns
Às vezes, surgem padrões que combinam itens muito frequentes com itens pouco
frequentes (cross-support patterns). Usa-se então a razão entre o suporte mínimo
e o suporte máximo dos itens envolvidos para avaliar o quão desequilibrado pode
ser esse padrão.
Lift
Outra métrica importante é o Lift, que mede o grau de dependência estatística
entre o antecedente (X) e o consequente (Y) da regra:
lift(X⇒Y) = confidence(X⇒Y)/support(Y)
lift > 1 indica que a ocorrência de X favorece a de Y.
lift < 1 indica que X “prejudica” Y.
lift ≈ 1 indica independência entre X e Y.
Simpson’s Paradox
Este paradoxo ocorre quando correlações encontradas em subgrupos
desaparecem ou invertem-se quando os dados são combinados. Assim, a relação
entre antecedente e consequente pode ser fortemente influenciada por fatores
externos ou não medidos.
Final Remarks
Um dos principais desafios é o elevado número de padrões resultantes,
sobretudo com limites de suporte e confiança mais baixos.
A escolha adequada de min_sup e min_conf é fundamental para equilibrar
a geração de padrões genéricos (com suportes altos) e específicos (com
suportes mais baixos).
Para além de support, confidence e lift, podem ser utilizadas outras
medidas para avaliar a relevância dos padrões para o utilizador.
Graph pattern mining é uma área emergente que se dedica à descoberta de
padrões em estruturas de dados em forma de grafo, expandindo ainda mais o
campo de aplicação da mineração de padrões.
T08 - Imbalanced Datasets & Outlier Detection
Imbalanced Datasets
Definição
Um imbalanced dataset caracteriza-se por ter uma distribuição desigual
das classes-alvo, levando os modelos a privilegiar as classes mais
representadas em detrimento das menos representadas.
Principais desafios
1. Como aprender?
o Os modelos tendem a maximizar a representação da informação
dominante, ignorando a minoria.
2. Como avaliar?
o Muitas métricas clássicas (por exemplo, Accuracy) não capturam
corretamente o desempenho em classes minoritárias.
o É necessário dar enfoque a métricas mais adequadas, como
Precision, Recall, F1-score ou ROC AUC, e em alguns casos
Precision-Recall Curve.
Estratégias para imbalanced domains
1. Data Pre-processing
o Random Undersampling: Remove aleatoriamente instâncias da
classe maioritária.
Pode descartar informação útil, reduzindo o tamanho do
dataset.
o Random Oversampling: Duplica aleatoriamente instâncias da
classe minoritária.
Pode levar a overfitting.
o SMOTE (Synthetic Minority Oversampling TEchnique): Cria
instâncias sintéticas da classe minoritária a partir de interpolações
entre vizinhos próximos.
Menos propenso a overfitting do que oversampling simples.
2. Special Purpose Learning Methods
o Ensemble-based approaches (por exemplo, variantes de AdaBoost
que dão maior peso às classes raras).
o One-class classifiers, que aprendem apenas com a classe
“normal” (minoritária ou maioritária, dependendo do contexto).
o Vantagens: Modelos focados especificamente em classes
desequilibradas.
o Desvantagens: Podem requerer conhecimento profundo do
algoritmo e do domínio.
3. Prediction Post-processing
o Ajustar as previsões do modelo (por exemplo, via alteração de
limiares de decisão) para dar maior ênfase às classes minoritárias.
o Desvantagem: Pode tornar o modelo menos interpretável.
Avaliação
Utilizar métricas adequadas (AUC, Precision, Recall, F1, etc.).
Separar cuidadosamente dados de treino e teste para evitar
contaminações e enviesamentos.
Outlier Detection
Definição
Um outlier é uma instância que se desvia significativamente do restante
conjunto de dados, como se tivesse sido gerada por um processo diferente.
Tipos de outliers
1. Global outlier: Desvia-se globalmente dos restantes pontos.
2. Contextual (ou conditional) outlier: Desvia-se apenas num determinado
contexto.
3. Collective outlier: Um grupo de instâncias que, em conjunto, se desvia do
padrão do conjunto de dados.
Abordagens principais
1. Statistical Approaches
o Parametric methods: Assumem uma distribuição paramétrica (e.g.
Gaussiana).
o Non-parametric methods: Não assumem uma distribuição fixa à
partida (e.g. histogramas, kernel density estimation).
2. Proximity-Based Approaches
o Distance-based: Procura objetos cuja vizinhança não tenha
suficientes pontos “próximos”.
o Density-based: Identifica objetos com densidade local muito mais
baixa que a dos seus vizinhos (e.g. Local Outlier Factor, LOF).
3. Clustering-Based Approaches
o Considera outliers os pontos que não pertencem a nenhum cluster
ou que estão muito afastados do centro do cluster.
o Força: Não requer dados rotulados.
o Fraqueza: Eficácia depende do método de clustering escolhido e
pode ter um custo computacional elevado.
4. Classification-Based Approaches
o One-class model: Constrói-se um modelo (ex. one-class SVM) para
a classe “normal”.
o Semi-supervised learning: Combina clustering para separar
grandes grupos “normais” e pequenos grupos “outliers”, depois
aplica-se um modelo de uma classe.
o Isolation Forest: Técnica baseada em criar múltiplas árvores para
isolar pontos que potencialmente são outliers.
Coletivos (Collective Outliers)
Identifica grupos de instâncias em dados estruturados (ex. time series,
dados espaciais, grafos).
Pode transformar as subsequências ou subgrafos em objetos e aplicar
métodos convencionais de deteção de outliers ou usar modelos
específicos (ex. Markov models para time series).
Principais métodos de destaque
Robust Covariance (estatístico)
Local Outlier Factor (LOF) (density-based)
Isolation Forest (brute-force classification-based)
One-class SVM (one-class model)