42
Engenharia do Conhecimento Ernesto Trajano Jacques Robin CIn-UFPE

Engenharia do Conhecimento

  • Upload
    dorit

  • View
    32

  • Download
    1

Embed Size (px)

DESCRIPTION

Engenharia do Conhecimento. Ernesto Trajano Jacques Robin CIn-UFPE. Roteiro. O que é? Tipologia do conhecimento e do seu processamento Exemplo de metodologia: CommonKADS Processo simple para desenvolvimento de agente baseado em conhecimento Engenharia do conhecimento x de software - PowerPoint PPT Presentation

Citation preview

Page 1: Engenharia do Conhecimento

Engenharia do Conhecimento

Ernesto TrajanoJacques Robin

CIn-UFPE

Page 2: Engenharia do Conhecimento

Roteiro

O que é? Tipologia do conhecimento e do seu

processamento Exemplo de metodologia: CommonKADS Processo simple para desenvolvimento de agente

baseado em conhecimento Engenharia do conhecimento x de software Tópicos avançados

Page 3: Engenharia do Conhecimento

O que é engenharia de conhecimento ?

Engenharia de agentes baseados em baseados em conhecimentoconhecimento Metodologias Processos Base de conhecimento e meta-conhecimento reutilizáveis

Principalmente define como adquirir, analisar, validar e manter uma base de conhecimento (BC)

Também pode definir mecanismos de inferência a serem utilizados com esta base

Page 4: Engenharia do Conhecimento

Engenharia do conhecimento para agentes artificiais

Ask

Tell

Retract

Am

bie

nte

Sensores

Atuadores

Base deConhecimentoEspecializada

Máquina deInferênciaGenérica

Aquisição e Representação Conhecimento

Raciocínio Automátic

o

Page 5: Engenharia do Conhecimento

Engenharia do conhecimentopara agentes humanos

Extrair, documentar e gerenciar o conhecimento estratégico das organizações.

Sistemas colaborativos. Repositórios de “expertise” (perícia).

Page 6: Engenharia do Conhecimento

Multi-disciplinaridade

Page 7: Engenharia do Conhecimento

Problemas

Informações e conhecimentos complexos são de difícil compreensão

Especialistas não são unânimes, nem precisos Variedade de representações:

texto gráficos, imagens heurísticas, regras

Page 8: Engenharia do Conhecimento

Perspectivas

Transferência de conhecimento: transferência do que está da cabeça do especialista para

a base de conhecimento. assume que o conhecimento já existe e que ele precisa

apenas ser coletado. hipótese não é correta: conhecimento implícito. A máquina resolve como o especialista.

Modelagem do conhecimento: construção de modelos do problema Conseqüências:

modelo -> aproximação da realidade processo cíclico modelo pode estar sujeito a interpretações subjetivas, o que

pode levar a erros. A máquina resolve tão bem quanto o especialista.

Page 9: Engenharia do Conhecimento

Engenharia de uma base de conhecimento

Elicitação do conhecimento

Formalização do conhecimento

Implementação do conhecimento

Nível do conhecimento:• Nos termos do especialista do domínio de aplicação• Linguagem natural, Notações gráficas ad-hoc

Nível semi-formal:• Notação textual estruturada padrão (XML) • Notação gráfica padrão (UML)• Validação com especialista

Nível formal:• Notação sem ambigüidade com semântica definida matematicamente (Lógica, Probabilidades)• Verificação de consistência

Nível da implementação:• Codificação em uma linguagem de programação• Teste de protótipo

Page 10: Engenharia do Conhecimento

Engenharia de uma base de conhecimento

Elicitação do conhecimento

Formalização do conhecimento

Implementação do conhecimento

Nível do conhecimento:• Nos termos do especialista do domínio de aplicação• Linguagem natural, Notações gráficas ad-hoc

Nível semi-formal:• Notação textual estruturada padrão (XML) • Notação gráfica padrão (UML)• Validação com especialista

Nível formal:• Notação sem ambigüidade com semântica definida matematicamente (Lógica, Probabilidades)• Verificação de consistência

Nível da implementação:• Codificação em uma linguagem de programação• Teste de protótipo

Page 11: Engenharia do Conhecimento

Engenharia de uma base de conhecimento

Elicitação do conhecimento

Formalização do conhecimento

Implementação do conhecimento

Nível do conhecimentoNível do conhecimento:• Nos termos do especialista do domínio de aplicação• Linguagem natural, Notações gráficas ad-hoc

Nível semi-formal:• Notação textual estruturada padrão (XML) • Notação gráfica padrão (UML)• Validação com especialista

Nível formal:• Notação sem ambigüidade com semântica definida matematicamente (Lógica, Probabilidades)• Verificação de consistência

Nível da implementação:• Codificação em uma linguagem de programação• Teste de protótipo

• Entrevistas estruturadas com especialista• Preparação de dados

• Ontologias • Linguagens semi-formais derepresentação do conhecimento

• Linguagens formais derepresentação do conhecimento• Aprendizagem de Máquina

• Compiladores• Máquinas de inferências• Aprendizagem de Máquina

Page 12: Engenharia do Conhecimento

Tipologia do conhecimento

Tipos de conhecimento: léxico estrutural meta-conhecimento:

PSM qualitativo

Page 13: Engenharia do Conhecimento

Conhecimento léxico

Conceitos mínimos: não podem ser decompostos termos atômicos, símbolos terminais, etc.

Exemplos: domínio é a medicina meningite cirurgia bactéria

Page 14: Engenharia do Conhecimento

Conhecimento estrutural

Alguns conceitos podem depender de outros: para definir o tratamento de uma infecção é necessário

saber que bactéria a está causando

Formas de estruturação: regras, hierarquias (relações is-a), etc. sub-tipo(cirurgia, neurocirurgia).

Page 15: Engenharia do Conhecimento

Meta-conhecimento comportamental: PSM

A partir de um estado E, certas ações (operações), levam ao objetivo O.

Operadores: podem ser generalizados em PSM, i.e., métodos/estratégias de resolução de problemas (problem solving methods).

Espécie de “padrão de projeto” para o processo de inferência.

Controla a execução de uma BC. Especifica:

inferências (ações) seqüência das inferências (seqüência de ações) conhecimento necessário em cada passo do processo

Em geral, estão organizados em bibliotecas.

Page 16: Engenharia do Conhecimento

Exemplo de PSM

Classificação heurística

observações soluções

abstrair refinar

abstrações deobservações

abstrações desoluções

casamentoheurístico

Page 17: Engenharia do Conhecimento

Meta-conhecimento qualitativo

Descreve alguma maneira de gerar um julgamento de valor sobre uma BC.

Exemplos: portabilidade, custo de desenvolvimento, custo de manutenção, segurança, privacidade, detecção de "anomalias", etc.

Page 18: Engenharia do Conhecimento

Tipos de processamento

Atividades de processamento do conhecimento: Aquisição: como o

conhecimento é adquirido

Formalização do conhecimento adquirido

Operacionalização: como o conhecimento pode ser implementado

Manutenção: como o conhecimento pode ser mantido (coerência, refino, relevância, etc.)

BC

AQUISIÇÃO

FORMALIZAÇÃO

IMPLEMENTAÇÃO

MANUTENÇÃO

Page 19: Engenharia do Conhecimento

Aquisição de conhecimento

Três formas de aquisição: manual semi-automática automática

Page 20: Engenharia do Conhecimento

Aquisição manual

Brainstorming Entrevistas:

estruturadas ou não estruturadas

Self report Outros:

Observação e análise do domínio, leitura de documentos, etc.

especialista

Base de conhecimento

Engenheiro de conhecimento

documentação

codificação

explicitação

Page 21: Engenharia do Conhecimento

Aquisição manual

Problemas: toma muito tempo requer a presença do especialista conhecimento possui muitas formas: teórico, procedural,

etc. com vários especialistas o problema tende a ser maior gerenciamento é complicado

Quando usar? identificação do conhecimento: brainstorming, entrevistas

não estruturadas especificação do conhecimento: self report refino do conhecimento: entrevista estruturada

Page 22: Engenharia do Conhecimento

Aquisição semi-automática

Uso de ferramentas apóio à atividade de aquisição: editor, navegador, visualização da documentação, etc.

especialista Ferramentas interativas de entrevista

Base de conhecimento

Engenheiro de conhecimento

Page 23: Engenharia do Conhecimento

Aquisição Automática

Aprendizagem de Máquina (Machine Learning)

Algoritmos de aprendizagem automática “induzem”as regras a partir de exemplos do domínio.

Aqui não há aquisição por parte do Engenheiro de Conhecimento

Isto não quer dizer o trabalho será menor!! É apenas de outro tipo

Casos e exemplos Indução automática Regras

Page 24: Engenharia do Conhecimento

CommonKADS

Coleção de métodos estruturados para a construção de sistemas baseados em conhecimento

Pesquisa colaborativa na União Européia (+15 anos) Utiliza diagramas baseados em UML

Diagrama de classes Diagrama de estados Diagrama de atividades

Possui seis modelos Modelo organizacional Modelo de tarefas Modelo de agentes Modelo de comunicação Modelo de “expertises” Modelo de projeto

Page 25: Engenharia do Conhecimento

Modelo organizacional

Descrição e análise da organização como um todo Representa diversos aspectos de uma

organização Contexto de negócio, metas, estratégia estrutura interna

função estrutura processos autoridade recursos (sistemas de apóio, equipamentos, ...)

Cada aspecto é modelado por um diagrama ou por uma descrição em linguagem natural

Possível problema: pode ser difícil definir o escopo do que é a "organização".

Page 26: Engenharia do Conhecimento

Modelo organizacional

Page 27: Engenharia do Conhecimento

Modelo de tarefas

Alguns processos identificados no modelo organizacional podem ser passíveis de automação.

Modelo de tarefas especifica estes processos em termos de: elementos internos:

fluxo de dados controle sub-tarefas restrições: pré e pós-condições

elementos externos: objetivo e importância agentes envolvidos conhecimento necessário outras competências recursos qualidade e “performance”

Page 28: Engenharia do Conhecimento

Modelo de agentes

Mudança de perspectiva: antes, perspectiva do processo ou tarefa; agora, perspectiva dos agentes individuais

Nome agente imobiliário governamental

Organização departamento de habitação

Envolvido em verifica formulários e atribui residências

Comunica-se com banco de dados

Conhecimento critérios julgamento, regras de atribuição e de urgência

Outras competências lida com casos problemáticos e não convencionais

Responsabilidades e restrições

certifica-se que as pessoas são tratadas igualmente (sem favorecimentos). Já foi um problema no passado

Page 29: Engenharia do Conhecimento

Modelo de comunicação

Especifica tipo de informação que é trocada entre os agentes como esta informação é trocada

 Controle de alto nível sobre a execução de uma tarefa

Três níveis de modelagem: plano geral de comunicação transações individuais entre duas tarefas executadas por

diferentes agentes especificação dos detalhes da estrutura interna da

mensagem de uma transação

Problemas semelhantes aos de comunicação em sistemas multiagente.

Page 30: Engenharia do Conhecimento

Modelo de comunicação

Task A2

Task A3

Task A4

Task B2

Task A5

Agent A(e.g. user)

Task B3

Agent B(e.g. system)

Task B4

Task A1

Dialogue

TransactionTr. 1

TransactionTr. 2

TransactionTr. 3

Task B1

TransactionTr. 4

Page 31: Engenharia do Conhecimento

Modelo de “expertise”

Modelo do "expertise" (perícia) necessário para realizar uma determinada tarefa.

Na verdade é um conjunto de modelos Dividido em três componentes:

conhecimento declarativo: conhecimento do domínio. Quatro tipos:

conceitos: classes de objetos propriedades: atributos dos conceitos expressões: "a propriedade do conceito é valor" relações: ligações entre elementos do domínio

conhecimento procedural (inferência): modela o conhecimento sobre a inferência que deve ser feita para se resolver um problema

conhecimento da tarefa: especifica tarefas (sub-tarefas) e objetivos a serem alcançados. Representada por um gráfico hierárquico

Page 32: Engenharia do Conhecimento

Modelo de projeto

Três estágios: projeto da aplicação : decomposição do modelo de

"expertise" em componentes. Decomposição pode ser funcional, OO ou orientada a algum paradigma da IA

projeto da arquitetura : decidir que técnicas e representações de IA são as mais adequadas para a implementação dos componentes

projeto da plataforma: decidir como implementar (linguagem) e em que hardware

Page 33: Engenharia do Conhecimento

CommonKADS

Vantagem: grande quantidade de modelos favorece uma boa

compreensão do processo de engenharia como um todo

Desvantagens: que modelos são essenciais? os modelos não são formais

Page 34: Engenharia do Conhecimento

Um Exemplo: Circuitos Digitais

Estabelecer o objetivo: determinar se o circuito está de acordo com sua

especificação (o circuito acima é um somador) responder a perguntas sobre o valor da corrente em

qualquer ponto do circuito

Page 35: Engenharia do Conhecimento

Decida sobre o que falar Para alcançar o objetivo, é relevante falar sobre

circuitos, terminais, sinais nos terminais, conexões entre terminais

Para determinar quais serão esses sinais, precisamos saber sobre: portas e tipos de portas: AND, OR, XOR e NOT

Não é relevante falar sobre: fios, caminhos dos fios, cor e tamanho dos fios, etc.

Page 36: Engenharia do Conhecimento

Decida qual vocabulário usar

Nomear os objetos e relações do domínio com funções, predicados e constantes constantes

distinguir as portas : X1, X2... distinguir os tipos de porta: AND, OR, XOR...

funções e predicados tipo de uma porta:

Tipo(X1) = XOR, Tipo(X1, XOR), XOR(X1)

indicar entradas e saídas:Out(1, X1), In(1, X2)

indicar conectividade entre portas:Conectado(Out(1, X1), In(1, X2))

Page 37: Engenharia do Conhecimento

Codifique regras genéricas

(1) (1) Dois terminais conectados têm o mesmo sinal:t1, t2 Conectado(t1, t2) Sinal(t1) = Sinal(t2)

(2) O sinal de um terminal é On ou Off (nunca ambos)

t Sinal(t) = On Sinal(t) = Off, On Off

(3) Conectado é um predicado comutativo t1,t 2 Conectado(t1, t2) Conectado(t2, t1)

(4) Uma porta OR está On sse qualquer das suas entradas está On:

g Tipo(g) = OR Sinal(Out(1,g)) = On n Sinal(In(n,g))=On

(5) etc...

Page 38: Engenharia do Conhecimento

Codifique a instância específica

Portas:

Tipo(X1) = XOR Tipo(X2) = XORTipo(A1) = AND Tipo(A2) = ANDTipo(O1) = OR

Conexões:

Conectado(Out(1,X1),In(1,X2))Conectado(Out(1,X1),In(2,A2))Conectado(Out(1,A2),In(1,O1)) . . .

Page 39: Engenharia do Conhecimento

Proponha questões ao Procedimento de Inferência

Que entradas causam Out(1,C1) = Off e Out(2, C1) = On?

i1, i2, i3, o1, o2 Sinal(In(1,C1)) = i1 Sinal(In(2,C1)) = i2 Sinal(In(3,C1)) = i3 Sinal(Out(1,C1)) = o1 Sinal(Out(2,C1) = o2.

Resposta:(i1 = On i2 = On i3 = Off) (i1 = On i2 = Off i3 = On) (i1 = Off i2 = On i3 = On)

Page 40: Engenharia do Conhecimento

Proponha questões ao Procedimento de Inferência

Quais são os conjuntos de valores possíveis para todos os terminais do circuito? i1, i2, i3 Sinal(In(1,C1)) = i1 Sinal(In(2,C1)) = i2 Sinal(In(3,C1)) = i3 Sinal(Out(1,C1)) = Off Sinal(Out(2,C1) = On

Resposta é o objetivo do agente!

Page 41: Engenharia do Conhecimento

Engenharia de conhecimento x de software

Engenharia de software o cliente não é,

necessariamente, um especialista

o cliente define apenas o quê fazer

processamento divido em muitos componentes simples

componentes desenvolvidos pelo programador

Engenharia do conhecimento o cliente é um especialista o especialista define

também como fazê-lo processamento divido em

poucos componentes complexos

componentes geralmente reutilizados (bibliotecas)

Page 42: Engenharia do Conhecimento

Tópicos avançados em EC

Metodologias para sistemas multi-agentes CommoMAS, MAS-CommonKADS

Metodologias integrando aquisição manual com aprendizagem

Metodologias integrando EC como passo de ES Reuso de BC Geração automática de código:

Código da base de conhecimento Código da máquina inferência (ex, a partir de PSM)