Inteligência Artificial I

Slides:



Advertisements
Apresentações semelhantes
DISTRIBUIÇÕES AMOSTRAIS
Advertisements

Construção de listas de decisão Os tópicos anteriores tratam de indução de conceitos que podem ser descritos usando uma única região de decisão Neste tópico.
Inteligência Artificial I
Inteligência Artificial
Inteligência Artificial
Inteligência Artificial I
Universidade Federal de Campina Grande – UFCG Centro de Engenharia Elétrica e Informática – CEEI Departamento de Sistemas e Computação – DSC Máquina de.
Teste de Software.
Mineração de Dados Avaliação de Classificadores
HAC MD -junho/ Noções de algoritmos e estudo de casos das principais tarefas de Mineração de dados.
VALIDADE Pontifícia Universidade Católica de Goiás Departamento de Psicologia Avaliação, Métodos e Medidas Profª. Ms. Juliany Gonçalves Guimarães.
Aprendizado de Máquina
Redes Neurais Artificiais
Perceptron Simples Algoritmo do Bolso com catraca
Inteligência Artificial I
Aprendizado de Máquinas
Computação Evolutiva: Programação Genética
WAR STORY Stripping Triangulations Luciana Oliveira e Silva
Carolina Fonseca Neumar Ribeiro
Aprendizagem a partir de observações
Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA2.
INTRODUÇÃO À PROGRAMAÇÃO
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
Sistemas Inteligentes
Buscas em Grafos Prof. André Renato 1º Semestre/2012
3. Árvore de Decisão.
T ÓPICOS DE I.A. Métodos de Busca Busca em Espaços de Estado Prof. Mário Dantas.
Aprendizado Baseado em Instâncias – Algoritmo k-NN
Classificação. Classificação: Atribuição a uma classe (rótulo de um atributo categórico). Classifica dados (constrói um modelo) baseado em um conjunto.
Capítulo 10 Funções polinomiais slide 1
Algorítmos e estrutura de dados III
Redes Neurais Prof. Alex F. V. Machado.
Busca com informação e exploração
Introdução e Busca Cega
Indução de Árvore de Decisão
DSC/CCT/UFCG Projeto de Redes Neurais Apresentação Parcial do Projeto Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação.
Árvores de Decisão: supervisionado, simbólico, não incremental (?)
Algoritmos e Estruturas de Dados I – Recursão
Tópicos Avançados em Inteligência Artificial
Algoritmos e Estruturas de Dados I – Recursão
O Processo de KDD Data Mining SUMÁRIO - AULA1 O processo de KDD
Marcus Sampaio DSC/UFCG. Marcus Sampaio DSC/UFCG Etapas do Processo.
1 Árvores de Decisão Marcílio Souto DIMAp/UFRN. 2 Árvores de Decisão – ADs (1/4) zForma mais simples: yLista de perguntas  respostas “sim” ou “não” yHierarquicamente.
Projeto Final MCI 2004 Filtragem de s Agente de Classificação de SPAM.
ANÁLISE ESTATÍSTICA II
Mineração de Dados: Classificação e Predição
Inteligência Artificial I
Faculdade Pernambucana - FAPE Setembro/2007
Prof. Anne Magály de Paula Canuto
Fundamentos de linguagens de programação
Regressão e Previsão Numérica.
Universidade Federal Fluminense Faculdade de Medicina Mestrado Profissional em Saúde Materno-Infantil 2011 BIOESTATÍSTICA-aula 2 Prof. Cristina Ortiz Valete.
Prof. Alexandre Monteiro Recife
Engenharia de Software
Sumário 1 SQL Embutida 2 Processamento de Consultas
Inteligência Artificial I
Inteligência Artificial I
Inteligência Artificial I
Paradigmas de Mineração de Dados
Aprendizado de Máquinas
Busca Competitiva Disciplina: Inteligência Artificial
Feature Learning for Image Classification via Multiobjective Genetic Programming Seminários de Inteligência Artificial Felipe de Paula Wanderley Barros.
Metodologia da Pesquisa em Ensino de Ciências I
Algoritmo de Transportes Objecto de Aprendizagem Manuel Pina MarquesDEIG
Aprendizagem Simbólica
Mineração de Dados Classificação Felipe Carvalho – UFES 2009/2.
Mineração de Dados (Data Mining)
Busca Heurística Prof. Valmir Macário Filho. 2 Busca com informação e exploração Capítulo 4 – Russell & Norvig Seção 4.1 Estratégias de Busca Exaustiva.
Inferência 1:Estimação de Parâmetros Relembrando o Teorema Central do Limite Da aula anterior: a) Os estimadores da média e da s 2 são não viciados e de.
Transcrição da apresentação:

Inteligência Artificial I Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Inteligência Artificial I Aprendizagem (Parte II) Prof.a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br Carga Horária: 60 horas

Aprendizagem Tópicos Aprendizagem Árvores de decisão

INDUÇÃO por ÁRVORES de DECISÃO Indução mediante árvores de decisão - uma das formas mais simples de algoritmos de aprendizagem e também de muito sucesso. Entrada: um objeto ou situação descrito por um conjunto de propriedades ou atributos; Saída: uma decisão. Árvore de decisão: formada por um conjunto de nós de decisão, perguntas, que permitem a classificação de cada caso.

INDUÇÃO por ÁRVORES de DECISÃO Aprendizagem de uma árvore de decisão com exemplos: Situações em que se têm exemplos previamente classificados com regras desconhecidas que se pretendem aprender (descobrir). Essas classificações podem ter sido feitas por um especialista que queremos imitar ou traduzir em medidas difíceis ou caras de obter (por exemplo, medidas realizadas por testes destrutivos). Pode-se substituir o especialista por uma árvore de decisão. Aprendizagem, Estimação, Treinamento: Partindo de exemplos, "adivinhar" a árvore. Árvore de Decisão: Conjunto de “nós de decisão” e “folhas” que implementam um modelo de classificação.

INDUÇÃO por ÁRVORES de DECISÃO A partir de um conjunto de propriedades, decide sim ou não. Representação de árvores de decisão Cada nó interno testa um atributo Cada ramo corresponde a um valor do atributo Cada folha atribui uma classificação

INDUÇÃO por ÁRVORES de DECISÃO Exemplo - descrito pelos valores dos atributos e o valor do predicado meta. Valor do predicado meta - chamado classificação do exemplo. Se o predicado meta é verdadeiro para algum exemplo, tem-se o exemplo positivo, caso contrário exemplo negativo. O conjunto completo de exemplos é chamado conjunto de treinamento.

Expressividade de árvores de decisão Qualquer função booleana pode ser escrita como uma árvore de decisão.

O problema com a Ad trivial Algoritmo de aprendizagem em árvore de decisão (Ad): A idéia é testar o atributo mais importante – aquele que faz a maior diferença para a classificação de um exemplo. Obter a classificação correta com pequeno nº de testes = caminhos curtos e árvore pequena. Limitação: A árvore memoriza as observações. Ela não extrai qualquer padrão dos exemplos e, assim, não podemos esperar que ela esteja apta a extrapolar para exemplos não vistos antes.

Expressividade de árvores de decisão Árvores de decisão servem para alguns tipos de funções e não são boas para outros. Infelizmente, não existe uma espécie de representação que seja eficiente para todos os tipos de funções.

INDUÇÃO por ÁRVORES de DECISÃO EXEMPLO no domínio do restaurante: O objetivo é aprender uma definição para o predicado meta Esperará, em que a definição é expressa como uma árvore de decisão.

Exemplo Restaurante ... Exemplo: Esperar ou não uma mesa em um restaurante? Atributos disponíveis: Alternativa: há um outro restaurante apropriado por perto? Bar: o restaurante tem uma área de bar confortável para esperar? Sex/Sab: verdadeiro às sextas e sábados Faminto: Estamos com fome? Clientes: Quantas pessoas estão no restaurante? Preço: A faixa de preços do restaurante Chovendo: Está chovendo do lado de fora? Reserva: Fizemos uma reserva? Tipo: Qual o tipo do restaurante? Espera estimada: A espera estimada pelo gerente

Exemplo Restaurante ... Clientes? Bar? Sex/Sab? Reserva? Faminto? Alternativa? EsperaEstimada? Chovendo? Não Sim Nenhum alguns cheio >60 30-60 10-30 0-10 Não Sim Não Sim Não Sim Não Sim Não Sim Não Sim

Expressividade de árvores de decisão Qualquer hipótese de árvore de decisão específica para o predicado meta VaiEsperar pode ser vista como uma asserção da forma: ∀s VaiEsperar(s)  (P1(s) v P2(s) v ... v Pn(s)) Cada condição Pi(s) é uma conjunção de testes que pode corresponder a um caminho da raiz até uma folha da árvore com resultado positivo. A árvore pode ser representada por uma conjunção de implicações individuais que correspondem aos caminhos que vão da raiz até o nó folha Sim.

Expressividade de árvores de decisão Não é possível utilizar árvores de decisão para representar testes que se referem a dois ou mais objetos diferentes ∃ r2 Perto(r2, r) ^ Preço(r, p) ^ Preço(r2, p2) ^ MaisBarato(p2, p)

Conjunto de treinamento para o exemplo do restaurante Alt Bar Sex Fam Cli Pre Chu Res Tipo Tem Meta X1 Sim Não Alg $$$ Fra 0-10 X2 Che $ Tai 30-60 X3 Ham X4 10-30 X5 >60 X6 $$ Ita X7 Ne X8 X9 X10 X11 X12

Aplicação do algoritmo de aprendizagem Ex Alt Bar Sex X1 Sim Não X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 Meta Sim 1 3 4 6 8 12 Não 2 5 7 9 10 11 alternativa? sim não 1 4 12 2 5 10 3 6 8 7 9 11 Sex/Sab? Bar? sim não sim não 4 12 5 9 10 1 3 6 8 2 7 11 3 6 12 7 9 10 1 4 8 2 5 11

Casos a considerar na escolha de um novo atributo Se existem alguns exemplos positivos e alguns negativos, escolha o melhor atributo para dividi-los; Se todos os exemplos restantes forem positivos (ou negativos), terminamos; Se não resta nenhum exemplo, nenhum exemplo deste tipo foi observado, retornamos a maioria do nó pai; Não resta nenhum atributo mas há exemplos positivos e negativos – descrições iguais com classificações diferentes = ruído nos dados.

Função APRENDIZAGEM-EM-AD (exemplos, atributos, padrão) retorna uma ad entradas: exemplos, conjunto de exemplos atributos, conjunto de atributos padrão, valor-padrão para o predicado de objetivo se exemplos é vazio então retornar padrão senão se todos os exemplos têm a mesma classificação então retornar a classificação senão se atributos é vazio então retornar VALOR-DA-MAIORIA(exemplos) senão melhor <- ESCOLHER-ATRIBUTO(atributos, exemplo) árvore <- uma nova ad com teste de raiz melhor m <- VALOR-DA-MAIORIA(exemplosi) para cada valor vi de melhor faça exemplosi <- {elementos de exemplos com melhor = vi) subárvore <- APRENDIZAGEM-EM-AD(exemplosi,atributos-melhor, m) adicionar uma ramificação a árvore com rótulo vi e subárvore subárvore retornar árvore

Árvore resultante da aplicação do algoritmo Clientes? Faminto? Não Sim Tipo? Nenhum alguns cheio Sex/sab? Não Sim Fra Ita Tai Ham Não Sim O algoritmo poderia encontrar uma Ad diferente para o mesmo conjunto de treinamento? Qual seria?

A árvore resultante É diferente da árvore original. Mas a hipótese concorda com todos os exemplos. E é consideravelmente mais simples do que a árvore original. Chovendo e Reserva ficaram de fora porque a árvore não necessita destes para classificar os exemplos. Mas nunca viu um caso de espera de 0-10 min e o restaurante cheio Para um caso no qual faminto é falso a Ad informa que não devemos esperar.

Escolha de testes de atributos Esquema de aprendizagem da Ad Projetado para minimizar a profundidade da árvore final Idéia: escolher o atributo que melhor fornece uma classificação exata dos exemplos Atributo perfeito: divide os exemplos em conjuntos que são todos positivos ou todos negativos Clientes não é perfeito, mas é “bastante bom” Atributo inútil: deixa os conjuntos de exemplos com a mesma proporção do conjunto original Tipo é um atributo “realmente inútil”

O algoritmo de aprendizagem É um bom algoritmo se ele produz hipóteses que classificam (predizem) bem exemplos ainda não vistos A predição é boa se ela se torna verdadeira Como avaliar a qualidade de uma hipótese? Podemos checar sua previsão com uma classificação correta que já conhecemos Conjunto de exemplos conhecidos = conjunto de testes

Metodologia para avaliação de desempenho de um algoritmo Coletar um grande conjunto de exemplos Dividi-lo em dois conjuntos disjuntos Conjunto de treinamento e conjunto de teste Aplicar o algoritmo ao conjunto de treinamento, gerando uma hipótese h Medir a quantidade de exemplos do conjunto de teste classificados corretamente por h Repetir as etapas 2 a 4 para Diferentes tamanhos de conjuntos de treinamento Diferentes conjuntos de treinamento de cada tamanho

Curva de aprendizagem É traçada com o conjunto de dados obtidos da metodologia anterior. Conjunto de treinamento aumenta => qualidade da previsão aumenta. Bom sinal de que existe um padrão nos dados e o algoritmo está capturando este padrão.

Curva de aprendizagem Curva de aprendizagem para o algoritmo de árvore de decisão sobre 100 exemplos gerados aleatoriamente no domínio do restaurante. O gráfico resume 20 testes. Observação: É um bom sinal de que existe realmente algum padrão nos dados e de que o algoritmo de aprendizagem o está incorporando.

Problemas gerais: overfitting Overfitting (hiper-especialização): Evitar encontrar uma “regularidade” muito restrita nos dados Soluções: validação cruzada poda

Validação Cruzada Treinamento Teste Serve para evitar overfitting e para averiguar robustez dos resultados Algoritmo 1) Divide o conjunto de exemplos em dois sub-conjuntos: conjuntos de treinamento (TR) e de teste (TE) 2) Usa indução para gerar hipótese H sobre TR 3) Mede percentagem de erro de H aplicada à TE 4) Repete passos 1-3 com diferentes tamanhos de TE e TR, e tendo elemento escolhidos aleatoriamente Treinamento Teste

Exemplos Práticos Exemplos: Diagnóstico médico e de equipamentos Análise de crédito Recuperação de Informação GASOIL Sistema de separação de gás-óleo em plataformas de petróleo. Piloto automático de um Cessna Treinado por três pilotos; Obteve um desempenho melhor do que os três.