Aprendizagem de Máquina
Prof. Paulo Martins Engel
Componentes de um SBA O problema da representação
Informática
UFRGS 2
Definição de um problema de aprendizagem
• Dizemos que um sistema computacional aprende da experiência E, em relação a uma classe de tarefas Te a uma medida de desempenho P, se seu desempenho nas tarefas em T, medido por P, melhora com a experiência E.
• Portanto, num problema de aprendizagem bem formulado identificamos 3 fatores:
Definição de um problema de aprendizagem
• Dizemos que um sistema computacional aprende da experiência E, em relação a uma classe de tarefas Te a uma medida de desempenho P, se seu desempenho nas tarefas em T, medido por P, melhora com a experiência E.
• Portanto, num problema de aprendizagem bem formulado identificamos 3 fatores:
– a classe das tarefas T→ tipo de problema de aprendizado
• o que aprender; solução; função alvo; hipótese
– a fonte de experiência E→especificação do treinamento
• conjunto de treinamento; procedimento de treinamento
– a medida de desempenho a ser melhorada P→como avaliar o desempenho
• função de avaliação; função de valor
Informática
UFRGS 4
Projeto de um sistema de aprendizagem
• O projeto de um sistema de aprendizagem para solucionar uma determinada tarefa pode ser compreendido como uma série de escolhas envolvendo os componentes da solução:
• O treinamento:
• Direto (supervisionado por um instrutor): em cada estado do domínio se conhece a solução desejada.
– A solução depende de uma única decisão instantânea (função ou mapeamento estático)
Projeto de um sistema de aprendizagem
• O projeto de um sistema de aprendizagem para solucionar uma determinada tarefa pode ser compreendido como uma série de escolhas envolvendo os componentes da solução:
• O treinamento:
• Direto (supervisionado por um instrutor): em cada estado do domínio se conhece a solução desejada.
– A solução depende de uma única decisão instantânea (função ou mapeamento estático)
• Indireto (supervisionado por um crítico): apenas em estados finais, de uma sequência de estados, se recebe a informação de sucesso ou insucesso.
– A solução depende do encadeamento de decisões (função ou mapeamento dinâmico)
– Neste caso, o sistema enfrenta o problema de atribuição de créditopara os estados intermediários.
Informática
UFRGS 6
O treinamento (cont.)
• O conjunto e a sequência de exemplos de treinamento em geral influenciam no desempenho do sistema.
• Quais instâncias devem constituir o conjunto de treinamento?
– escolha aleatória ?
– determinada por um especialista ? – só as difíceis ?
• Em geral, a aprendizagem é mais eficiente se os exemplos de treinamento seguirem uma distribuição similar a dos exemplos de teste (futuros)
O treinamento (cont.)
• O conjunto e a sequência de exemplos de treinamento em geral influenciam no desempenho do sistema.
• Quais instâncias devem constituir o conjunto de treinamento?
– escolha aleatória ?
– determinada por um especialista ? – só as difíceis ?
• Em geral, a aprendizagem é mais eficiente se os exemplos de treinamento seguirem uma distribuição similar a dos exemplos de teste (futuros)
• O conhecimento ganho com um episódio de treinamento deve ser aproveitado, refinando-o nos detalhes, ou deve-se explorar novas soluções que eventualmente tenham desempenho melhor?
– Dilema explorationx exploitation
Informática
UFRGS 8
Medida de desempenho: a função de valor
• Muitas tarefas de aprendizagem podem ser representadas como problemas de otimização.
• Neste caso, o desempenho de uma solução pode ser medido através de uma função de valor V, de utilidade a ser maximizada pelo treinamento, ou alternativamente, de custoa ser minimizada.
Medida de desempenho: a função de valor
• Muitas tarefas de aprendizagem podem ser representadas como problemas de otimização.
• Neste caso, o desempenho de uma solução pode ser medido através de uma função de valor V, de utilidade a ser maximizada pelo treinamento, ou alternativamente, de custoa ser minimizada.
• Exemplos:
• A contagem de erros de previsão de um classificador, por exemplo, constitui uma de função de custo.
• A configuração do tabuleiro em um determinado estado de um jogo poderia ser avaliada por uma função de utilidade, que mede o quão distante está este estado, do estado final (de vitória).
Informática
UFRGS 10
Representação da solução
• A função de valor está fundamentalmente ligada à representação da solução.
• No caso do classificador, as saídas representam os rótulos de classe, codificados segundo uma representação conveniente.
• No caso de um jogo, a configuração do tabuleiro representa um estado possível, segundo as regras do jogo.
• Neste caso, todos os estados possíveis formam um espaço de busca conhecido a priori, mas cuja estratégia ótima de busca é desconhecida e deve ser aprendida.
Representação da solução
• A função de valor está fundamentalmente ligada à representação da solução.
• No caso do classificador, as saídas representam os rótulos de classe, codificados segundo uma representação conveniente.
• No caso de um jogo, a configuração do tabuleiro representa um estado possível, segundo as regras do jogo.
• Neste caso, todos os estados possíveis formam um espaço de busca conhecido a priori, mas cuja estratégia ótima de busca é desconhecida e deve ser aprendida.
• Entretanto, na maioria dos jogos não é possível avaliar a função alvo exatamente, devido à explosão combinatória dos estados.
• Em geral, deve-se especificar uma função heurística V’, que calcula uma aproximação para V.
Informática
UFRGS 12
Teoria do aprendizado computacional
• O problema do aprendizado indutivo de uma função alvo
desconhecida, a partir de exemplos de treinamento desta função e dado um espaço de hipóteses candidatas depende fundamentalmente dos seguintes atributos do problema:
• Tamanho ou complexidade do espaço de hipóteses considerado pelo algoritmo de aprendizado
• A acurácia com que a função alvo deve ser aproximada
• A probabilidade de que o algoritmo forneça uma hipótese adequada
• A maneira pela qual os exemplos de treinamento são apresentados ao algoritmo de aprendizado
• A teoria do aprendizado computacional estuda a influência destes fatores no desempenho da tarefa de aprendizado indutivo.
Aprendizado indutivo
• Questões relativas ao problema de aprendizagem indutiva de uma função desconhecida, a partir de exemplos de treinamento desta função e dado um espaço de hipóteses candidatas:
• Complexidade da amostra:
– Quantos exemplos de treinamento são necessários para o sistema de aprendizagem (SA) convergir (com alta probabilidade) para uma hipótese adequada?
• Complexidade computacional:
– Quanto esforço computacional é necessário para que um SA convirja (com alta probabilidade) para uma hipótese adequada?
• Limites de erro:
– Quantos exemplos de treinamento serão classificados erroneamente pelo SA antes que ele convirja para uma hipótese adequada?
• É possível estabelecer-se limites teóricos para estas medidas
Informática
UFRGS 14
Aprendizado provavelmente aproximadamente correto
• Num modelo PAC (probably approximately correct) de aprendizagem, é possível estabelecer limites teóricos para o número de exemplos de treinamento e a quantidade de
computação necessários para aprender várias classes de funções.
• Considere uma classe C de funções alvo possíveis, definida sobre um conjunto de instâncias Xde tamanho n, e um algoritmo L usando um espaço de hipóteses H.
Aprendizado provavelmente aproximadamente correto
• Num modelo PAC (probably approximately correct) de aprendizagem, é possível estabelecer limites teóricos para o número de exemplos de treinamento e a quantidade de
computação necessários para aprender várias classes de funções.
• Considere uma classe C de funções alvo possíveis, definida sobre um conjunto de instâncias Xde tamanho n, e um algoritmo L usando um espaço de hipóteses H.
• O aprendizado da classe Cé dito PAC por Lusando H se, para qualquer conceito cem C, Lfornecer uma hipótese h com erro menor que , com probabilidade (1 – ), em tempo polinomial em 1/, 1/, n e tamanho(c), sendo , arbitrários.
• tamanho(c) representa a complexidade intrínseca do espaço de instâncias (ex., número de características usadas para descrever c).
Informática
UFRGS 16
• O que aprender?
– Conceitos: noções que podem ser aprendidas – Exemplo: categorias ou classes de um domínio
– Objetivo: descrição inteligível e operacional de um conceito
Preparação para a aprendizagem
• O que aprender?
– Conceitos: noções que podem ser aprendidas – Exemplo: categorias ou classes de um domínio
– Objetivo: descrição inteligível e operacional de um conceito
• Como aprender?
– A partir de amostras de conceitos
– Amostras: exemplos individuais e independentes de um conceito – Exemplo pode ser positivo, amostra satisfaz o conceito, ou negativo
Preparação para a aprendizagem
Informática
UFRGS 18
• O que aprender?
– Conceitos: noções que podem ser aprendidas – Exemplo: categorias ou classes de um domínio
– Objetivo: descrição inteligível e operacional de um conceito
• Como aprender?
– A partir de amostras de conceitos
– Amostras: exemplos individuais e independentes de um conceito – Exemplo pode ser positivo, amostra satisfaz o conceito, ou negativo
• Como representar conceitos?
– Descrição a partir da representação adotada para as amostras
– As instâncias do domínio são representadas por um conjunto de atributos – Atributos: medem aspectos de uma amostra
– Conceito é visto como predicado: c(x) = 1 se xsatisfaz o conceito c (exemplo positivo) e c(x) = 0 se x não o satisfaz (exemplo negativo)
Preparação para a aprendizagem
Representação do Domínio
• O domínio é representado por trincas : (objeto, atributo, valor).
objeto
atributo_1 atributo_i atributo_n
val11 val12 vali1 vali2 vali3 valn1 valn2
… …
Informática
UFRGS 20
Representação do Domínio
• Exemplo de domínio representado por três atributos binários
Representação de domínio zoológico (taxonomia)
@attribute hair {0, 1}
@attribute feathers {0, 1}
@attribute eggs {0, 1}
@attribute milk {0, 1}
@attribute airborne {0, 1}
@attribute aquatic {0, 1}
@attribute predator {0, 1}
@attribute toothed {0, 1}
@attribute backbone {0, 1}
@attribute breathes {0, 1}
@attribute venomous {0, 1}
@attribute fins {0, 1}
@attribute legs {0, 2, 4, 5, 6, 8}
@attribute tail {0, 1}
@attribute domestic {0, 1}
@attribute catsize {0, 1}
@attribute type {mammal, bird, reptile, fish, amphibian, insect, invertebrate}
Informática
UFRGS 22
• Algo a ser aprendido; um padrão que descreve um subconjunto dos dados e que depende do estilo de aprendizado (tarefa).
• Estilos de aprendizado:
– Aprendizado classificatório: prever uma classe discreta – Aprendizado associativo: detectar associações entre
características
– Aprendizado aglomerativo: agrupar amostras similares – Previsão numérica: prever uma quantidade numérica
• Descrição de conceito: saída do esquema de aprendizado
O que é um conceito?
• Algo a ser aprendido; um padrão que descreve um subconjunto dos dados e que depende do estilo de aprendizado (tarefa).
• Estilos de aprendizado:
– Aprendizado classificatório: prever uma classe discreta – Aprendizado associativo: detectar associações entre
características
– Aprendizado aglomerativo: agrupar amostras similares – Previsão numérica: prever uma quantidade numérica
• Descrição de conceito: saída do esquema de aprendizado
• Exemplo: uma regra de classificação descreve um conceito como uma conjunção de valores de atributos que indicam uma
determinada classe do domínio:
R1: val12val33→classe1
O que é um conceito?
Informática
UFRGS 24
• Algo a ser aprendido; um modelo descreve todo o conjunto de dados e é formado por um conjunto de conceitos.
• Descrição do modelo: saída do esquema de aprendizado
O que é um modelo?
• Algo a ser aprendido; um modelo descreve todo o conjunto de dados e é formado por um conjunto de conceitos.
• Descrição do modelo: saída do esquema de aprendizado
• Exemplo: um conjunto de regras de classificação descreve a partição do domínio, induzida a partir do conjunto de dados:
R1: val12 val33 →classe1 R2: val41 →classe1
R3: val22 →classe2
R4: val21 val31 →classe2
O que é um modelo?
Informática
UFRGS 26
Exemplo de um modelo?
If milk = 1 then mammal If feathers = 1 then bird If venomous = 1
and toothed = 1
and eggs = 0 then reptile If venomous = 1
and toothed = 1
and aquatic = 0 then reptile If hair = 0
and legs = 4
and aquatic = 0 then reptile If legs = 0
and aquatic = 0
and toothed = 1 then reptile If fins = 1
and eggs = 1 then fish If venomous = 1
and legs = 4 then amphibian
If aquatic = 1 and legs = 4
and predator = 0 then amphibian If aquatic = 1
and legs = 4 and hair = 0
and toothed = 1 then amphibian If legs = 6
and aquatic = 0 then insect If legs = 8 then invertebrate If legs = 5 then invertebrate If backbone = 0
and breathes = 0 then invertebrate
If backbone = 0
and legs = 0 then invertebrate
• Amostra: tipo específico de exemplo
– Objeto a ser classificado, associado ou agrupado – Exemplo individual e independente do conceito alvo
– Caracterizado por um conjunto predeterminado de atributos
• Entrada para o esquema de aprendizagem: conjunto de amostras/ dados
– Representado como uma única relação (arquivo plano)
• É uma forma restrita de entrada
– Não pode haver relacionamentos entre objetos
O que é um exemplo?
Informática
UFRGS 28
Amostras do domínio zoológico
aardvark,1,0,0,1,0,0,1,1,1,1,0,0,4,0,0,1,mammal antelope,1,0,0,1,0,0,0,1,1,1,0,0,4,1,0,1,mammal bass,0,0,1,0,0,1,1,1,1,0,0,1,0,1,0,0,fish bear,1,0,0,1,0,0,1,1,1,1,0,0,4,0,0,1,mammal boar,1,0,0,1,0,0,1,1,1,1,0,0,4,1,0,1,mammal buffalo,1,0,0,1,0,0,0,1,1,1,0,0,4,1,0,1,mammal calf,1,0,0,1,0,0,0,1,1,1,0,0,4,1,1,1,mammal carp,0,0,1,0,0,1,0,1,1,0,0,1,0,1,1,0,fish catfish,0,0,1,0,0,1,1,1,1,0,0,1,0,1,0,0,fish cavy,1,0,0,1,0,0,0,1,1,1,0,0,4,0,1,0,mammal cheetah,1,0,0,1,0,0,1,1,1,1,0,0,4,1,0,1,mammal chicken,0,1,1,0,1,0,0,0,1,1,0,0,2,1,1,0,bird chub,0,0,1,0,0,1,1,1,1,0,0,1,0,1,0,0,fish
clam,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,invertebrate crab,0,0,1,0,0,1,1,0,0,0,0,0,4,0,0,0,invertebrate crayfish,0,0,1,0,0,1,1,0,0,0,0,0,6,0,0,0,invertebrate crow,0,1,1,0,1,0,1,0,1,1,0,0,2,1,0,0,bird
deer,1,0,0,1,0,0,0,1,1,1,0,0,4,1,0,1,mammal dogfish,0,0,1,0,0,1,1,1,1,0,0,1,0,1,0,1,fish dolphin,0,0,0,1,0,1,1,1,1,1,0,1,0,1,0,1,mammal dove,0,1,1,0,1,0,0,0,1,1,0,0,2,1,1,0,bird duck,0,1,1,0,1,1,0,0,1,1,0,0,2,1,0,0,bird elephant,1,0,0,1,0,0,0,1,1,1,0,0,4,1,0,1,mammal flamingo,0,1,1,0,1,0,0,0,1,1,0,0,2,1,0,1,bird flea,0,0,1,0,0,0,0,0,0,1,0,0,6,0,0,0,insect
@attribute name{aardvark, antelope,..., ...,worm,wren}
@attribute hair {0, 1}
@attribute feathers {0, 1}
@attribute eggs {0, 1}
@attribute milk {0, 1}
@attribute airborne {0, 1}
@attribute aquatic {0, 1}
@attribute predator {0, 1}
@attribute toothed {0, 1}
@attribute backbone {0, 1}
@attribute breathes {0, 1}
@attribute venomous {0, 1}
@attribute fins {0, 1}
@attribute legs {0, 2, 4, 5, 6, 8}
@attribute tail {0, 1}
@attribute domestic {0, 1}
@attribute catsize {0, 1}
@attribute type {mammal, bird, reptile, fish, amphibian, insect, invertebrate}
• Cada amostra é descrita por um conjunto pré-definido de características, os seus “atributos”
• Mas: na prática, número de atributos pode variar
– Solução possível: flag “valor irrelevante” (p. ex. “?”)
• Problema relacionado: existência de um atributo pode depender de valor de um outro atributo
• Tipos possíveis de atributos (“níveis de medidas”):
– Nominal, ordinal, intervalare racional
O que é um atributo?
Informática
UFRGS 30
Exemplo de representação e tarefa de aprendizagem
• Problema de previsão (classificação): dadas as condições climáticas de um determinado dia, prever se uma pessoa vai jogar (tênis) ou não.
• Representação gráfica do conhecimento a priorido domínio do “tempo”.
Dia
Tempo Umidade Joga
ensolarado nublado chuvoso normal alta sim não
Ventoso
verdadeiro falso Temperatura
quente amena fria
• Os conceitos de interesse são as classes: “joga”, “não joga”.
• Amostras dos conceitos são quinas com valores dos atributos:
< val-tempo, val-temperatura, val-umidade, val-ventoso, val-joga >
Tempo Temperatura Umidade Ventoso Joga
ensolarado quente normal verdadeiro não
ensolarado quente normal falso não
ensolarado quente alta verdadeiro não
ensolarado quente alta falso não
ensolarado amena normal verdadeiro não
ensolarado amena normal falso não
ensolarado amena alta verdadeiro não
ensolarado amena alta falso não
ensolarado fria normal verdadeiro não
ensolarado fria normal falso não
ensolarado fria alta verdadeiro não
ensolarado fria alta falso não
nublado quente normal verdadeiro não
nublado quente normal falso não
nublado quente alta verdadeiro não
nublado quente alta falso não
nublado amena normal verdadeiro não
nublado amena normal falso não
nublado amena alta verdadeiro não
nublado amena alta falso não
nublado fria normal verdadeiro não
nublado fria normal falso não
nublado fria alta verdadeiro não
nublado fria alta falso não
chuvoso quente normal verdadeiro não
chuvoso quente normal falso não
chuvoso quente alta verdadeiro não
chuvoso quente alta falso não
chuvoso amena normal verdadeiro não
chuvoso amena normal falso não
chuvoso amena alta verdadeiro não
chuvoso amena alta falso não
chuvoso fria normal verdadeiro não
chuvoso fria normal falso não
chuvoso fria alta verdadeiro não
chuvoso fria alta falso não
Tempo Temperatura Umidade Ventoso Joga
ensolarado quente normal verdadeiro sim
ensolarado quente normal falso sim
ensolarado quente alta verdadeiro sim
ensolarado quente alta falso sim
ensolarado amena normal verdadeiro sim
ensolarado amena normal falso sim
ensolarado amena alta verdadeiro sim
ensolarado amena alta falso sim
ensolarado fria normal verdadeiro sim
ensolarado fria normal falso sim
ensolarado fria alta verdadeiro sim
ensolarado fria alta falso sim
nublado quente normal verdadeiro sim
nublado quente normal falso sim
nublado quente alta verdadeiro sim
nublado quente alta falso sim
nublado amena normal verdadeiro sim
nublado amena normal falso sim
nublado amena alta verdadeiro sim
nublado amena alta falso sim
nublado fria normal verdadeiro sim
nublado fria normal falso sim
nublado fria alta verdadeiro sim
nublado fria alta falso sim
chuvoso quente normal verdadeiro sim
chuvoso quente normal falso sim
chuvoso quente alta verdadeiro sim
chuvoso quente alta falso sim
chuvoso amena normal verdadeiro sim
chuvoso amena normal falso sim
chuvoso amena alta verdadeiro sim
chuvoso amena alta falso sim
chuvoso fria normal verdadeiro sim
chuvoso fria normal falso sim
chuvoso fria alta verdadeiro sim
chuvoso fria alta falso sim
Atributos previsores Atributo meta
Informática
UFRGS 32
Combinações possíveis de valores do domínio zoológico
@attribute name{aardvark, antelope,..., ...,worm,wren}
@attribute hair {0, 1}
@attribute feathers {0, 1}
@attribute eggs {0, 1}
@attribute milk {0, 1}
@attribute airborne {0, 1}
@attribute aquatic {0, 1}
@attribute predator {0, 1}
@attribute toothed {0, 1}
@attribute backbone {0, 1}
@attribute breathes {0, 1}
@attribute venomous {0, 1}
@attribute fins {0, 1}
@attribute legs {0, 2, 4, 5, 6, 8}
@attribute tail {0, 1}
@attribute domestic {0, 1}
@attribute catsize {0, 1}
@attribute type {mammal, bird, reptile, fish, amphibian, insect, invertebrate}
• 15 atributos binários + 1 atributo com 6 valores + 1 atributo com 7 valores
= 21567 = 1.376.256
• Representa o espaço de instânciaspossíveis criado pela representação
• A representação não inclui conceitos generalizados, que são o objetivo do aprendizado
• Se necessário (método de busca), incluir um valor extra, equivalente ao “don’t care”: “?”
Dados reais de um problema do tempo com incertezas
• Situação muito comum: as combinações podem não ser exaustivas e ser contraditórias.
• O domínio é não determinístico(tem “ruído”): para um certo conjunto de valores de atributos, existe uma chance (probabilidade) de ocorrer o valor previsto.
Tempo Temperatura Umidade Ventoso Joga
ensolarado quente alta falso não
ensolarado quente alta verdadeiro não
nublado quente alta falso sim
chuvoso amena alta falso sim
chuvoso fria normal falso sim
chuvoso fria normal verdadeiro não
nublado fria normal verdadeiro sim
ensolarado amena alta falso não
ensolarado fria normal falso sim
chuvoso amena normal falso sim
ensolarado amena normal verdadeiro sim
nublado amena alta verdadeiro sim
nublado quente normal falso sim
chuvoso amena alta verdadeiro não
• Lista de dias, apresentando as condições climáticas e se o jogador foi jogar ou não.
• Arquivo lista apenasas combinações dos valores dos atributos que realmenteapareceram no domínio (Tem apenas 14 das 72 combinações possíveis).
Informática
UFRGS 34
• Num domínio com valores discretos (abordagem simbólica), os conceitos possíveis de se encontrar pertencem a um espaço limitado (mas normalmente muito grande!) dado pela combinação (de todas as ordens) de todos os valores possíveis: o espaço de conceitos ou espaço de busca.
Enumeração do espaço de conceitos
• Num domínio com valores discretos (abordagem simbólica), os conceitos possíveis de se encontrar pertencem a um espaço limitado (mas normalmente muito grande!) dado pela combinação (de todas as ordens) de todos os valores possíveis: o espaço de conceitos ou espaço de busca.
• Exemplo: o espaço de conceitos para o problema do tempo, considerando que os conceitos são regras de classificação (condição climática → joga ou não)
– 4 x 4 x 3 x 3 x 2 = 288 possibilidades por regra (pois um atributo previsor pode não estar presente numa regra, representado por “?”)
– Exemplo: < nublado, ?, ?, ?, sim > Se tempo = nublado Então joga = sim – Restringindo um modelo de classificação a não mais que 14 regras: 2,7x1034
conjuntos (modelos) diferentes de regras possíveis (28814)
Enumeração do espaço de conceitos
Informática
UFRGS 36
• Num domínio com valores discretos (abordagem simbólica), os conceitos possíveis de se encontrar pertencem a um espaço limitado (mas normalmente muito grande!) dado pela combinação (de todas as ordens) de todos os valores possíveis: o espaço de conceitos ou espaço de busca.
• Exemplo: o espaço de conceitos para o problema do tempo, considerando que os conceitos são regras de classificação (condição climática → joga ou não)
– 4 x 4 x 3 x 3 x 2 = 288 possibilidades por regra (pois um atributo previsor pode não estar presente numa regra, representado por “?”)
– Exemplo: < nublado, ?, ?, ?, sim > Se tempo = nublado Então joga = sim – Restringindo um modelo de classificação a não mais que 14 regras: 2,7x1034
conjuntos (modelos) diferentes de regras possíveis (28814)
• Outros problemas práticos de usar busca para descobrir conceitos:
– Pode restar mais que uma descrição – Pode não restar nenhuma descrição
• A linguagem pode não ser capaz de descrever o conceito alvo
• Os dados podem conter ruído
Enumeração do espaço de conceitos
• Valores são símbolos distintos
– Os valores servem apenas como rótulos ou nomes
• Exemplo: atributo “tempo” dos dados do tempo – Valores: “ensolarado”, “nublado”, “chuvoso”
• Não existe relação implícita entre valores nominais (ordenação ou distância)
Quantidades nominais
Informática
UFRGS 38
• Valores são símbolos distintos
– Os valores servem apenas como rótulos ou nomes
• Exemplo: atributo “tempo” dos dados do tempo – Valores: “ensolarado”, “nublado”, “chuvoso”
• Não existe relação implícita entre valores nominais (ordenação ou distância)
• Pode-se realizar apenas testes de igualdade
• Gera um modelo com número grande de regras individuais
• Exemplo de regra: Se tempo = nublado Então joga = sim
Quantidades nominais
• Impõe ordem aos valores mas não define uma distância entre eles.
• Operações de adição e subtração não fazem sentido.
• Exemplo: atributo “temperatura” nos dados do tempo –Valores: “quente” > “amena” > “fria”
• Gera modelos mais compactos, com regras mais genéricas.
Quantidades ordinais
Informática
UFRGS 40
• Impõe ordem aos valores mas não define uma distância entre eles.
• Operações de adição e subtração não fazem sentido.
• Exemplo: atributo “temperatura” nos dados do tempo –Valores: “quente” > “amena” > “fria”
• Gera modelos mais compactos, com regras mais genéricas.
• Exemplo de regra ordinal: Se temperatura < quente Então joga = sim
• Equivale a 2 regras nominais: Se temperatura = amena Então joga = sim Se temperatura = fria Então joga = sim
• Mas, distinção entre valor nominal ou ordinal nem sempre é clara (p. ex. atributo “tempo: ensolarado, encoberto, chuvoso”)
Quantidades ordinais
• Uma transformação simples permite codificar um atributo ordinal com n valores usando n-1 atributos booleanos
• Exemplo: atributo “temperatura”
Transformando ordinal em booleano
Temperatura fria
amena quente
Temperatura > fria Temperatura > amena
falso falso
verdadeiro falso
verdadeiro verdadeiro
Dados originais Dados transformados
• Melhor do que codificá-lo como nominal (modelos mais compactos)
Informática
UFRGS 42
• Quantidades intervalares não são apenas ordenadas mas também medidas em unidades fixas iguais
• Exemplo: atributo “ano”
• Diferença entre dois valores faz sentido
• Soma ou produto não faz sentido – O ponto zero não está definido!
– Ex: anos 1939 e 1945
Quantidades intervalares
• Quantidades racionais são aquelas para as quais o esquema de medida define um ponto zero
• Exemplo: atributo “distância”
– Distância entre um objeto e ele mesmo é zero
• Quantidades racionais são tratadas como números reais (valores numéricos)
– Todas as operações matemáticas são permitidas
• Mas: será que existe um ponto zero definido
“inerentemente”
– A resposta depende do conhecimento científico
Quantidades racionais
Informática
UFRGS 44
Dados do tempo com atributos nominais e numéricos
Tempo Temperatura Umidade Ventoso Joga
ensolarado 29 85 falso não
ensolarado 26 90 verdadeiro não
nublado 28 86 falso sim
chuvoso 21 96 falso sim
chuvoso 20 80 falso sim
chuvoso 18 70 verdadeiro não
nublado 17 65 verdadeiro sim
ensolarado 23 95 falso não
ensolarado 21 70 falso sim
chuvoso 24 80 falso sim
ensolarado 24 70 verdadeiro sim
nublado 23 90 verdadeiro sim
nublado 27 75 falso sim
chuvoso 22 91 verdadeiro não
http://www.cs.waikato.ac.nz/ml/weka/
%
% Arquivo ARFF para os dados do tempo com características numéricas
%
@relation tempo
@attribute tempo {ensolarado, nublado, chuvoso}
@attribute temperatura real
@attribute umidade real
@attribute ventoso {verdadeiro, falso}
@attribute joga {sim, não}
@data
ensolarado,85,85,falso,não ensolarado,80,90,verdadeiro,não nublado,83,86,falso,sim
...
Weka 3: Data Mining Software in Java
Informática
UFRGS 46
Aprendizado indutivo
• Queremos aprender um conceito ou função c(x), definido sobre o universo de instâncias X(domínio); isto é: c: XY, onde Yé o conjunto de valores possíveis do conceito (rótulos de classe; valores de saída, em regressão).
• Para tanto, dispomos de um conjunto de exemplos de treinamento Dcque fornecem exemplos da função alvo a ser aprendida, Dc= {x, c(x) }.
Aprendizado indutivo
• Queremos aprender um conceito ou função c(x), definido sobre o universo de instâncias X(domínio); isto é: c: XY, onde Yé o conjunto de valores possíveis do conceito (rótulos de classe; valores de saída, em regressão).
• Para tanto, dispomos de um conjunto de exemplos de treinamento Dcque fornecem exemplos da função alvo a ser aprendida, Dc= {x, c(x) }.
• O sistema de aprendizado dispõe de uma estrutura de modelagem que permite gerar um conjunto de hipóteses hH, tal que h: XY.
• Esta estrutura de modelagem equivale a uma restrição sobre a estrutura ou forma da função que efetivamente vai ser aprendida e representa o viés indutivo.
• O viés indutivo expressa a política adotada que permite generalizar para além dos dados de treinamento.
Informática
UFRGS 48
Viés indutivo
• Dado um algoritmo de aprendizado Ltreinado com o conjunto de treinamento Dc= {x, c(x) }, L(xi, Dc) representa a previsão que Latribui a uma nova instância xi, após ele ter sido treinado com os dados Dc, ou seja, L(xi, Dc) é inferido indutivamentede (Dcxi):
(Dcxi) ≻ L(xi, Dc)
• Como L é um algoritmo de aprendizado indutivo, o resultado L(xi, Dc) em geral não pode ser provadocomo correto, ou seja, ele não resulta dedutivamente do arquivo de treinamento Dce da descrição de xi.
Viés indutivo
• Dado um algoritmo de aprendizado Ltreinado com o conjunto de treinamento Dc= {x, c(x) }, L(xi, Dc) representa a previsão que Latribui a uma nova instância xi, após ele ter sido treinado com os dados Dc, ou seja, L(xi, Dc) é inferido indutivamentede (Dcxi):
(Dcxi) ≻ L(xi, Dc)
• Como L é um algoritmo de aprendizado indutivo, o resultado L(xi, Dc) em geral não pode ser provadocomo correto, ou seja, ele não resulta dedutivamente do arquivo de treinamento Dce da descrição de xi.
• Define-se como viés indutivo Bde Lo conjunto de suposições adicionais que permitem deduzir o resultado L(xi, Dc) para qualquer xi pertencente ao conjunto de instâncias X, ou seja,
L(xi, Dc) resulta dedutivamentede (BDcxi)
(xiX)[(BDcxi) ⊢L(xi, Dc)]
• No caso do exemplo, o viés indutivo é que cH.