AGA 0505- Análise de Dados em Astronomia I 9. Aprendizado ...
Transcript of AGA 0505- Análise de Dados em Astronomia I 9. Aprendizado ...
Introdução aplicações exercícios
AGA 0505- Análise de Dados em Astronomia I
9. Aprendizado de Máquina: Princípios Gerais
Laerte Sodré Jr.
1o. semestre, 2021
1 / 21
Introdução aplicações exercícios
aula de hoje:aprendizado de máquina = machine learning (ML)
1. inteligência artificial, machine learning edeep learning
2. dados3. aprendizagem4. tipos de aprendizagem5. modelos paramétricos e
não-paramétricos6. generalização e overfitting
7. aplicações de ML:7.1 regressão7.2 classificação7.3 estimativa de densidades7.4 cluster analysis7.5 redução de dimensionalidade
a medida da inteligência é a habilidade de mudar
Albert Einstein
2 / 21
Introdução aplicações exercícios
Aprendizado de Máquina em Astronomia
ML: aprendizado a partir de dados
3 / 21
Introdução aplicações exercícios
dados em ML
• em geral trabalhamos com tabelas(dados na forma de vetores, matrizes,tensores)• tabelas: linhas, colunas, células• linhas: objetos• colunas: propriedades/medidas/atributos
dos objetos - features• célula: valor de uma certa propriedade
para um dado objeto
espaço de dados:um datum é um ponto no espaço de dados
existem regularidades no espaço de dados!
4 / 21
Introdução aplicações exercícios
como resolver um problema específico no computador?
exemplo: estrela ou galáxia?• programação clássica
• escreve-se um programa com umconjunto de regras
• muitas vezes é difícil estabelecer asregras!
• aprendizado de máquina• sistemas que aprendem a partir de
exemplos• aprendizagem por tentativa e erro
5 / 21
Introdução aplicações exercícios
o que é aprendizagem?
• O sistema aprende a partir de exemplos:
• o algoritmo tem um conjunto deparâmetros que são ajustadosconforme novos exemplos sãoapresentados
• Os ajustes objetivam promover oaprendizadoex.: minimizar o erro das previsões naclassificação estrela/galáxia
• aprendizado = otimização do modelo
6 / 21
Introdução aplicações exercícios
aprendizagem em ML
• um problema comum: estimar uma variável ya partir de um conjunto deoutras variáveis, x: y = f (x;w)x e y podem ser escalares, vetores,tensores...
• um algoritmo de ML promove ummapeamento de x para y: equivalente aimplementar uma função com parâmetros w
• aprendizado: determinação de w(= otimização de um modelo)
• algoritmos de ML diferentes implementamdiferentes funções e estratégias deaprendizagem
• ML implica em inferência de parâmetros!
• métodos bayesianos e frequentistas
7 / 21
Introdução aplicações exercícios
tipos de aprendizado
aprendizado supervisionado
• temos variáveis de entrada e saída, x ey, e o algoritmo aprende a mapear x emy a partir de exemplos x de um conjuntode treinamento onde os valores de y sãoconhecidos (‘targets’)
• classificação: y é uma variávelcategórica: ’estrela’, ‘galáxia’, ’detectado’
• regressão: y é um número real, comoredshift, metalicidade estelar, idade
aprendizado não-supervisionado• temos dados x e o objetivo é identificar
estruturas ou propriedades interessantesnos dados• cluster analysis• estimativa de densidades• redução de dimensionalidade
8 / 21
Introdução aplicações exercícios
tipos de aprendizado
aprendizado auto-supervisionado• Tipo de aprendizado supervisionado
sem “intervenção humana”(∼aprendizado não-supervisionado)• autoencoders: o algoritmo aprende o
input
aprendizado com reforço• Um agente aprende ações que
maximizam o sucesso ou a recompensa:veículos autônomos, jogo de Go
9 / 21
Introdução aplicações exercícios
modelos paramétricos e não-paramétricos
• modelos paramétricos:uma forma funcional com um conjuntofinito de parâmetros w• a predição de uma nova observação, x,
depende só de w, não dos dados:• estima-se os parâmetros a partir dos
dados: P(w|D)• faz-se a predição em x só com w:
y = f (x;w)
exemplo: regressão linear• a complexibilidade dos modelos é
limitada; modelos de “baixaflexibilidade”
• modelos não-paramétricos:“sem suposições” sobre os dados
• não assume nenhuma forma funcional:o mapeamento depende apenas dosdadosexemplo: k-NN
• “métodos flexíveis”
• atenção: métodos não-paramétricostêm parâmetros!
10 / 21
Introdução aplicações exercícios
generalização
• modelos são treinados com dados de umconjunto de treinamento
• como se comportam com novos dados?
• bons modelos devem fazer boas previsões
• bons modelos devem generalizar bem!
• em geral se divide os dados em 3 partes:conjuntos de treinamento, validação e teste
• conjunto de treinamento: usado para ajustaros parâmetros do modelo
• conjunto de validação: monitora oaprendizado do conjunto de treinamento
• conjunto de teste: avalia o desempenho domodelo- não deve ser usado no treinamentoou validação
https://en.wikipedia.org/wiki/Training,_validation,_and_test_sets11 / 21
Introdução aplicações exercícios
generalização
• conforme o algoritmo aprende, o erro nosconjuntos de treinamento e validaçãodiminuem
• após um certo ponto ótimo, o erro noconjunto de treinamento continua a cair, maso erro do conjunto de validação começa aaumentar
• esse ponto ótimo maximiza a generalização
12 / 21
Introdução aplicações exercícios
generalização
• parando o aprendizado antes ou depoisdesse ponto ótimo leva a:• underfitting: o algoritmo não aprende o
suficiente, ou• overfitting: o algoritmo começa a
aprender o ruído do conjunto detreinamento
13 / 21
Introdução aplicações exercícios
aplicações de ML
aplicações:• classificação• regressão• estimativa de densidades• cluster analysis• redução de dimensionalidade• sistemas de recomendação• recuperação de informações• robótica e visão computacional• jogos• detecção de anomalias/fraudes• séries temporais
a fauna:
• regressão, regressão logística
• árvores
• naive bayes
• k-nn
• support vector machines- SVM
• random forest & bagging
• boosting
• redes neurais
• ... 14 / 21
Introdução aplicações exercícios
aplicações de ML: regressão
• regressão: y = f (x;w)
• y é uma variável contínuaqueremos estimar um valor contínuo• exemplo: estimativa de redshifts
fotométricos a partir da fotometria de umobjeto• algoritmos: regressão multi-linear, redes
de neurônios artificiais, regressão comkernel, k-nn, random forest,...
15 / 21
Introdução aplicações exercícios
aplicações de ML: classificação
• classificação: y = f (x;w)
• y é uma variável categórica ou discretaqueremos estimar classes (binárias oumulti-classes)• exemplo: classificação de um objeto
como estrela ou galáxia• algoritmos: regressão logística, árvores
de decisão, k-nn, redes de neurôniosartificiais, random forest ...
16 / 21
Introdução aplicações exercícios
aplicações de ML: estimativa de densidades
• objetivo: modelagem da distribuição dosdados em um espaço de dados
• inferência de uma função de distribuiçãode probabilidades (PDF)
• algoritmos paramétricos: modelos demisturas gaussianas (GMM), ...
• algoritmos não paramétricos:estimadores de densidade com kernels(KDE), ...
17 / 21
Introdução aplicações exercícios
aplicações de ML: cluster analysis
• objetivo: identificação de grupos/clustersno espaço de dados• clusters: objetos com propriedades
similares• técnica não-supervisionada: os clusters
não são conhecidos a priori• diferente da classificação, que é uma
atividade supervisionada e onde osobjetos são associados a classespré-definidas• algoritmos: K-means, métodos
hierárquicos
18 / 21
Introdução aplicações exercícios
aplicações de ML: redução de dimensionalidade
• X: dados em D dimensões• queremos uma nova representação de
X, que chamaremos de Y, em d << Ddimensões
X = {x1, x2, ..., xD} −→ Y = {y1, y2, ..., yd}
• embedding: uma estrutura matemáticaestá contida dentro de outra• útil para compressão de dados e
visualização• método linear: PCA• métodos não-lineares: LLE, isomap,
autoencoders, t-SNE...19 / 21
Introdução aplicações exercícios
exercícios
1. O arquivo spec100cl.dat contém modelos para as mesmas 100 galáxias do arquivospec100c.dat, mas incluindo tanto o contínuo e linhas de absorção, quanto linhas deemissão.1.1 Examine os dados fazendo figuras com alguns espectros.1.2 Verifique quais são as linhas de emissão mais importantes na região coberta por esses
espectros.1.3 Faça uma análise desses dados com PCA e verifique como muda a variância associada às
primeiras componentes principais em relação ao caso sem as linhas (ver R9.html).1.4 Examine a reconstrução dos espectros nesse caso.1.5 Use o pacote dimRed e compare a compressão de dados obtida com PCA e kPCA.
20 / 21
Introdução aplicações exercícios
Referências
Recursos adicionais em R:• https://machinelearningmastery.com/machine-learning-in-r-step-by-step/• https://www.datacamp.com/community/tutorials/machine-learning-in-r• https://www.analyticsvidhya.com/blog/2016/02/complete-tutorial-learn-data-science-
scratch/• https://www.machinelearningplus.com/machine-learning/caret-package/
21 / 21