Aula 3: Random Forests

Documentos relacionados
Árvores de Classificação e Regressão

Aula 1: k-nearest Neighbors

Bootstrap Aggregation (Bagging)

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

Árvores de decisão e seus refinamentos na predição genômica da resistência à ferrugem alaranjada em café arábica

APRENDIZAGEM DE MÁQUINA

Aprendizado de Máquina (Machine Learning)

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

Aprendizado de Máquina

Aula 5: k-means. Paulo C. Marques F. 1 de Abril de Aula ministrada no Insper. Insper Aula 5: k-means 1 de Abril de / 19

Múltiplos Classificadores

Aprendizado de Máquina. Combinando Classificadores

Métodos baseados em árvores

Aprendizagem de Máquina

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

ÁRVORES DE DECISÃO PROFA. MARIANA KLEINA

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

Processo Dirichlet. Paulo C. Marques F. Seminário relâmpago ministrado no Insper. 8 de Abril de 2016

Minera c ao de Dados Aula 6: Finaliza c ao de Regress ao e Classifica c ao Rafael Izbicki 1 / 33

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

Aula 8: Árvores. Rafael Izbicki 1 / 33

Aprendizado de Máquina (Machine Learning)

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

Créditos. SCC0173 Mineração de Dados Biológicos. Aula de Hoje. Introdução. Classificação III: Árvores de Decisão

Métodos baseados em árvores

Métodos de reamostragem

Inteligência nos Negócios (Business Inteligente)

Aula 6. Aula de hoje. Aula passada

Conceitos de Aprendizagem de Máquina e Experimentos. Visão Computacional

Boas Maneiras em Aprendizado de Máquinas

AULA 7 - Inferência em MQO: ICs e Testes de

Mineração de Dados em Biologia Molecular

Aprendizagem de Máquina

Descoberta de Conhecimento em Bancos de Dados - KDD

Prof.: Eduardo Vargas Ferreira

Aprendizado de Máquina (Machine Learning)

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

Modelos Múltiplos. João Gama Diferentes algoritmos de aprendizagem exploram:

Aprendizagem de Máquina

TÉCNICAS DE AMOSTRAGEM

Inteligência Artificial. Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo]

SUPPORT VECTOR MACHINE - SVM

CLASSIFICADORES ELEMENTARES

2284-ELE/5, 3316-IE/3

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

Busca em Regiões Ortogonais

> Princípios de Contagem e Enumeração Computacional 1/10

Fundamentos de Inteligência Artificial [5COP099]

Grafos. Exemplo de árvore geradora mínima. Notas. Notas. Notas. Notas. Árvores espalhadas mínimas. Como construir uma árvore geradora miníma

INF 1771 Inteligência Artificial

Árvores de Decisão. Sistemas Inteligentes

Inteligência Computacional [2COP229]

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

Rafael Izbicki 1 / 38

Classificação: Árvores de Decisão e k-nn. Eduardo Raul Hruschka

SCC Capítulo 10 Métodos de Amostragem e Avaliação de Algoritmos

INF 1771 Inteligência Artificial

5 Modelos de previsão

Otimização Combinatória - Parte 4

Reconhecimento de Padrões

Aprendizado de Máquina

Aprendizado de Máquinas

Aprendizagem de Máquina - 2. Prof. Júlio Cesar Nievola PPGIa - PUCPR

Inferência Estatistica

CC-226 Aula 07 - Estimação de Parâmetros

Classificação: Árvores de Decisão e k-nn. Eduardo Raul Hruschka

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

Aprendizagem Bayesiana

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

Eduardo Vargas Ferreira

Árvores de decisão. Marcelo K. Albertini. 17 de Agosto de 2015

36ª Olimpíada Brasileira de Matemática GABARITO Segunda Fase

Fundamentos de Aprendizagem Estatística: Regressão

MAT 461 Tópicos de Matemática II Aula 8: Resumo de Probabilidade

7 Resultados. F i (x j ) = j=1

ANÁLISE DE BIG DATA E INTELIGÊNCIA ARTIFICIAL PARA A ÁREA MÉDICA

Aprendizado de Máquina (Machine Learning)

Inteligência Artificial

Arvores de decisão. O que é uma árvore de decisão? Cap.6 Árvores de Decisão V 3.0, V.Lobo, EN/ISEGI, Victor Lobo

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

SCC Capítulo 9 Indução de Árvores de Decisão

Profs.: Eduardo Vargas Ferreira Walmes Marques Zeviani

Reconhecimento de Padrões. Reconhecimento de Padrões

SCC Capítulo 10 Métodos de Amostragem e Avaliação de Algoritmos

Introdução ao Reconhecimento. Prof. Dr. Geraldo Braz Junior

Arvores de decisão. O que é uma árvore de decisão? Victor Lobo

Classificação: 1R e Naïve Bayes. Eduardo Raul Hruschka

Probabilidades. Wagner H. Bonat Elias T. Krainski Fernando P. Mayer

Aprendizagem de Máquina

Arvores de decisão. Outras árvores. Outra maneira de ver árvores. Extracção de regras (a partir de árvores) Vantagens das árvores (1)

Créditos. SCC0173 Mineração de Dados Biológicos. Aula de Hoje. Desempenho de Classificação. Classificação IV: Avaliação de Classificadores

3 Modelos e metodologias comparadas

Métodos Não Paramétricos

Árvores de Decisão. Sarajane M. Peres. março de 2015

Árvores Genéricas de Busca

Aprendizado de Máquina

Transcrição:

Aula 3: Random Forests Paulo C. Marques F. Aula ministrada no Insper 26 de Fevereiro de 2016 Insper Random Forests 26 de Fevereiro de 2016 1 / 18

Árvores de classificação Estamos no mesmo contexto de aprendizagem supervisionada da primeira aula. Temos um vetor de p 1 preditoras X = (X 1,...,X p ) R p (por exemplo, peso e maior comprimento); E uma resposta Y {1,...,c} (por exemplo, salmões e robalos). Uma diferença importante é que as árvores de classificação não dependem da escolha de uma métrica no espaço das preditoras. Precisamos apenas que seja possível ordenar cada variável preditora. As árvores de classificação fazem parte dos assim denominados métodos não métricos de classificação. Insper Random Forests 26 de Fevereiro de 2016 2 / 18

Terminologia Na árvore binária abaixo, o nó F é a raiz, e os nós A, C, E e H são as folhas (ou nós terminais). A árvore tem quatro níveis de altura. A profundidade do nó interno D é igual a dois. Insper Random Forests 26 de Fevereiro de 2016 3 / 18

Regiões determinadas pela árvore de classificação Na figura abaixo (página 306 do ESL) temos uma árvore de classificação T e a partição do espaço de preditoras nas regiões correspondentes. Cada nó não terminal de T define um split (divisão) em uma das preditoras. Cada folha de T corresponde a uma região retangular R j. Insper Random Forests 26 de Fevereiro de 2016 4 / 18

Como classificar? Suponha que a árvore de classificação T do slide anterior nos foi dada ex machina. Suponha que temos dados de treinamento (x 1,y 1 ),...,(x n,y n ) R 2 {0,1}, para i = 1,...,n. Tendo em mãos um novo x n+1 R 2, inicialmente determinamos a qual região R j pertence este vetor de preditoras x n+1. Note que não precisamos examinar todas as regiões: basta descer a árvore a partir da raiz para saber a qual região x n+1 pertence! Isso é uma tremenda vantagem do ponto de vista computacional. Uma vez determinada a região R j a qual x n+1 pertence, classificamos este exemplar como sendo da classe mais frequente entre os dados de treinamento pertencentes à mesma região R j (voto da maioria). Insper Random Forests 26 de Fevereiro de 2016 5 / 18

Formalizando o classificador Dados de treinamento (x i,y i ) R p {1,...,c}, para i = 1,...,n. A árvore de classificação T define as regiões retangulares R 1,...,R m que particionam o espaço das preditoras R p. Seja n j = n i=1 I R j (x i ) o número de preditoras dos dados de treinamento pertencentes à região R j, para j = 1,...,m. A fração de exemplos da classe k na região R j é igual a ˆp k (R j ) = 1 I n {k} (y i ), j {i :x i R j } para k = 1,...,c. A classe predita para a região R j é c j = argmax k ˆp k (R j ), que é a proporção de exemplos (dados de treinamento) na região R j que são da classe predominante. n Classificador: ϕ(x n+1 ) = c j I Rj (x n+1 ). j=1 Insper Random Forests 26 de Fevereiro de 2016 6 / 18

Como construir uma árvore de classificação? Como escolher cada uma das divisões ( splits )? Lembrando que em cada divisão precisamos escolher uma das preditoras e o ponto de separação. Que altura deve ter a árvore de classificação? Note que se a árvore for binária e balanceada, então em cada nível temos aproximadamente 2 nível 1 nós e para cada um deles podemos escolher uma das p preditoras para fazer a divisão. Que algoritmo utilizar? Insper Random Forests 26 de Fevereiro de 2016 7 / 18

Algoritmo CART (1) CART: Classification and Regression Trees. Breiman el al. (1984). O algoritmo CART começa na raiz da árvore e efetua uma divisão, criando dois nós no próximo nível da árvore. Depois disso, descemos para o primeiro nível da árvore e repetimos o procedimento para os dois nós que foram criados. Continuamos da mesma maneira nos níveis seguintes. Em cada etapa, escolhemos a divisão que produz a maior queda no erro de classificação. O algoritmo CART cresce uma árvore alta e poda alguns dos seus ramos no final do processo. Insper Random Forests 26 de Fevereiro de 2016 8 / 18

Algoritmo CART (2) Formalmente, o algoritmo CART começa na raiz da árvore e define as regiões disjuntas R 1 = {X R p : X j t} e R 2 = {X R p : X j > t}. Utilizando os dados de treinamento, fazemos a divisão escolhendo ĵ e ˆt tais que (ĵ,ˆt) = argmin (j,t) ((1 ˆp c 1 (R 1 ))+(1 ˆp c2 (R 2 ))). Insper Random Forests 26 de Fevereiro de 2016 9 / 18

Algoritmo CART (3) Procedemos de maneira análoga para os novos nós criados, até atingirmos algum critério de parada; por exemplo, quando tivermos apenas dados de treinamento de uma certa classe na nova região gerada. Este procedimento gera uma árvore T 0 que será podada: algumas de suas folhas serão colapsadas aos seus nós pais. Para uma árvore de classificação T, denote por T o número de suas folhas e, para α 0, defina T C α (T) = (1 ˆp cj (R j ))+α T. j=1 O algoritmo CART escolhe a árvore T que minimiza C α (T), sendo que α é escolhido por alguma forma de validação cruzada (geralmente, 5-fold ou 10-fold). Note que há uma forma de regularização contida na definição de C α, uma vez que estamos penalizando árvores com muitas folhas. Insper Random Forests 26 de Fevereiro de 2016 10 / 18

Exemplo: classificação de e-mails em spam e ham (1) Exemplo discutido na página 300 do ESL. Queremos classificar e-mails em duas categorias: spam (lixo eletrônico) e ham (legítimo). Temos 4601 e-mails, sendo que 1813 são marcados como spam; foram definidas 57 variáveis preditoras. Temos 48 preditoras quantitativas com as porcentagens das ocorrências de palavras específicas, tais como business, address, internet, free etc. Mais 6 preditoras quantitativas com as porcentagens das ocorrências de caracteres específicos, tais como ;, $,! etc. O tamanho médio das sequências ininterruptas de letras maiúsculas (CAPAVE). O tamanho da maior sequência ininterrupta de letras maiúsculas (CAPMAX). A soma dos comprimentos das sequências ininterruptas de letras maiúsculas (CAPTOT). Insper Random Forests 26 de Fevereiro de 2016 11 / 18

Exemplo: classificação de e-mails em spam e ham (2) Página 314 do ESL. Insper Random Forests 26 de Fevereiro de 2016 12 / 18

Exemplo: classificação de e-mails em spam e ham (3) Página 315 do ESL. Insper Random Forests 26 de Fevereiro de 2016 13 / 18

Detour: Bootstrap Suponha que Z 1,...,Z n são variáveis aleatórias independentes e identicamente distribuídas (IID) com função de distribuição F. Função de distribuição empírica: ˆF n (t) = n i=1 I (,t](z i ). Pela Lei Forte dos Grandes Números, temos que ˆF n (t) F(t) quase certamente, quando n. Seja M = g(z 1,...,Z n ) a mediana amostral. Suponha que queremos estimar Var[M] a partir dos dados Z 1,...,Z n. A idéia do bootstrap (Efron) é substituir F por ˆF n, considerar Z 1,..., Z n IID com função de distribuição ˆF n, definir M = g( Z 1,..., Z n ), e aproximar Var[M] por Var[ M], uma vez que podemos calcular Var[ M] (em geral, via método de Monte Carlo). O bootstrap tem uma interpretação bayesiana (Rubin) em termos de um processo Dirichlet (Ferguson) centrado na função de distribuição empírica. Insper Random Forests 26 de Fevereiro de 2016 14 / 18

Bagging Método de comitê ou ensemble criado por Breiman (um dos autores do CART). Bagging = Bootstrap Aggregation. A partir dos dados de treinamento (x 1,y 1 ),...,(x n,y n ), geramos dados bootstrap ( x 1,ỹ 1 ),...,( x n,ỹ n ) e construímos uma árvore de classificação via algoritmo CART. Repetindo este processo, produzimos uma floresta de árvores de classificação ˆϕ 1,..., ˆϕ B. A classificação de um novo exemplar x n+1 é feita pelo voto da maioria das B árvores de classificação da floresta. Insper Random Forests 26 de Fevereiro de 2016 15 / 18

Boosting Método de comitê ou ensemble criado por Schapire em 1990. Celebrado e premiado como uma das maiores descobertas de Machine Learning de todos os tempos (Prêmio Gödel de 2003). A idéia é partir de um classificador mediano e ir construindo classificadores melhores atribuindo pesos maiores aos exemplos que forem classificados incorretamente. Por exemplo, o algoritmo CART pode ser modificado para atribuir pesos a cada um dos dados de treinamento, redefinindo w i I {k} (y i ) ˆp k (R j ) = {i :x i R j } {i :x i R j } w i. No final do processo, a classificação é feita pelo conjunto dos classificadores obtidos. Insper Random Forests 26 de Fevereiro de 2016 16 / 18

Random Forests Método de comitê ou ensemble criado por Breiman. É uma variação do Bagging. A diferença é que, ao construir cada árvore de classificação da floresta a partir dos dados bootstrap, em cada split do CART nos restringimos a um subconjunto aleatório de m preditoras. Breiman (2001): Random Forests may also be viewed as a Bayesian procedure. Although I doubt this is a fruitfull line of exploration, if it could explain the bias reduction, I might become more of a Bayesian. O entendimento teórico de todos os mecanismos envolvidos nas Random Forests é um problema em aberto, com uma série de resultados parciais bastante recentes. Veja, por exemplo, Denil et al. (2014). Todos os métodos de classificação discutidos nesta aula se aplicam mutatis mutandis a problemas de regressão. Insper Random Forests 26 de Fevereiro de 2016 17 / 18

Comparação usando os dados de spam Página 589 do ESL. Insper Random Forests 26 de Fevereiro de 2016 18 / 18