Análise Inteligente de Dados 3. Resultados
Representação de padrões
Existem muitas maneiras diferentes de representar padrões:
Árvores de decisão, regras, representações baseadas em instâncias Também chamada representação do conhecimento
A representação determina o método de inferência
A compreensão dos resultados é a chave para a compreensão dos esquemas de aprendizagem subjacentes Conforme o tipo de aprendizagem (e.g., classificação, regressão) utilizam-se diferentes representações para os resultados Análise Inteligente de Dados
1
Tabelas de decisão
A forma mais rudimentar de representar os resultados
Basicamente utiliza o mesmo formato que o utilizado para os dados de entrada
Tabela de decisão para o problema da meteorologia:
Análise Inteligente de Dados
Árvores de decisão
Uma abordagem do tipo “Divide-and-Conquer” produz uma árvore Os nós envolvem o teste de determinado atributo
Normalmente o valor do atributo é comparado com uma constante
As folhas atribuem classificação, conjuntos de classificações ou distribuições de probabilidade às instâncias Uma instância desconhecida faz-nos seguir um caminho descendente ao longo da árvore Análise Inteligente de Dados
2
Atributos nominais e numéricos
Atributos nominais: o número de filhos é normalmente igual ao número de ramos
O atributo é testado apenas uma vez Outra possibilidade: divisão em subconjuntos
Atributos numéricos: testa-se se o valor é maior ou menor do que uma constante
O atributo pode ser testado diversas vezes Outra possibilidade: ramificação em três Valor inteiro: menor, igual, maior Valor real: abaixo, dentro, acima (intervalo) Análise Inteligente de Dados
Valores em falta
Tem a ausência do valor algum significado?
Solução A
Sim - “em falta” é um valor para o atributo Não - “em falta” tem de ser tratado como uma excepção Atribuir a instância ao ramo mais “popular”
Solução B
Dividir as instâncias em partes Cada parte recebe um peso igual à fracção de instâncias de treino que seguiram o ramo correspondente As classificações resultantes são combinadas utilizando os pesos que as instâncias parciais tinham associados quando as atingiram Análise Inteligente de Dados
3
Regras de classificação
Uma alternativa às árvores de decisão Antecedente ou pré-condição:
Consequente ou conclusão:
Uma série de testes Os teste estão normalmente agrupados por ANDs Classe, conjunto de classes ou distribuição de probabilidade atribuídos pela regra
Regras individuais são normalmente agrupadas por ORs
Surgem conflitos se várias regras forem aplicáveis Análise Inteligente de Dados
Passando de árvores a regras
Fácil: conversão de uma árvore num conjunto de regras Uma regra para cada folha da árvore
Produz regras não ambíguas
O antecedente contém uma condição para cada nodo de um caminho entre a raiz e uma folha O consequente corresponde à classe atribuída pela folha Não interessa a ordem em que são executadas
No entanto as regras resultantes podem ser desnecessariamente complexas
Pode-se podar os teste e regras redundantes Análise Inteligente de Dados
4
Passando de regras a árvores
Mais difícil: transformar um conjunto de regras numa árvore
As árvores só dificilmente podem expressar as disjunções entre regras
Exemplo: regras que testam diferente atributos
A árvore correspondente conterá sub-árvores idênticas
Problema das sub-árvores replicadas Análise Inteligente de Dados
Uma árvore para a disjunção simples
Análise Inteligente de Dados
5
O problema do ou-exclusivo
If x=1 and y=0 then class = If x=0 and y=1 then class = If x=0 and y=0 then class = If x=1 and y=1 then class =
a a b b
Análise Inteligente de Dados
Uma árvore com sub-árvores replicadas
If x=1 and y=1 then class = a If z=1 and w=1 then class = a Otherwise class = b
Análise Inteligente de Dados
6
Organização das regras
Serão as regras pedaços independentes de conhecimento?
Parece tão fácil acrescentar uma regra a uma base de regras preexistente… Problema: ignora a forma como as regras são executadas
Duas maneiras de executar um conjunto de regras
Conjunto ordenado de regras
Conjunto desordenado de regras
A ordem é importante para a interpretação As regras podem sobrepor-se e levar a diferentes conclusões para uma mesma instância Análise Inteligente de Dados
Interpretação das regras
E se duas ou mais regras entrarem em conflito?
Não se fornece nenhuma conclusão? Seguimos a regra mais popular para os dados de treino? …
E se nenhuma regra for aplicável à instância de teste?
Não se fornece nenhuma conclusão? Sugerimos a classe que é mais frequente nos exemplos de treino? ... Análise Inteligente de Dados
7
Caso Especial: Classes Booleanas
Assunção: se a instância não pertence à classe “sim” então pertence à classe “não”
Um truque possível: apenas aprender as regras para a classe “sim” e utilizar uma regra por omissão para a “não”
A ordem das regras não é importante: Não há conflitos! Análise Inteligente de Dados
Regras de associação
As regras de associação
podem predizer qualquer atributo e combinações de atributos não é suposto serem utilizadas em conjunto
Problema: número imenso de possíveis associações Os resultados devem ser restritos de maneira a que apenas as associações mais preditivas sejam mostradas
Associações correspondentes a regras com apoio elevado confiança elevada Análise Inteligente de Dados
8
Apoio e confiança de uma regra
Apoio: número de instâncias correctamente preditas Confiança: número de predições correctas sobre o número de instâncias a que a regra é aplicável Exemplo:
Quatro dias frescos com humidade normal
Apoio = 4, confiança = 100%
Em geral o apoio e confiança mínimos são especificados à partida
E.g., 58 regras com apoio > 2 e confiança > 95%
Análise Inteligente de Dados
Regras com excepções
Ideia: permitir que as regras tenham excepções Exemplo: regra para os dados das Íris
Nova instância:
Regra modificada:
Análise Inteligente de Dados
9
Um exemplo mais complexo
Excepções às excepções às excepções...
Análise Inteligente de Dados
Vantagens da utilização de excepções
As regras podem ser actualizadas de forma incremental
Torna-se fácil incorporar novos dados Torna-se fácil incorporar conhecimento sobre o domínio
As pessoas pensam frequentemente em termos de excepções Cada conclusão pode ser considerada apenas no contexto das regras e excepções que conduzem a ela
Esta propriedade de localidade é importante para a compreensão de conjuntos grandes de regras
Análise Inteligente de Dados
10
Regras envolvendo relações
Até agora: todas as regras envolviam a comparação entre um atributo-valor e uma constante
Estas regras são chamadas proposicionais
E.g., temperature < 45 Têm o mesmo poder expressivo que a lógica proposicional
E se um problema envolver relações entre exemplos?
E.g., o problema da árvore genealógica Não pode ser expresso utilizando regras proposicionais É necessária uma representação mais expressiva Análise Inteligente de Dados
O problema das formas
Conceito alvo: standing up Sombreado: standing Não sombreado: lying
Análise Inteligente de Dados
11
Uma solução proposicional
Análise Inteligente de Dados
Uma solução relacional
Comparando atributos entre si
Generaliza melhor para novos dados Relações padrão: =, <, > Mas: a aprendizagem de regras relacionais é computacionalmente cara Solução simples: adicionar atributos extra
E.g., um atributo binário width < height Análise Inteligente de Dados
12
Regras com variáveis
Utilização de variáveis e relações múltiplas:
A última de uma torre de peças está em pé (standing)
Toda a torre está em pé
Definição recursiva! Análise Inteligente de Dados
Programação lógica indutiva
A definição recursiva pode ser vista como um programa lógico
Técnicas para a aprendizagem de programas lógicos derivam da área da programação lógica indutiva (PLI)
Na prática as definições recursivas são geralmente de difícil aprendizagem
Além disso muito poucos problemas práticos requerem recursividade Muitas técnicas de ILP estão restritas a definições não recursivas de forma a facilitar a aprendizagem Análise Inteligente de Dados
13
Árvores para predição numérica
Regressão:
Árvore de regressão:
o processo de computar uma expressão que prediz uma quantidade numérica “árvore de decisão” em que cada folha prediz uma quantidade numérica O valor predito é o valor médio das instâncias de treino que atingiram a folha
Árvore modelo:
“árvore de regressão” em que cada folha tem um modelo de regressão linear “Pedaços lineares” utilizados para aproximar uma função contínua Análise Inteligente de Dados
Regressão linear para o problema do CPU
Análise Inteligente de Dados
14
Árvore de decisão para o problema do CPU
Análise Inteligente de Dados
Árvore de decisão para o problema do CPU
Cada folha contém um número que é a média dos resultados das instâncias que atingem a folha A árvore é muito maior e mais complexa do que a equação de regressão
A média do valor absoluto dos erros é significativamente menor para a árvore do que para a equação Neste caso o modelo linear da equação não se adequa aos dados que temos Análise Inteligente de Dados
15
Árvore modelo para o problema do CPU
Análise Inteligente de Dados
Árvore modelo para o problema do CPU
Resultado da combinação de equações de regressão com árvores de regressão Cada folha contém uma expressão linear em vez de um valor Apesar da árvore modelo ser mais pequena e mais compreensível do que a árvore de regressão
a média dos erros absolutos é menor do que para aquela
Análise Inteligente de Dados
16
Representações baseadas em instâncias
Forma mais fácil de aprendizagem: memorização
É feita uma busca entre as instâncias de treino para encontrar aquela que é mais parecida com a nova instância São as próprias instâncias que representam o conhecimento Também chamada aprendizagem baseada em instâncias
Uma função de similaridade define o que é “aprendido” A aprendizagem baseada em instâncias é uma forma preguiçosa de aprendizagem Métodos: vizinho-mais-próximo, k-vizinhosmais-próximos Análise Inteligente de Dados
A função de distância
Caso mais simples: um atributo numérico
Vários atributos numéricos
Normalmente, é utilizada a distância Euclidiana e os atributos são normalizados
Atributos nominais
A distância é a diferença entre os dois valores do atributo (ou uma função desta)
A distância é 1 se os valores forem diferente e 0 se estes forem iguais
Serão todos os atributos de igual relevância?
É possível que seja necessário associar pesos aos atributos Análise Inteligente de Dados
17
Aprendizagem de protótipos
Apenas é necessário armazenar as instâncias envolvidas numa decisão As instâncias “ruidosas” devem ser filtradas Ideia: utilizar apenas exemplos prototípicos
Análise Inteligente de Dados
Generalizações rectangulares
O vizinho mais próximo é utilizado fora dos rectângulos Os rectângulos agem como regras Rectângulos dentro de rectângulos agem como excepções
Análise Inteligente de Dados
18
Representação de agrupamentos
Quando o que se pretende são agrupamentos em vez de um classificador
os resultados são diagramas que mostram os agrupamentos de instâncias Caso mais simples: associar o número de um agrupamento a cada instância O processo de agrupamento é frequentemente seguido da inferência de regras ou árvores que alocam cada instância a um agrupamento Análise Inteligente de Dados
Representação de agrupamentos
Análise Inteligente de Dados
19