introduction to data mining and machine learning
DESCRIPTION
In this presentation I introduce the areas of Data Mining and Machine Learning. More information is given in https://sites.google.com/site/gladyscjaprendizagem/program/data-mining-machine-learningTRANSCRIPT
Aprendizagem Computacional Gladys Castillo, UA
Capítulo 1
Introduction to Data Mining and Machine Learning
2
Aprendizagem
O processo de aprendizagem humano pode ser definido como o modo como os seres adquirem novos conhecimentos, desenvolvem competências e mudam o comportamento por médio do estudo ou da experiencia
E os computadores, como aprendem com a experiência?
PCs aprendem a apreciar e reconhecer obras de artes
“A equipe do Departamento de Ciência da Computação da Universidade de Haifa, em Israel, desenvolveu um novo programa matemático que vai tornar os computadores capazes de saber se uma obra de arte é original de Leonardo Da Vinci, como o vendedor afirma, ou foi feita por algum artista menos renomado. Com a inovação, os pesquisadores "ensinaram" o computador a identificar obras de arte de diferentes artistas, depois que o programa transformou suas pinturas de natureza, pessoas, flores e outras cenas em uma série de símbolos matemáticos, senos e co-senos. Depois que o computador "aprende" sobre alguns trabalhos de cada artista, o programa capacita o computador a dominar o estilo individual de cada artista e a identificar o autor quando tiver acesso a outras obras que a máquina jamais tenha visto antes….”
uma notícia de tecnologia publicada e em http://tecnologia.terra.com.br/ (16/11/07)
Aprender da experiência = generalizar conceitos a partir de casos particulares
Aprendizagem Computacional Gladys Castillo, UA
3
Machine Learning
"Imagine computers learning from medical records to
discover emerging trends in the spread and treatment
of new diseases, houses learning from experience to
optimize energy costs based on the particular usage
patterns of their occupants, or personal software
assistants learning the evolving interests of their users
to highlight especially relevant stories from the online
morning newspaper. A successful understanding of how
to make computers learn would open up many new
uses for computers..."
“Machine Learning is concerned with the question of how to construct computer programs that automatically improve
with experience”
Extraído de Tom Mitchell, Does Machine Learning Really Work? (1997)
Aprendizagem Computacional Gladys Castillo, UA
4
Computer Science vs. Machine Learning
Software for sensor-base perception tasks
Speech Recognition Computer Vision : face recognition, etc. “All of us can easily label which photographs
contain a picture of our mother, but none of us can write down an algorithm to perform this task. Here ML is the software development method of choice simply because it is relatively easy to collect labeled training data, and relatively ineffective to try writing down a successful algorithm”
Tom Mitchell, Machine Learning (2006)
“Whereas Computer Science has focused primarily on how to manually programcomputers, Machine Learning focuses on the question of how to get computers to program themselves (from experience plus some initial structure)”
Problemas complexos de CC que não podem ser programados manualmente
Aprendizagem Computacional Gladys Castillo, UA
5
Traditional AI vs. Machine Learning
Como construir um programa computacional (PC) para jogar damas?
AI desenvolve um PC dotado de acções inteligentes programado manualmente
existe uma base de conhecimento (desenvolvida por espertos) manipulada por mecanismos de inferência, problem solving, etc.
ML desenvolve um PC dotado de acções inteligentes que aprende
com a experiência. Como aprende? off-line: aprende a partir de exemplos de jogos anteriores
treinando a jogar com espertos, contra outros oponentes ou contra ele próprio alternando etapas de treino-teste para ajustar o jogo
on-line: aprende inicialmente a partir de exemplos e logo durante o jogo continua a aprender, adaptando o jogo ao adversário
Aprendizagem Computacional Gladys Castillo, UA
6
Nichos de Machine Learning
I. Problemas complexos que não podem ser programados manualmente
Como pode um robot aprender a navegar baseado na sua própria experiência?
Como pode um PC aprender a jogar damas baseado na sua própria experiência?
II. Data Mining Como pode um PC aprender quais futuros pacientes vão
responder melhor a certos tipos de tratamentos baseado na informação dos registos de dados médicos?
III.Sistemas Adaptativos Como podem os sites de vendas on-line como Amazon.com ou
motores de busca como Google, Yahoo, etc. aprender quais são os interesses e preferências dos seus utilizadores baseado na informação submetido por eles e outros utilizadores?
Tom Mitchell, Machine Learning (1997)
PC = Programa Computacional
Aprendizagem Computacional Gladys Castillo, UA
7
I. Problemas ComplexosAprender a Reconhecer Peões
http://www.gavrila.net/Computer_Vision/Research/Pedestrian_Detection/pedestrian_detection.html
O sistema foi integrado num Mercedes-Benz E-Class limousine
Pedestrians are detected in a range 5-25m and up to 4m lateral, on each side of vehicle. It does so at processing rates of 7-15 Hz, allowing vehicle speeds up to 40 km/h.
Machine Learning Task
Aprendizagem Computacional Gladys Castillo, UA
8
II. Sistemas AdaptativosUm Sistema de Recomendação para e-Learning
Aprender a descobrir as preferências dos alunos por determinado tipo de recurso educacional (acetatos, tutorías, etc.) conhecendo o seu estilo de aprendizagem e os recursos seleccionados. O objectivo é personalizar o sistema apresentando aqueles recursos mais apropriados ao seu perfil e preferências.
Appropriate
Input Perception Understanding Processing Learning Activity
Multimedia Format
Discovering Student Preferences in E-LearningCristina Carmona1, Gladys Castillo, Eva Millán
Um classificador Bayesiano é usado como modelo de decisão
Aprendizagem Computacional Gladys Castillo, UA
9
9714 registos de mulheres grávidas, cada registo clínico contêm 215 atributos
Patient103 time=1Age: 23FirstPregnancy: no Anemia: noDiabetis: noPreviousPrematureBirth – noUltrasound:?Eff ective C-Section:?…
Patient103 time=1Age: 23FirstPregnancy: no Anemia: noDiabetis: noPreviousPrematureBirth – noUltrasound:?Eff ective C-Section:?…
III. Data MiningProblema de Predição em Medical Data Mining
IF no previous vaginal delivery AND Abnormal 2nd Trimester Ultrasound AND Mal presentation at admisssion THEN Probability of Emergency C-Section is 0.6
Patient103 time=2Age: 23FirstPregnancy: no Anemia: noDiabetis: yesPreviousPrematureBirth – noUltrasound: abnormalEff ective C-Section:?…
Patient103 time=2Age: 23FirstPregnancy: no Anemia: noDiabetis: yesPreviousPrematureBirth – noUltrasound: abnormalEff ective C-Section:?…
Patient103 time=nAge: 23FirstPregnancy: no Anemia: noDiabetis: noPreviousPrematureBirth – noUltrasound:?Eff ective C-Section: yes…
Patient103 time=nAge: 23FirstPregnancy: no Anemia: noDiabetis: noPreviousPrematureBirth – noUltrasound:?Eff ective C-Section: yes…
Registos Médicos
ML Método
ModeloPredictivo
Aprender que tipos de pacientes apresentam alto risco de ser submetidas a cesariana a partir dos dados dos registos médicos
Uma das 18 regras aprendidas
Aprendizagem Computacional Gladys Castillo, UA
10
Data Mining
Data Mining is the process of using historical databases to improve subsequent decision making.
Data mining is the search for relationships and global patterns that exist
in large databases but are `hidden' among the vast amount of data, such
as a relationship between patient data and their medical diagnosis. These
relationships represent valuable knowledge about the database and the
objects …
in M.Holshemier e Arno Siebes, Data Mining: the Seach for Knowledge in Databases (1991)
in Tom Mitchell, Does Machine Learning Really Work? (1997)
O processo não trivial de extrair conhecimento útil e compreensível,
previamente desconhecido, de grande volumes de dados
Aprendizagem Computacional Gladys Castillo, UA
11
KDD vs. Data Mining
"The basic problem addressed by the KDD process is one of mapping low-level data (which are typically too voluminous to understand and digest easily) into other forms that might be more compact
(e.g.. a short report), more abstract (e.g., a descriptive
approximation or model of the process that generated the data), or
more useful (e.g., a predictive model for estimating the value of future cases). At the core of the
process is the application of specific data-mining methods for pattern
discovery and extraction" in Usama Fayyad et al. From Data Mining to Knowledge Discovery (1996)
Knowledge Discovery (KDD) e Data Mining estudam métodos e técnicas para extracção de conhecimentos útil de grande volume
de dados. Alguns consideram Data Mining apenas o processo central no processo geral de KDD.
Aprendizagem Computacional Gladys Castillo, UA
12
Data Mining vs. Machine Learning
Data Mining (DM): O processo não trivial para extrair conhecimento útil e compreensível, previamente desconhecido, de grande volumes de dados
1. Centra-se no desenvolvimento de algoritmos de aprendizagem. Os modelos induzidos podem não ser sempre facilmente interpretáveis (ex: “caixa preta” como as redes neuronais)
2. Utiliza conjunto de dados mais pequenos para testar e avaliar o desempenho dos métodos e algoritmos propostos
Machine Learning (ML): Métodos e técnicas computacionais que permitem aos computadores aprender com a experiencia criar programas capazes de induzir conhecimentos a partir de informação não estruturada (dados)
duas áreas da Inteligência Artificial
1. Centra-se no desenvolvimento de algoritmos para extrair padrões de dados especialmente interpretáveis.
2. Explora grandes volumes
de informação, geralmente geradas do mundo real.
Machine LearningData Mining
Aprendizagem Computacional Gladys Castillo, UA
13
Pattern Recognit.
Algoritmos
OptimizaçãoDa Matemática: Estatística: a mãe de DM
métodos clássicos de análise (testes de hipóteses, etc.), EDA, visualização
Programação Matemática: muito dos algoritmos de aprendizagem resolvem um problema de busca da solução óptima num espaço de possíveis soluções
Da Informática: Algoritmos e Estruturas de Dados
Bases de Dados
Relação com Outras Áreas
Machine Learning
Bases de Dados
Artifi
cia
l Inte
ligên
cia
Data Mining
Estatística
Informática
Matemática
Aprendizagem Computacional Gladys Castillo, UA
14
Fases na Extracção do Conhecimento De Bases de Dados
Modelação: identificar o domínio e a aplicação de data mining Selecção de dados : seleccionar um conjunto de dados apropriado Pre-processamento: limpar os dados (tratar valores desconhecidos, etc) Transformação: redução de dimensionalidade, selecção de atributos,
discretização, etc Data Mining: definir a tarefa; escolher o modelo e algoritmo de aprendizagem
ex: tarefa: classificação, modelo: árvores de decisão, algoritmo de aprendizagem: C4.
Avaliação e Interpretação: avaliar modelo induzido; interpretar os resultados Decisão: usar o conhecimento extraído para tomada de decisão
Aprendizagem Computacional Gladys Castillo, UA
Aprendizagem Computacional Gladys Castillo, UA
Comecemos pelos dados…
16Aprendizagem Computacional 2007-2008 , Gladys Castillo
Evolução das Bases de Dados
1960s: criação de bases de dados Information Managment System (IMS) e Database Managment Systems (DBMS)
1970s: surgem os modelos relacionais de base de dadosRelational Database Managent Systems (RDBMs), ( lista de RDMSs )
1980s: surgem modelos mais sofisticados modelos de bases de dados orientados ao objectos (OODBMS), lista de
OODBMs Application-oriented DBMS (bases de dados geográficas, científicas, etc.)
1990s: data warehousing (OLAP), WEB databases (surge DATA
MINING)
2000s: o século da informação fluxo constante de dados (data streams)
sensor networks, web logs, mobile SMS, computer network traffic WEB 2.0 (mensagens e logs gerados de blogs, redes sociais, jornais on-line) Sistemas Globais de Informação
17
muita informação oculta nos dados que pode ser de grande utilidade
analistas humanos podem levar semanas para descobrir informação
muito dos dados gerados, como regra, não são analisados nunca
0
500.000
1.000.000
1.500.000
2.000.000
2.500.000
3.000.000
3.500.000
4.000.000
1995 1996 1997 1998 1999
novos dados (TB) desde 1995
Nºde analystas
From: R. Grossman, C. Kamath, V. Kumar, “Data Mining for Scientific and Engineering Applications”
Foso entre Dados e Analistas
Aprendizagem Computacional Gladys Castillo, UA
18
Data Mining vs. Análise de Dados
Os dados são gerados e armazenados a enormes velocidades (GB/hour) a partir das mais variadas fontes:
Bussiness: e-commerce, compras em supermercados, bancos (transacções com cartão de crédito)
Ciência: bioinformática, medicina, dados espaciais (geográficos)
telescópios sondando o céu, microarrays de AND gerando dados de expressão genética, Simulações científicas gerando terabytes de dados
Sociedade: on-line jornais, redes sociais, SMS, etc. Data mining permite: Descobrir padrões interessantes nos dados Classificar ou agrupar os dados Formular hipóteses ou modelos capazes de predizer
futuros comportamentos
As técnicas tradicionais de análise de dados podem não ser suficientes para processar grandes volumes de
informação
Aprendizagem Computacional Gladys Castillo, UA
19
Características de Data Mining
Grande volume de dados: tera-bytes de informação os métodos devem ser altamente escaláveis
Alta dimensionalidade: dados muito complexos microarrays de ADN, Web data, dados espaciais, etc.
Data streams: fluxo contínuo de dados mudanças de comportamentos, modelos adaptativos
Novas e sofisticadas aplicações com complexas estruturas de informação:
WEB 2.0 (redes sociais, blogs, personalization); mobile applications (aplicações personalizadas para telemóveis) bio-informática (milhares de dados de microarrays de ADN) dados espaciais (Google Earth, sistemas geográficos)
Aprendizagem Computacional Gladys Castillo, UA
20
Bases de Dados Relacionais
Tid Refund Marital Status
Taxable Income Cheat
1 Yes Single 125K No
2 No Married 100K No
3 No Single 70K No
4 Yes Married 120K No
5 No Divorced 95K Yes
6 No Married 60K No
7 Yes Divorced 220K No
8 No Single 85K Yes
9 No Married 75K No
10 No Single 90K Yes 10
Atributos
Ob
jecto
s
dados = registos de uma tabela relacional
atributos = colunas = campos das bases de
dados
Dados: Colecção de objectos descritos através de um conjunto de atributos
Atributo: Uma propriedade ou característica de um objecto
ex: o estado civil de uma pessoa (casado, solteiro, etc.)
Aprendizagem Computacional Gladys Castillo, UA
21
BD
s de R
egis
tos
Aprendizagem Computacional Gladys Castillo, UA
22
Web DataConteúdo Página HTML
Estrutura de Navegação: Links
Registo de Utilização
Aprendizagem Computacional Gladys Castillo, UA
23
Dados
Ord
enados
Aprendizagem Computacional Gladys Castillo, UA
24
Data-Oriented Data Mining
Text Mining - extracção de conhecimento de documentos de textos
Web Mining - extracção de conhecimento de dados da WEB
Web Content Mining (explora conteúdos das páginas HTML: texto, images, videos, etc.)
Web Structure Mining (explora estrutura de navegação) Web Usage Mining ( explora registo de navegação dos utilizadores)
Market Basket Analysis - extracção de conhecimento de registos de
vendas ou transacções bancárias Cada compra (carrinho de compras) ou transacção são representados por um conjunto de items
Spatial data mining - extracção de conhecimento de bases de dados espaciais: dados geográficos, cartografia, etc.
Relational data mining - extracção de conhecimento de bases de bases de dados relacionais. Em vez de usar uma única tabela relacional são consideradas multiples tabelas relacionais como fonte de informação
Streaming data mining - extracção de conhecimento de grandes conjuntos de dados contínuos (data stream). Exemplo são os dados gerados pelas aplicações de telemóveis, processamento de dados enviados pelos satélites, etc.
Aprendizagem Computacional Gladys Castillo, UA
25
Application-Oriented Data Mining
Biodata mining - extracção de conhecimento dos dados gerados das aplicações da bioinformática. Ex: dados de sequencias de ADN, de microarrays de ADN, de estudos de proteínas, etc.
Medical data mining - extracção de conhecimento dos dados gerados das aplicações da medicina
Financial data mining - extracção de conhecimento dos dados gerados das aplicações financieras
Educational data mining - extracção de conhecimento dos dados gerados das aplicações de e-learning
Aprendizagem Computacional Gladys Castillo, UA
Aprendizagem Computacional Gladys Castillo, UA
Dos dados ao Conhecimento
Base de Dados: Registo de Compra dos Clientes
Conhecimento:
Os clientes localizados no norte tem tendência para adquirir mais e mais produtos de tipo p1, p2 e p3 e menos p4 e p5.
Quando eles compram p1 e p2 também compram 30% daquele volume no produto p10
Os clientes localizados na margem Sul, estão a mudar a sua estrutura de compras para derivados do alumínio e a diminuir a componente plásticos. Os seus pagamentos são cada vez mais demorados.
27
Dos Dados ao Modelo (II)
Evaluate & iterate
Aprendizagem Computacional Gladys Castillo, UA
28
Modelos de Data Mining
Modelos preditivos: predizem valores de variáveis de interesse (variável resposta) a partir do valor de outras variáveis (preditoras)
Classificação (supervisada):a variável resposta (classe) é discreta (nominal ou ordinal)
Regressão: a variável resposta é continua (regressão linear, regression trees, etc)
Modelos descritivos: Regras de Associação: identificam
padrões que resumem os dados Clustering: agrupamento de objectos
(casos) homogéneos ou seja com características(atributos) similares
Aprendizagem Computacional Gladys Castillo, UA
29
Classificação Supervisada vs. Não Supervisada
Classificação não supervisada: dadas N instâncias caracterizadas pelos seus atributoso objectivo é: obter grupos (clusters) de exemplos com alta variabilidade entre eles e baixa variabilidade dentro de cada um
Classificação supervisada: dadas N instâncias caracterizadas pelos seus atributos (variáveis preditoras) e um rótulo (variável classe) o objectivo é: aprender dos dados um classificador capaz de predizer com alta fiabilidade as classes de futuros exemplos
instâncias = objectos = exemplos
Aprendizagem Computacional Gladys Castillo, UA
30
Classificação vs. Clustering
Os objectos são caracterizados por um conjunto de atributos
Classificação Rótulos: existem para alguns
objectos (conjunto de treino) Objectivo: determinar uma “regra”
que com alta fiabilidade assine classes aos novos pontos
Aprendizagem: supervisada
Clustering Não rótulos Agrupar os objectos em grupos
baseados em “que perto estão um de outro”
Objectivo: identificar padrões em dados
Aprendizagem: Não supervisada
Atributo X
Atr
ibu
to Y
Objectos
Aprendizagem Computacional Gladys Castillo, UA
31
Classificação Supervisada
Tid Refund MaritalStatus
TaxableIncome Cheat
1 Yes Single 125K No
2 No Married 100K No
3 No Single 70K No
4 Yes Married 120K No
5 No Divorced 95K Yes
6 No Married 60K No
7 Yes Divorced 220K No
8 No Single 85K Yes
9 No Married 75K No
10 No Single 90K Yes10
categoric
al
categoric
al
continuous
class
Refund MaritalStatus
TaxableIncome Cheat
No Single 75K ?
Yes Married 50K ?
No Married 150K ?
Yes Divorced 90K ?
No Single 40K ?
No Married 80K ?10
TestSet
Training Set
ModelLearn
Classifier
Aprendizagem Computacional Gladys Castillo, UA
32
Exemplo: Atribuição de Vagas
O classificador induzido é usado para classificar novos exemplos
Executamos um algoritmo de aprendizagem para induzir um classificador (neste caso baseado em regras) a partir do conjunto de treino.
Existe uma função alvo (classificador f:X C) oculta nos dados e queremos “descobrir” qual é
Figura dos acetatos do livro Data Mining, Concepts and Techniques, Han & KamberAprendizagem Computacional Gladys Castillo,
UA
33
Modelos de Classificação Supervisada
Árvores de decisãoQuinlan, 1986; Breiman y col. 1984
Classificadores baseados em regrasClark y Nibblet, 1989; Cohen, 1995; Holte, 1993
Classificadores k–NNCovert & Hart, 1967; Dasarathy, 1991
Naïve BayesDuda & Hart, 1973
Redes BayesianasPearl, 1988
Redes NeuronaisMcCulloch & Pitts, 1943
Máquinas de suporte vectorialCristianini & Shawe–Taylor,2000
Aprendizagem Computacional Gladys Castillo, UA
34
Árvore de Decisão
Exemplo: Prever a atribuição ou não de um crédito bancário
Idade
Conta poupança
sim
>= 30 < 30
Estado civil
c s
nãonão sim
Empréstimon s
não
n s
Idade
Conta poupança
sim
>= 30 < 30
Estado civil
c s
nãonão sim
Empréstimon s
não
n s
Aprendizagem Computacional Gladys Castillo, UA
35
k-Vizinhos mais Próximos
Conjunto de Treino
Novoexemplo
Determinar Distância
Escolher k of the “nearest” exemplos
Ideia básica: Se ele anda como um pato, grasna como um pato, então é provavelmente um pato
É um pato !!!
Aprendizagem Computacional Gladys Castillo, UA
36
IRIS Data (Fisher, 1936)
3 classes setosa versicolor virginica
4 atributos comprimento da pétala largura da pétala comprimento da sépala largura da sépala
Problema clásico de classificação das flores iris.
On-line no UCI Machine Learning Repository http://www.ics.uci.edu/~mlearn/MLRepository.html
O conjunto de dados contêm 50 exemplos por cada classe
Aprendizagem Computacional Gladys Castillo, UA
37
Classificadores Lineares e Não LinearesIris Data (Fisher, 1936)
Discriminante Linear Árvore de Decisão
Gaussian mixture Kernel method (SVM)
setosa
x setosaO virginica+ versicolor
Figure from Norbert Jankowski and Krzysztof Grabczewski
Aprendizagem Computacional Gladys Castillo, UA
38
RNAs - Modelo Caixa Preta (Black-Box)
X1 X2 X3 Y1 0 0 01 0 1 11 1 0 11 1 1 10 0 1 00 1 0 00 1 1 10 0 0 0
X1
X2
X3
Y
Black box
Output
Input
X1
X2
X3
Y
Black box
w1
t
Outputnode
Inputnodes
w2
w3
Conjunto de Treino
Aprender um Perceptron dos dados significa aprender os pesos que melhor ajustem o modelo oculto nos dados
Aprendizagem Computacional Gladys Castillo, UA
39
Modelos DescritivosRegras de Associação
{Milk,Diaper} {Beer} (s=0.4, c=0.67){Milk,Beer} {Diaper} (s=0.4, c=1.0){Diaper,Beer} {Milk} (s=0.4, c=0.67){Beer} {Milk,Diaper} (s=0.4, c=0.67) {Diaper} {Milk,Beer} (s=0.4, c=0.5) {Milk} {Diaper,Beer} (s=0.4, c=0.5)
TID Items
1 Bread, Milk
2 Bread, Diaper, Beer, Eggs
3 Milk, Diaper, Beer, Coke
4 Bread, Milk, Diaper, Beer
5 Bread, Milk, Diaper, Coke
Aprendizagem Computacional Gladys Castillo, UA
40
Aplicações
atributos
exemplos de treino
10
102
103
104
105
Bioinformatics
Ecology
OCRHWR
MarketAnalysis
TextCategorization
Machine Vision
Syst
em d
iagn
osis
10 102 103 104 105
Figura dos acetatos “Introduction to Machine Learning”, Isabelle Guyon (on-line em videolectures.net)
Aprendizagem Computacional Gladys Castillo, UA
41Aprendizagem Computacional Gladys Castillo,
UA
References Tom M. Mitchell, Machine Learning , Chapter 1 , McGrau Hill (1997)
Tom M. Mitchell, Does Machine Learning Really Work? (1997) on-line em: http://www.aaai.org/AITopics/assets/PDF/AIMag18-03-3-article.pdf
P. Tan, M.Steinbach, V.Kumar, Introduction to Data Mining, Chapter 1 Some slides and pictures herein used was adapted from the slides available on-line in the book site http://www-users.cs.umn.edu/~kumar/dmbook/index.php
J. Han. Morgan Kaufmann, Data Mining - Concepts and Techniques, Chapter 1
Videoconference “Introduction to Machine Learning”, Isabelle Guyon, on-line em: videolectures.net
Usama Fayyad, Gregory Piatetsky-shapiro, Padhraic Smyth: “ From Data Mining to Knowledge Discovery in Databases”, AI Magazine, 1996 on-line em: http://www.kdnuggets.com/gpspubs/aimag-kdd-overview-1996-Fayyad.pdf