Aprendizagem Simbólica Automática

Propaganda
Introdução à Aprendizagem Simbólica Automática
Metodologias de Inteligência Artificial
2005/2006
Aprendizagem Simbólica Automática
•
Aprendizagem Simbólica Automática
– "aprender implica mudanças adaptativas do sistema no sentido de lhe permitir realizar
a(s) mesma(s) tarefa(s) nas mesmas circunstâncias de um modo mais eficiente e
efectivo da próxima vez“ (Herbert A. Simon)
•
Aprendizagem humana:
– aquisição de conhecimento (Knowledge acquisition)
consiste na aquisição estruturada de nova informação simbólica assim como da
capacidade de a aplicar a situações novas.
– ex: aprender Matemática.
– refinamento de habilidade (skill refinement)
processo, eminentemente não simbólico, caracterizado por refinar um procedimento
através de tentativas sucessivas até atingir uma proximidade desejada com o
objectivo.
– ex: aprender a andar de bicicleta ou tocar violino.
2
MIA - 2005/06
Page 1
Aprendizagem Simbólica Automática
•
Taxonomia dos métodos de Aprendizagem Simbólica
–
classificação quanto à estratégia, à representação e ao domínio.
1. Classificação quanto à estratégia usada
–
rote learning
Consiste na implantação directa de novo conhecimento
•
•
–
aprender por ser programado (by being programmed)
aprender por memorização de novos factos ou dados. Caso das bases de dados primitivas.
Aliás o nome “rote learning” deriva precisamente daí.
aprendizagem por conselho ou por instrução (by being told or by instruction)
O conselho é fornecido pelo agente exterior numa forma ou linguagem não
directamente utilizável pelo sistema. Uma transformação de representação e/ou
alguma inferência deve ser feita pelo sistema de aprendizagem por forma a
operacionalizar o novo conhecimento e compatibilizá-lo com o pré-existente.
3
MIA - 2005/06
Aprendizagem Simbólica Automática
–
aprendizagem por analogia
Consiste na aquisição de novos conceitos ou factos ou planos por transformação ou
ampliação de conceitos já adquiridos pelo sistema.
– Ex: CBR (“Case Base Reasoning”), Generalização de Planos em robótica
–
aprendizagem por exemplos
Dado um conjunto de exemplos e contra-exemplos, o sistema de aprendizagem deve
induzir um conceito geral que verifique todos os exemplos (ou exemplos positivos) e
não contemple nenhum dos contra-exemplos (ou exemplos negativos).
–
aprendizagem por observação ou descoberta (não supervisionada)
É um método bastante geral de aprendizagem indutiva que inclui os chamados
sistemas de descoberta, tarefas de formação de teorias, criação de critérios de
classificação para formação de hierarquias taxonómicas (conceptual clustering) sem a
intervenção ou auxílio de um agente exterior.
4
MIA - 2005/06
Page 2
Aprendizagem Simbólica Automática
2. Classificação quanto à representação do conhecimento adquirido
– Parâmetros em expressões algébricas
Elementos lógicos de limiar (threshold logic elements). Funções que modelam o
desempenho do sistema e cujos coeficientes são ajustados.
– Árvores de decisão
– Gramáticas formais
São tipicamente representadas por expressões regulares, autómatos finitos, regras de
uma gramática independente do contexto ou regras de tranformação.
– Regras de produção
– Expressões baseadas em lógica formal e formalismos semelhantes
• Lógica de Predicados de Primeira Ordem.
• Cálculo de predicados anotado desenvolvido por Michalski.
– Grafos e redes
5
MIA - 2005/06
Métodos Baseados em Explicações
Aprendizagem Dedutiva/Indutiva por Métodos Baseados em Explicações
Estratégia de "aprendizagem por exemplos": Como identificar uma definição correcta
de um conceito a partir de exemplos positivos, tais que o conceito seja uma
especialização de um conceito-genérico (target) definido pela "Teoria do Domínio".
3 métodos (para a Especialização de Conceitos baseados na Teoria):
• Generalização Baseada nas Explicações (EBG)
• EBG de exemplos múltiplos (mEBG)
• um novo método: Indução Sobre as Explicações (IOE)
Os dois primeiros têm desvantagens:
• raramente identificam a definição correcta
• o sucesso depende grandemente da codificação das regras da teoria do domínio.
6
MIA - 2005/06
Page 3
Generalização Baseada nas Explicações (EBG)
EBG (Explanation Based Generalization)
O Resolvedor de Problemas começa com uma teoria correcta do domínio que define
o conceito-genérico (target-concept). A teoria, embora correcta pode ser ineficiente.
•
•
•
•
exemplos treino E
aplicar a teoria do domínio para provar que E é uma instância do conceito-genérico.
Extrair as pré-condições mais fracas (WP) da prova para formar uma regra eficiente
O conceito-genérico é convertido numa "forma operacional".
É claro que se pode aprender neste caso mais conhecimento se as WP forem condição
necessária e suficiente para a definição de um conceito C mais específico.
WP(E) = C (E)
7
MIA - 2005/06
Generalização Baseada nas Explicações (EBG)
Exemplo:
– Sistema de Pazzani (OCCAM) onde a teoria do domínio define o conceito genérico
"coerção" (fazer executar um objectivo pela ameaça). Ao aplicar "um país ameaça
não vender petróleo" e ao achar a pré-condição mais fraca deriva o conceito de sanção
económica que é aprendido.
Como explorar o domínio do conhecimento para guiar uma aprendizagem
indutiva?
Dados:
– Uma teoria do Domínio que define um conceito genérico (CG) .
– Um conjunto de exemplos positivos de treino envolvendo um conceito C que é uma
especialização de CG
Encontrar:
– Uma definição correcta de C
8
MIA - 2005/06
Page 4
Generalização Baseada nas Explicações (EBG)
Método EBG
1. Construir a árvore de explicação que prova que um (único) exemplo é uma instância
do conceito genérico.
2. Constriur as Pré-condições mais fracas (WP) tais que uma explicação é ainda
verdadeira. Para árvores simples, WP é a conjunção dos literais das folhas .
Mas os Termos argumento devem ser o mais gerais possíveis, i.e., independentes do
exemplo (eis a generalização).
9
MIA - 2005/06
Generalização Baseada nas Explicações (EBG)
Vamos considerar os três métodos referidos para o problema da especialização de
conceitos baseados na teoria do domínio (TD), o conceito genérico (CG) e o(s) exemplo(s)
de treino E.
•
Teoria do Domínio que define o objecto genérico chávena
regra C
chavena(Obj) :- conter_liquido(Obj), estavel(Obj), eleva(Obj), acessivel(Obj).
regra CL
conter_liquido(Obj) :- superficie(Obj,S), feito_de(S,Ms), nao_poroso(MS),
fundo(Obj,F), feito_de(F,Mf), nao_poroso(Mf).
nao_poroso(plastico). nao_poroso(porcelana). nao_poroso (aluminio).
regra Es
estavel(Obj) :- fundo(Obj, F), plano(F).
regra El
eleva(Obj): - leve(Obj), apanhavel(Obj).
10
MIA - 2005/06
Page 5
Generalização Baseada nas Explicações (EBG)
regra Ac
acessivel(Obj):- tem(Obj,Parte), concavidade(Parte), para_cima(Parte).
regra Lv
leve(Obj) :- pequeno(Obj), superficie(Obj,S), feito_de(S,Ms), material_leve(Ms),
fundo(Obj,F), feito_de(F,Mf), material_leve(Mf).
material_leve(plastico).
material_leve(porcelana).
material_leve(aluminio).
regra Ap1
apanhavel(Obj) :- pequeno(Obj), superficie(Obj,S), cilindrico(S), feita_de(S,M),
isolante_termico(M).
regra Ap2
apanhavel(Obj) :- pequeno(Obj), tem(Obj, P), asa(P).
isolante_termico(plastico). isolante_termico(porcelana).
11
MIA - 2005/06
Generalização Baseada nas Explicações (EBG)
c1
c2
c3
superficie(c1,s1)
superficie(c2,s2)
superficie(c3,s3)
feito_de(s1,plastico)
feito_de(s2,plastico)
feito_de(s3,porcelana)
fundo(c1,f1)
fundo(c2,f2)
fundo(s3,f3)
feito_de(f1,plastico)
feito_de(f2,aluminio)
feito_de(f3,porcelana)
plano(f1)
plano(f2)
plano(f3)
tem(c1,p1)
tem(c2,p2)
tem(c3,p3)
concavidade(p1)
concavidade(p2)
concavidade(p3)
para_cima(p1)
para_cima(p2)
para_cima(p3)
pequeno(c1)
pequeno(c2)
pequeno(c3)
cilindrico(c1)
tem(c2,p21)
tem(c3,p31)
asa(p21)
asa(p31)
12
MIA - 2005/06
Page 6
Generalização Baseada nas Explicações (EBG)
As árvores de explicação construídas para provar cada exemplo a partir da teoria
do Domínio são:
C
CL
Es
C
El
Factos Factos
Lv Ap
Ac
CL
Factos
Es
C
El
Lv
Ac
Ap
Ap1
CL
Es
El
Lv
Ap2
Ac
Ap
Ap2
13
MIA - 2005/06
Generalização Baseada nas Explicações (EBG)
Método EBG
1. Construir a árvore de explicação que prova que um (único) exemplo é uma instância
do conceito genérico.
2. Construir as Pré-condições mais fracas (WP) tais que uma explicação é ainda
verdadeira. Para árvores simples, WP é a conjunção dos literais das folhas.
Mas os Termos argumento devem ser o mais gerais possíveis, i.e., independentes do
exemplo (eis a generalização).
–
Para a chávena 1 as WP são:
superficie(O,S), feito_de(S, Ms), nao_poroso(Ms), fundo(O,F), feito_de(F,Mf),
nao_poroso(Mf),
plano(F),
pequeno(O),
material_leve(Ms),
material_leve(F),
cilindrico(S), isolante_termico(Ms), tem(O,P), concavidade(P), para_cima(P).
–
Estas WP formam o novo conceito Ca que é uma especialização do conceito chávena.
(Superfície cilindrica feita de material leve e isolante térmico).
14
MIA - 2005/06
Page 7
Generalização Baseada nas Explicações (EBG)
Se em vez de chávena 1 construíssemos a árvore de explicação para chávena 2, um
novo conceito Cb seria criado para chávenas com asa removendo a restrição do
material isolante_termico.
Logo, o número de conceitos derivados é igual ao número de árvores de explicação
completas diferentes que se podem derivar. (no caso visto, só 2).
15
MIA - 2005/06
EBG por múltiplos exemplos (mEBG)
Generalização Baseada nas Explicações por múltiplos exemplos: mEBG
O Algoritmo é o seguinte:
1. Para cada exemplo construir a árvore de explicação provando que o exemplo é uma
instância do conceito geral (CG).
2. Comparar as árvores de explicação para encontrar a maior sub-árvore partilhada por
todos os exemplos.
3. Aplicar as técnicas de generalização do EBG a esta sub-árvore e extrair a WP tal que
a árvore permaneça uma prova válida.
16
MIA - 2005/06
Page 8
EBG por múltiplos exemplos (mEBG)
–
Se tivessemos usado os exemplos da chávena 1 e 2, a máxima sub-árvore seria:
C
CL
Es
El
Lv
Ac
mEBG(C1, C2)
Ap
WP:
superficie(O,S), feito_de(S,Ms), nao_poroso(Ms), fundo(O,F), feito_de(F,Mf),
nao_poroso(Mf), plano(F), pequeno(O), material_leve(Ms), material_leve(Mf),
tem(O,P), concavidade(P), para_cima(P), apanhavel(O).
–
As condições específicas de "apanhavel" foram apagadas.
17
MIA - 2005/06
Indução Sobre as Explicações (IOE)
IOE : Indução Sobre as Explicações
Como em mEBG, também IOE aprende a partir de múltiplos exemplos.
A diferença está na estratégia de derivar a máxima sub-árvore comum de explicações.
Consideremos 2 exemplos de treino :
1. Aplicar mEBG aos dois exemplos, produzindo a definição de novos conceitos e
retendo as árvores originais.
2. Fazer o "matching" do conceito com cada uma das árvores de prova dos exemplos de
treino para produzir uma substituição θi de pares cj=vj.
•
•
vj é cada variável em C
cj uma constante ou termo do exemplo ou Teoria do Domínio.
3. Derive θ, uma nova substituição para C da seguinte forma:
18
MIA - 2005/06
Page 9
Indução Sobre as Explicações (IOE)
3.1. θ ← ∅
3.2. para cada vj em C faça vj =cj em θ, onde cj é computado como segue:
3.2.1. atente aos valores que substituiram vj em θ1 (c1j), e em θ2 (c2j).
3.2.2. cj ← gen(c1j, c2j), onde gen(c1, c2) é definido por:
SE c1=c2 ENTAO gen (c1, c2) = c1
SENAO
SE c1 = f(t1,1, t1,2 , ..., t1,k) e c2 = f(t2,1, t2,2 , ..., t2,k)
(i.e. termos com o mesmo functor)
ENTAO
gen (c1, c2) = f(gen(t1,1, t1,2 , ..., t1,k), ..., gen(t2,1, t2,2 , ..., t2,k) ).
19
MIA - 2005/06
Indução Sobre as Explicações (IOE)
SENAO gen(c1, c2)=V, onde V é selecionado como segue:
SE gen(c1, c2) nunca chamado
ENTAO
V é uma variável ainda não usada em θ1, θ2 ou θ.
guardar gen(c1, c2) = V numa tabela
SENAO (i.e. já houve uma chamada a gen (c1, c2) )
consulte a tabela e retire a variável considerada para
gen(c1, c2) = V
4. Computar e retornar C com a substituição θ
IOE computa portanto a definição do conceito C tal como mEBG, mas depois
especializa-a introduzindo restrições às variáveis usando a substituição θ.
20
MIA - 2005/06
Page 10
Indução Sobre as Explicações (IOE)
– Primeiro tipo de restrição : Uma constante é introduzida na definição do conceito
quando uma variável V aparecendo na definição C de mEBG fica ligada a uma
constante em cada exemplo de treino.
Suponhamos que se aplicava mEBG às chávenas 1 e 2 :
Na definição do conceito especializado aparece feito_de(S, Ms) onde Ms é o material
da superficie lateral da chávena. c1 e c2 têm superficies laterais de plastico o que
implicará que a definição final do conceito exija que a superficie lateral seja de
plastico.
– Segundo tipo de restrição: É uma restrição de igualdade forçando 2 ou mais variáveis
da definição de C a serem iguais.
Tal acontece quando IOE encontra 2 ou mais variáveis diferentes V1, V2 na definição
do conceito mEBG ligadas ao mesmo termo em cada exemplo. Isto é, o termo Ci pode
diferir de um exemplo para outro mas em cada um deles V1 e V2 estão ligados a um
mesmo Ci.
21
MIA - 2005/06
Indução Sobre as Explicações (IOE)
Suponhamos que aplicamos IOE aos exemplos c1 e c3. Em c1, quer a superficie quer
o fundo são de plastico e em c3 sao ambos de porcelana.
– A definição do conceito C por mEBG leva a :
feito_de(S, Ms) e feito_de(F, Mf).
No primeiro caso (c1), Ms = Mf = plastico
e no segundo caso (c2), Ms = Mf = porcelana.
– Então, IOE encontra uma nova variável M e a definição final do conceito inclui :
feito_de (S, M) e feito_de(F,M).
O novo conceito define chávenas homogéneas
22
MIA - 2005/06
Page 11
Indução Sobre as Explicações (IOE)
Consideremos a seguinte tabela onde a 1ª coluna mostra as 6 variáveis que aparecem
na definição do conceito C de mEBG.
As 2ª, 3ª e 4ª colunas apresentam as substituições θ, para c1, c2 e c3. As duas colunas
finais mostram os resultados da aplicação de IOE aos exemplos (c1,c2) e (c1,c3),
respectivamente.
Variável
V
exemplos treino
C1
C2
C3
resultados da aprendizagem
IOE(C1, C2)
IOE(C1, C3)
Obj
c1
c2
c3
O
S
s1
s2
s3
Sup
Ms
plástico
F
f1
Mf
Parte
plástico
f2
porcelana
f3
plástico alumínio porcelana
p1
p2
p3
plástico
O
Sup
M
Fundo
Ma
P
Fundo
M
P
23
MIA - 2005/06
Indução Sobre as Explicações (IOE)
Consideremos a última coluna da tabela mostrando os resultados do algoritmo IOE
para c1 e c3. No passo 3 do algoritmo, o procedimento gen é aplicado a cada linha.
– A 1ª chamada computa gen (c1, c3), e como as constantes são diferentes cria uma
nova variável, seja:
θ = {Obj = O}
– A 2ª chamada a gen leva a : gen(s1, s3) = Sup
θ = {Obj = O, S=Sup}
– A 3ª chamada a gen (gen(plastico, porcelana)) cria uma restrição de igualdade
gerando a variável M
θ = {Obj = O, S=Sup, Ms=M}
A informação gen(plastico,porcelana)=M é guardada para posterior utilização.
– Quando se chega à 5ª linha, o algoritmo consulta a tabela e verifica que gen já foi
chamado com aqueles argumentos, logo dá à variável Mf a mesma substitução, isto é,
M.
θ = {Obj=O, S=Sup, Ms=M, F=Fundo, Mf=M}
24
MIA - 2005/06
Page 12
Indução Sobre as Explicações (IOE)
Este método (chamado das "não-coincidências" ) é simples mas poderoso.
– Ao contrário de outros métodos indutivos, não procura encontrar padrões nos
exemplos de treino tal como eles são apresentados originalmente.
– Aplica a Teoria do Domínio e o conceito genérico para identificar características úteis
para a generalização indutiva.
O espaço das definições de conceitos possíveis de serem construídas por esta técnica é
superior a mEBG, pois IOE pega em cada um dos conceitos mEBG e gera
substituições restringindo a definição pelas igualdades.
No domínio considerado das chávenas, IOE gera 58 diferentes definições de chávenas
(incluindo as de asa de plástico e as homogéneas).
– Baseado em :
– "A study of Explanation-based methods for inductive learning" - Nicholas Flann;
Thomas Dietterich; Machine Learning, Nov-89
25
MIA - 2005/06
Page 13
Download