Métodos baseados em árvores

Documentos relacionados
Gradiente descendente

Profs.: Eduardo Vargas Ferreira Walmes Marques Zeviani

Regressão Linear. Prof. Dr. Leandro Balby Marinho. Análise de Dados II. Introdução Regressão Linear Regressão Múltipla

Eduardo Vargas Ferreira

Aprendizado de Máquina. Combinando Classificadores

Profs.: Eduardo Vargas Ferreira Walmes Marques Zeviani

Christopher Bishop, Pattern Recognition and Machine Learning, Springer, 2006 capítulo 14

Aula 3: Random Forests

BERT: Melhorando Classificação de Texto com Árvores Extremamente Aleatórias, Bagging e Boosting

Mineração de Dados - II

Modelo de Regressão Múltipla

Thiago Marzagão 1. 1 Thiago Marzagão (Universidade de Brasília) MINERAÇÃO DE DADOS 1 / 21

Análise de Regressão Prof. MSc. Danilo Scorzoni Ré FMU Estatística Aplicada

Prevendo Desempenho dos Candidatos do ENEM Através de Dados Socioeconômicos

Agregação de Algoritmos de Aprendizado de Máquina (AM) Professor: Eduardo R. Hruschka Estagiário PAE: Luiz F. S. Coletta

Aula 8: Árvores. Rafael Izbicki 1 / 33

Árvores de Classificação e Regressão

SCC0173 Mineração de Dados Biológicos

Aula 2 Uma breve revisão sobre modelos lineares

Estatística e Matemática Aplicadas a Data Science. Diógenes Justo BM&FBOVESPA & Professor FIAP

Estratégias para Classificação Binária Um estudo de caso com classificação de s

Classificação e Predição de Dados - Profits Consulting - Consultoria Empresarial - Serviços SAP- CRM Si

SISTEMAS BASEADOS EM ENSEMBLES DE CLASSIFICADORES

Regressão Linear. Fabrício Olivetti de França. Universidade Federal do ABC

Aprendizado de Máquina

Classificação de dados em modelos com resposta binária via algoritmo boosting e regressão logística

Aprendizagem de Máquina

Árvore de Decisão. George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE

Seleção de Variáveis e Construindo o Modelo

Disciplina de Modelos Lineares

Regressão. PRE-01 Probabilidade e Estatística Prof. Marcelo P. Corrêa IRN/Unifei

Aprendizado Bayesiano

Tutorial básico de classificação em RapidMiner

Introdução a Sistemas Inteligentes

Tópicos Avançados em IA. Prof. Eduardo R. Hruschka

Análise dados de diagnóstico de câncer de mama

REGRESSÃO LINEAR Parte I. Flávia F. Feitosa

ESTATÍSTICA COMPUTACIONAL

Escola Superior de Agricultura Luiz de Queiroz Universidade de São Paulo

θ depende de um parâmetro desconhecido θ.

Algoritmos de Agrupamento - Aprendizado Não Supervisionado

Modelos de Regressão Linear Simples - parte III

EN3604 FILTRAGEM ADAPTATIVA

DCBD. Avaliação de modelos. Métricas para avaliação de desempenho. Avaliação de modelos. Métricas para avaliação de desempenho...

aula ANÁLISE DO DESEMPENHO DO MODELO EM REGRESSÕES

Introdução ao Data Mining Instituto Nacional de Estatística de Fevereiro de 2009

Modelos de Regressão Linear Simples - Erro Puro e Falta de Ajuste

Mestrado Profissionalizante em Finanças as e Economia Empresarial FGV / EPGE Prof. Eduardo Ribeiro Julho Setembro 2007

Transformações e Ponderação para corrigir violações do modelo

Método Simplex dual. Marina Andretta ICMC-USP. 24 de outubro de 2016

Weka. Universidade de Waikato - Nova Zelândia. Coleção de algoritmos de aprendizado de máquina para resolução de problemas de Data Mining

ANÁLISE DE REGRESSÃO

Roteiro. PCC142 / BCC444 - Mineração de Dados Avaliação de Classicadores. Estimativa da Acurácia. Introdução. Estimativa da Acurácia

Regressão linear simples

Avaliando Hipóteses. George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE

Correlação e Regressão

Métodos de Amostragem. Métodos de Amostragem e Avaliação de Algoritmos. Métodos de Amostragem. Métodos de Amostragem. Métodos de Amostragem

Classificação Automática de Gêneros Musicais

Transcrição:

Universidade Federal do Paraná Laboratório de Estatística e Geoinformação - LEG Métodos baseados em árvores Eduardo Vargas Ferreira

Introdução Árvore de decisão é o conjunto de regras que envolvem a estratificação ou segmentação do espaço de predição em regiões simples; Nesta seção vamos descrever os métodos baseados em árvores no contexto de regressão e classificação. 2

Exemplo: Hitters data set - Baseball salary Queremos prever o Salary dos jogadores baseado nos Years em que está na Major leagues e número de Hits no ano; Os salários mais baixos são codificados pelas cores azul e verde, e mais altos pelas cores amarelo e vermelho; 3

Exemplo: Hitters data set - Baseball salary 238 R 3 Hits R 1 117.5 R 2 1 4.5 24 Years 1 R 1 = {X Years < 4.5} R 2 = {X Years 4.5, Hits < 117.5} R 3 = {X Years 4.5, Hits 117.5} 4

Exemplo: Hitters data set - Baseball salary 238 Years < 4.5 R 3 Hits R 1 117.5 R 2 5.11 Hits < 117.5 1 4.5 24 Years 1 6.00 6.74 R 1 = {X Years < 4.5} R 2 = {X Years 4.5, Hits < 117.5} R 3 = {X Years 4.5, Hits 117.5} 5

Como o algoritmo funciona? O objetivo é encontrar os retângulos R 1,..., R J que minimiza a: SQRes = (y i ŷ R1 ) 2 + (y i ŷ R2 ) 2, i:x i R 1 (j,s) i:x i R 2 (j,s) em que R 1(j, s) = {X X j < s} e R 2(j, s) = {X X j s}. 238 R 3 Hits R 1 117.5 R 2 1 4.5 24 Years 1 6

Como o algoritmo funciona? Alto vício e baixa variância Baixo vício e alta variância 7

Cost complexity pruning Para cada valor de λ, temos uma subárvore T T 0, tal que SQRes λ = seja o menor possível. T m=1 i:x i R m (y i ŷ Rm ) 2 + λ T T indica o número de terminal nodes da árvore T ; R m é o retângulo correspondente ao m-ésimo terminal node; ŷ Rm é a média das observações dos dados de treino em R m. Selecionamos o valor ótimo, ˆλ, através de validação. Em seguida, obtemos a subárvore utilizando ˆλ. 8

Exemplo: Hitters data set - Baseball salary O erro mínimo na validação cruzada ocorre na árvore de tamanho 3. Mean Squared Error 0.0 0.2 0.4 0.6 0.8 1.0 Training Cross Validation Test 2 4 6 8 10 Tree Size 9

Exemplo: heart disease - HD Os dados contêm o diagnóstico de 303 pacientes com dores no peito: Yes: indica a presença de doença cardíaca; No: indica ausência de doença cardíaca; Os dados apresentam 13 preditores incluindo Age, Sex, Chol, e outras medidas de funções cardíacas e pulmonar; Thal:a Ca < 0.5 Ca < 0.5 Slope < 1.5 Oldpeak < 1.1 Chol < 244 MaxHR < 156 MaxHR < 145.5 No Yes No RestBP < 157 No MaxHR < 161.5 Yes No ChestPain:bc Chol < 244 Sex < 0.5 No No No Yes Age < 52 Thal:b ChestPain:a Yes No No No Yes RestECG < 1 Yes Yes Yes 10

MaxHR < 161.5 RestBP < 157 Exemplo: heart Chol < 244 disease - HD No Chol < 244 Sex < 0.5 MaxHR < 156 MaxHR < 145.5 No Yes No No Yes ChestPain:bc No No No Yes Age < 52 Yes No No Thal:b ChestPain:a No Yes RestECG < 1 Yes Yes Yes Após validação cruzada chegamos na árvore com seis terminal nodes; Error 0.0 0.1 0.2 0.3 0.4 0.5 0.6 Training Cross Validation Test MaxHR < 161.5 No No Ca < 0.5 ChestPain:bc Thal:a Yes Ca < 0.5 Yes 5 10 15 No Yes Tree Size Note que, em MaxHR temos duas respostas No. Isto se deve a um dos nós ser puro e o outro ser majoritariamente No. 11

Árvores versus modelos lineares Modelo linear Árvores 12

Prós e contras das Árvores de decisão Podem ser aplicadas em problemas de regressão e classificação; Lidam bem com dados faltantes; São simples e úteis para interpretação. Sendo muito bons nas etapas iniciais de um projeto; χ São mais simples do que deveriam. Por esse motivo, em termos de predição, não são competitivos com outras abordagens de aprendizado supervisionado; Mas, serve de base para outros métodos, como: Bagging; Random Forests; Boosting. 13

Ensembles 14

Ideia do Bootstrap 15

Bagging 16

Bagging Geramos B conjuntos de observações (bootstrapped). Treinamos o modelo a fim de obter a predição no ponto x; Em seguida, calculamos a média das predições (chamamos de bagging): ĥ bag (x) = 1 B B ĥ b (x). b=1 17

Random Forests 18

Random Forests No Random forests, para cada partição, temos uma seleção aleatória de m preditores, de um total de p (tipicamente, m p); Assim, forçamos com que diferentes preditores sejam escolhidos (decorrelating the trees). Se m = p, estaremos no método Bagging. 19

Exemplo: Heart data set Abaixo, o erro do teste como função de B. A linha tracejada representa o erro utilizando uma árvore somente; Error 0.10 0.15 0.20 0.25 0.30 Test: Bagging Test: RandomForest OOB: Bagging OOB: RandomForest 0 50 100 150 200 250 300 Number of Trees 20

Out-of-Bag Error Estimation 21

Métodos boosting 22

Qual a importância dos resíduos? 23

Qual a importância dos resíduos? Lembrando de regressão n (y i ȳ) 2 = i=1 } {{ } SQT n (ŷ i ȳ) 2 + i=1 } {{ } SQR n (y i ŷ) 2. i=1 } {{ } SQE E, geometricamente, temos Isso quer dizer que toda variabilidade não explicada pela regressão ficará no resíduo (variáveis e funções delas!). 24

Qual a importância dos resíduos? No exemplo abaixo, estamos avaliando a relação entre consumo de combustível e potência do automóvel. mpg = β 0 + β 1 (cavalo vapor) + ε Milhas por galão 10 20 30 40 50 Linear Resíduos 15 10 5 0 5 10 15 20 Gráfico de resíduos para o ajuste linear 323 330 334 50 100 150 200 Cavalo-vapor 5 10 15 20 25 30 Valores ajustados 25

Qual a importância dos resíduos? No exemplo abaixo, estamos avaliando a relação entre consumo de combustível e potência do automóvel. mpg = β 0 + β 1 (cavalo vapor) + β 2 (cavalo vapor) 2 + ε Gráfico de resíduos para o ajuste quadrático Milhas por galão 10 20 30 40 50 Linear Grau 2 Resíduos 15 10 5 0 5 10 15 334 155 323 50 100 150 200 Cavalo-vapor 15 20 25 30 35 Valores ajustados 26

Qual a importância dos resíduos? 27

Métodos boosting mpg = β 0 + β 1 (cavalo vapor) + residuo Milhas por galão 10 20 30 40 50 Linear Resíduos 15 10 5 0 5 10 15 20 Gráfico de resíduos para o ajuste linear 323 330 334 50 100 150 200 Cavalo-vapor 5 10 15 20 25 30 Valores ajustados residuo = β 2 (cavalo vapor) 2 + residuo2 mpg = β 0 + β 1 (cavalo vapor) + β 2 (cavalo vapor) 2 + residuo2 28

Métodos boosting mpg = β 0 + β 1 (cavalo vapor) + residuo Resíduos 15 10 5 0 5 10 15 20 Gráfico de resíduos para o ajuste linear 323 330 334 Milhas por galão 10 20 30 40 50 Grau 2 5 10 15 20 25 30 Cavalo-vapor 50 100 150 200 Cavalo-vapor residuo = β 2 (cavalo vapor) 2 + residuo2 mpg = β 0 + β 1 (cavalo vapor) + β 2 (cavalo vapor) 2 + residuo2 29

Adaptive Boosting (AdaBoost) 30

Adaptive Boosting (AdaBoost) O princípio básico do Boosting é propor um modelo básico (weak learner) e o aprimorá-lo em cada iteração. O processo consiste em filtrar os resultados corretos, e concentrar-se naqueles que o modelo não soube lidar; Nesse caso, os weak learners, são árvores de decisão com uma separação apenas (chamada de decision stumps). 31

Como o algoritmo funciona? 1 Inicie com ĥ(x) = 0 e r i = y i, para todo i dos dados de treino; 2 Para b = 1, 2,..., B, repita: a) Ajuste a árvore ĥ b com d divisões para os dados de treino (X, r); b) Atualize ĥ adicionando uma nova versão à árvore anterior: ĥ(x) ĥ(x) + αĥb (x). c) Atualize os resíduos, r i r i αĥb (x i ). 3 O modelo de saída fica então, B ĥ(x) = αĥ b (x). b=1 32

Exemplo simulado Considere o exemplo simulado, obtido a partir da função: ( x ) f (x) = 10 + 0, 05x + 2sin 10 33

Exemplo simulado O processo consiste em analisar o resíduo decorrente do modelo anterior e somar novas árvores, suprindo tais deficiências. 34

Adaptive Boosting (AdaBoost) A ideia é ponderar os erros para que nas próximas árvores eles tenham mais importância. Em seguida, combinar os classificadores. Não vamos entrar em detalhes teóricos da abordagem. Para o aluno interessado sugere-se Elements of Statistical Learning, capítulo 10. 35

Exemplo: Expressão gênica Os dados consistem na medida de expressão de 4.718 genes dos tecidos de 349 pacientes; Test Classification Error 0.05 0.10 0.15 0.20 0.25 Boosting: depth=1 Boosting: depth=2 RandomForest: m= p Cada paciente possui um marcador qualitativo (de 15 níveis): Normal; Ou 14 tipos de câncer; 0 1000 2000 3000 4000 5000 Number of Trees A forma de construção do boosting (baseado nas árvores anteriores) faz com que ele faça um bom trabalho mesmo com uma partição apenas. 36

Referências James, G., Witten, D., Hastie, T. e Tibshirani, An Introduction to Statistical Learning, 2013; Hastie, T., Tibshirani, R. e Friedman, J., The Elements of Statistical Learning, 2009; Lantz, B., Machine Learning with R, Packt Publishing, 2013; Tan, Steinbach, and Kumar, Introduction to Data Mining, Addison-Wesley, 2005; Some of the figures in this presentation are taken from An Introduction to Statistical Learning, with applications in R (Springer, 2013) with permission from the authors: G. James, D. Witten, T. Hastie and R. Tibshirani 37