APRESENTAÇÃO
DE APOIO
Data mining: entendendo o
potencial da mineração de dados
Fabiano Castello – Aula 01
Professores
Fabiano Castello Denise Bandeira
Professor Convidado Professora PUCRS
Professor e escritor, Fabiano Castello soma mais de 25 anos de Possui formação em Ciência da Computação pela PUCRS,
experiência corporativa nas áreas de Auditoria, Novas tecnologias, mestrado em Ciência da Computação pela UFRGS e doutorado
Inteligência Artificial e Blockchain. Ele é palestrante de diversos em Ciência da Computação Aplicada pela Unisinos. Possui vasta
temas relacionados à tecnologia e à auditoria no Brasil e no exterior, experiência na área com foco em Bancos de Dados, Sistemas de
além de consultor da cDataLab, empresa com foco em projetos de Informação, Desenvolvimento de Software e Aprendizado de
inteligência artificial. É associado à Inova Consulting e pesquisador na Máquina. Já atuou como professora e coordenadora de curso na
BB Chain, start-up focada em projetos ligados à blockchain e Unisinos e, atualmente, realiza estágio pós-doutoral na Escola
incubada na Escola Politécnica da Universidade de São Paulo Politécnica da PUCRS e no Instituto de Informática da UFRGS,
(POLI/USP). Iniciou sua carreira corporativa na Arthur Andersen e junto à equipe do projeto Inteligência Artificial aplicada à Saúde
atuou como executivo na Deloitte, Electrolux, Ambev, Oi e Grant (CIARS).
Thornton, com forte atuação nacional e internacional. Tem as
principais certificações internacionais de auditoria – CISA, CISM, CIA,
CCSA e CRMA, além de ser conselheiro certificado pelo Instituto
Brasileiro Governança Corporativa (IBGC).
Ementa da disciplina
Armazenamento e pesquisa em bases de dados. Técnicas, abordagens e
ferramentas de mineração de dados. A Mineração de Dados e suas utilizações em estudos
de casos reais.
nós poderíamos passar 2 aulas
apenas discutindo os nomes...
Fortino, A. (2023). Data mining and predictive analytics for business decisions: A case study approach.
DATA MINING ALGORITHMS AND ACTIVITIES. Chapter 2
Hair et al
Olson (2018) Han et al (2011) Fortino (2023)
(2009)
intro
BI, KDD & DM
“A Business Intelligence System” (IBM 1958)
H. P. Luhn, "A Business Intelligence System," in IBM Journal of Research and Development,
vol. 2, no. 4, pp. 314-319, Oct. 1958. doi: 10.1147/rd.24.0314
business intelligence and analytics (BI&A)
“BI&A systems provide support
for collecting and transforming
data and put particular
emphasis on data analysis with
the purpose of improving
decision making”
Chen et al., 2012; Davenport, 2006; Shanks et al., 2010
apud Kowalczyk, Martin. (2017). The Support of Decision Processes with Business Intelligence and
Analytics: Insights on the Roles of Ambidexterity, Information Processing and Advice.
DOI: 10.1007/978-3-658-19230-3.
KDD & DM
• são a mesma coisa?
• similares?
• como de relacionam?
DM é uma fase do processo de KDD
mas, na prática, muitas vezes são
usados de forma intercambiável
definições variam mas, de uma forma geral,
KDD the overall process of discovering
useful knowledge from data
DM a particular step in the KDD process.
data mining is the application of
specific algorithms for extracting
patterns from data.
source: Fayyad, U., Piatetsky-Shapiro, G., & Smyth, P. (1996). From Data Mining to Knowledge
Discovery in Databases. AI Magazine, 17(3), 37. [Link]
contexto parece confuso... mas não é!
BI&A artificial intelligence
KDD machine learning
DM deep learning
source: Fabiano Castello, adaptado de Brendan Tiernan (2012)
hierarquia
DIKW
where is the Life we have lost in living?
where is the wisdom we have lost in knowledge?
where is the knowledge we have lost in the information?
T.S. Elliot, 1934
“lançada para eternidade” da forma como a conhecemos
hoje por Russell Ackoff em 1989
source: Harvard Business Review, David Weinberger , 2010
hierarquia
DIKW
de para
data wisdom
actionable
signals
intelligence
como chegar lá é nosso próximo assunto...
o segredo é fazer de forma estruturada!
(técnicas, processos ou metodologias)
_ KDD
_ SEMMA
_ CRISP-DM
CRISP-DM
(cross industry standard process for data mining)
• uma das técnicas mais
utilizados em data mining, e
também considerada uma das
mais completas
• principais vantagens são poder
ser aplicada a qualquer tipo de
negócio e não ter dependência
de ferramenta específica para
ser executada.
CRISP-DM
business understand
• identificação do problema a ser
resolvido
• três artefatos
• background: explica contexto e o problema, e como o
projeto vai ser direcionado para solucioná-lo
• objetivo do projeto
• critério de sucesso: qual será a métrica para
determinar se o projeto atingiu o sucesso ou não.
CRISP-DM
data understanding
•coletar
•descrever
•explorar
•verificar a qualidade
CRISP-DM
data preparation
•fase crítica: criação do
“dataset”
•atividades:
• data selection
• data cleaning
• construct data
• integrating data
CRISP-DM
modeling
•selecting modeling
techniques
•designing tests
•building models
•assessing models
CRISP-DM
evaluation
•evaluating results
•reviewing the
process
•determining the
next steps
CRISP-DM
deployment
•planning deployment
•planning monitoring and
maintenance
•reporting final results
•reviewing final results
KDD
“there is an urgent need for a new
generation of computational theories
and tools to assist humans in extracting
useful information (knowledge) from the
rapidly growing volumes of digital data.”
Fayyad, U., Piatetsky-Shapiro, G., & Smyth, P. (1996)
KDD
(knowledge discovery in databases)
• talvez o mais famoso, ou mais conhecido do
“grande público”
• um dos métodos mais antigos existentes
• compreende uma fase chamada data mining
• não foca em questões de negócio ou geração de
modelos, mas sim na
descoberta de conhecimentos
a partir dos dados (padrões
ou “patterns”)
KDD
source: traduzido a partir de
Fayyad, U., Piatetsky-Shapiro, G., & Smyth, P. (1996). From Data Mining to Knowledge Discovery in Databases. AI Magazine
SEMMA
(Sample, Explore, Modify, Model e Assess)
• criada pelo SAS Institute
• semelhante ao CRISP-DM em muitos aspectos, mas, foca
principalmente nas tarefas de criação do modelo, sem o
protagonismo dos problemas de negócio
• principais steps: explorar informações
básicas dos dados, modificar e
transformar variáveis, gerar o modelo
e validá-lo
• SEMMA é útil para projetos de porte
menor
• contra: não considera a necessidade
do negócio
SEMMA
Fortino, A. (2023). Data mining and predictive analytics for business decisions: A case study approach.
source: Shafique, Umair & Qaiser, Haseeb. (2014). A Comparative Study of Data Mining Process Models (KDD, CRISP-DM and SEMMA)
International Journal of Innovation and Scientific Research. 12. 2351-8014.
problema de negócio
entender, limpar
e transformar dados 1
“modelar”: descobrir
padrões, fazer previsões
2
resultados para o negócio
source: Shafique, Umair & Qaiser, Haseeb. (2014). A Comparative Study of Data Mining Process Models (KDD, CRISP-DM and SEMMA)
International Journal of Innovation and Scientific Research. 12. 2351-8014.
independente da metodologia escolhida:
data exploration
data preprocessing
data transformation
mining
data exploration
foundation, data sources
“big data”
dados não-estruturados
qualquer tipo de dado: posts, imagens, áudio, vídeo, livros
maior necessidade de
maior complexidade,
dados semiestruturados
exemplos: XML e JSON
dados estruturados
recursos
tabelas; nosso dia a dia empresarial; em geral linhas e
colunas; bancos de dados relacionais
foundation, data sources
dados estruturados
tabelas; nosso dia a dia empresarial; em geral linhas e
colunas; bancos de dados relacionais
nossos exemplos vão focar em
dados estruturados
Um “parenteses” para falar sobre LLMs
J45 – Asma
Diabetes Melitus
I10 - Hipertensão essencial
Enxaqueca
Um “parenteses” para falar sobre LLMs
Laudos radiológicos
explorar os dados é fundamental
conhecer • tamanho dos dados
• tipos de variáveis
os dados • como os valores estão
distribuídos
validar • totalizações
os dados • missing values
• outliers
atributos, variáveis,
casos, “tuple”, características, features
observações
registros,
tabela
foundation, data formats
• numerical (continuous values: 0,5; 1,2; -1,55; idade)
• integer (integer values: 0, 1, -2; número de filhos)
• binary (dois estados: true/false; 1/0 ; aposentado)
• category (a finite set of possible values: estados BR)
• date (08/11/2019 19:45)
• string/text (texto comum: brasil, João Silva)
source: adaptado de Olson, D. (2018) Data Mining Models, Second Edition, Business Expert Press
visualização de dados
(data visualization ou dataviz)
é uma excelente forma
de explorar dados
Hans Hosling 200 países, 200 anos, 4 minutos (LegBR)
[Link]
great book!
Storytelling com Dados:
um Guia Sobre
Visualização de Dados
Para Profissionais de
Negócios
em Português
barato! Amazon ~R$50
a importância da visualização de dados:
4 conjuntos de dados diferentes, mesmos
números
• mesma média e variância de X
• mesma média de Y (até p2)
• mesma variância de y (até p3)
• mesma correlação (até p3)
• mesma regressão
y = 3,00 + 0,500x
(até p2 e p3)
source: Wikipedia, “Quarteto de Anscombe”
histogram,
gráfico de barras
• criado por william
Playfair há 200+ anos
• muito popular, usado
para comparar categorias.
fácil de interpretar e bastante
preciso
• podem ser usados também
para representar tendências
(mas mais entre períodos do
que para continuidade)
scatter plot,
gráfico de dispersão
• correlaciona duas variáveis
• pode ser usado para até quatro variáveis (tamanho e cor do ponto)
tree maps
• apesar de nosso cérebro ser péssimo para comparar áreas,
tree maps são excelentes para dar contexto.
• use como um gráfico auxiliar
uma forma sintética de
boxplot analisar estatística descritiva
de uma variável numérica
diagrama de caixa
“mediana” mediana é diferente de média! “mediana”
entre a mediana é o valor central do dataset entre a
mediana e
mediana e o o maior
menor número número
outliers: valores atípicos
mais informação sobre estatística descritiva? Veja wikipedia. completo e em português.
facets
• olhar análises combinadas pode dar
uma visão abrangente sobre o dataset
• é uma forma de mesclar categorias e
números
• matriz de
correlações de
variáveis
numéricas.
• importantíssimo
quando formos ver
técnicas de análise
multivariada
• diretamente
relacionado com
um importante
conceito:
multicolinearidade
antes de finalizar, uma dica sobre dataviz:
nunca mais faça um gráfico 3D!
usar 3D é exemplo de amadorismo em análise de dados!
3D
aparentemente charmosos, na verdade podem esconder partes
importantes de informação e prejudicar o entendimento por
conta de cores, sombras e inclinações de eixos.
algumas ferramentas (não exaustivo)
ótima opção mas
precisa ter skills de
programação
alteryx automatiza
todo o processo [Link]
prévio do mining
FCA2 FC auto analyser
ferramenta gratuita para análise de dados
• morfologia: registros, campos,
tipos dos campos
• campos texto: registros,
duplicações, missing,
frequência das top "n"
categorias
• registros, registros zerados,
missing, soma, média, desvio,
máximos e mínimos, amplitude,
quartis (dois conjuntos, o
tabelas de entrada
FCA2
resultados segundo desconsiderando
XLS, CSV e outros automáticos zeros).
• gráficos para cada variável
numérica: boxplot e histograma
FCA2 FC auto analyser
ferramenta gratuita para análise de dados
• ferramenta gratuita de produtividade para analisar dados estruturados
em Excel, CSV e diversos outros formatos
• roda em Python
• mantida pela comunidade
quer ajudar a desenvolver a ferramenta?
[Link]
data preprocessing:
cleaning, integration,
reduction, quality
missing values
valores ausentes em datasets são comuns: é importante entender a
quantidade e a gravidade (ex.: missing keys) para definir a estratégia.
cuidado: nem sempre um missing é um erro (ex.: CNH em análise de crédito)
missing values: estratégias
1. ignorar os registros (eliminar do dataset)
2. completar manualmente (“time consuming”,
não assegura padrão)
3. usar uma constante global para todos os
casos • essas estratégias trazem
4. usar as medidas de tendência central viés
“global” do atributo • 3 a 6: ordem de
complexidade
5. usar as medidas de tendência central do
• 6 é a mais popular, mas
atributo com base em classes presentes em precisa ser algo que
outro atributo realmente importa na
6. usar o valor mais provável (ex.: regressão ou análise
inferência)
outliers: usar mesmas estratégias de missing
duplicados: o desafio é saber porque
estão lá, e se são erros ou não.
importante: computador, por definição, é uma
máquina burra!
joão
≠
joao
noise: erros aleatórios
o maior desafio de data mining é separar noise e signal
Silver, N. (2012) The Signal and the Noise: Why So Many Predictions Fail-but Some Don’t. Penguim Books
noise: estratégias
1. binning: tornar valores contínuos
em valores discretos; “amaciar”
usando valores de tendência
central do bin
2. regression: achar os valores mais
prováveis de uma variável em
função de outra (veremos com
detalhes em mining)
3. outliers: filtrar outliers e utilizar
estratégias de missing values
data integration
• datasets que montamos para minerar em geral são
uma base única, mas raramente parte-se de uma única
base
• para integrar bases de dados dois conceitos são
importantes
• entendimento das variáveis segundo unique rules,
consecutive rules, and null rules (também é técnica de
validação)
• como as bases de relacionam (chaves, modelo E/R)
data integration
• unique rules: os valores de um determinado atributo
devem ser únicos, não podem se repetir (ex.: códigos de
identificação em geral)
• consecutive rules: não pode haver missing values entre
o valor mínimo e o valor máximo, bem como também
precisam ser únicos (ex.: numero de NF)
• null rules: especifica condições específicas em que
valores ausentes são admissíveis
left outer right outer
full outer
inner
left inner right inner