1 Profa. Mara Abel Instituto de Informática - UFRGS [email protected] Sistemas de Conhecimento:...
Transcript of 1 Profa. Mara Abel Instituto de Informática - UFRGS [email protected] Sistemas de Conhecimento:...
1
Profa. Mara Abel
Instituto de Informática - UFRGS
Sistemas de Conhecimento: Aplicação e desenvolvimento
2
Nomes, nomes...
• Sistemas de IA
– Sistemas simbólicos, não algorítmicos que utilizam técnicas de
IA para solução de problemas
• Sistemas baseados em conhecimento
– Sistemas de IA que otimizam a busca da solução pela
aplicação de conhecimento explicitamente representado
• Sistemas Especialistas
– Sistemas baseados em conhecimento que resolvem
problemas que necessitam de altos níveis de perícia para sua
solução. O conhecimento é extraído de um especialista
humano.
3
Mais nomes...
• Sistemas de conhecimento
– Termo mais atual. Refere-se a qualquer sistema
de informação que gerencie, armazene e/ou
aplique conhecimento explicitamente
representado.
– O conhecimento pode ser de fonte humana, da
organização, disperso, etc.
4
Sistemas de Conhecimento
• Permitem
– Extrair o conhecimento de suas diferentes fontes,
tornando-o independente das pessoas
– Organizá-lo
– Distribuí-lo
– Multiplicá-lo
5
Evolução dos Sistemas Especialistas
• Primeira fase – Reprodução da tarefa através de um sistema
simbólico; conhecimento embutido no código
• Segunda fase– Extração do conhecimento do especialista
reproduzindo com fidelidade em um sistema simbólico; conhecimento em um banco de conhecimento
• Terceira fase– Conhecimento pertence à organização, sendo
extraído, racionalizado e implementado através de diversos recursos da computação.
6
Quando utilizar sistemas de
conhecimento?
7
SE é solução quando...
• Risco de manter o conhecimento estratégico em poder das pessoas é muito grande
• Domínios são muitos simbólicos– Problema é descrito com variáveis não
quantificáveis: pequeno, inadequado, escuro, suficiente, quase, ao lado..
• Número muito grande de variáveis
8
Benefícios da Organização
• Produtividade
• Preservação do capital intelectual
• Disseminação do conhecimento organizacional
• Qualidade da decisão
• Padronização do comportamento empresarial
• Treinamentos eficientes
9
PRINCIPAIS APLICAÇÕES
Tarefas Analíticas
• Classificação
• Aconselhamento
• Diagnóstico
• Monitoração
• Previsão
Tarefas de Síntese
• Projeto e/ou configuração
• Modelagem
• Planejamento
• Escalonamento
• Atribuição
10
Serviço de Atendimento ao Cliente
Problemas - Volume e complexidade crescentes
TécnicosTécnicos
11
Autorização de crédito na American Express
Projeto de produtos na Nippon Steel
Suporte a clientes de produtos IBM e Compaq Computer
Roteamento de aeronaves na American Airlines
Utilização de mão-de-obra no Department of Defense (EUA)
Processamento de reivindicações de reembolso sob garantia na Ford
Aplicações
12
Aplicações na Indústria
• Diagnóstico de falhas nos motores da Boeing e Airbus, e
também em metrôs e trens
• Suporte de vendas para circuitos integrados Analog
Devices
• Estimativa do custo de produção de peças em plástico-
Legrand
• Análise de cartas de telecomunicação e sistemas eletrônicos de testes de dados Ericsson
• Help Desk para suporte após venda de robôs -Sepro Robotique
13
PetroGrapher
• Banco de dados inteligente para a gerência de descrições petrográficas para apoiar a exploração de petróleo
• Múltiplos modelos de conhecimento mapeados para banco de dados
• Realiza caracterização de reservatórios de petróleo segundo critérios geológicos
• Disponibiliza dados de reservatórios para consulta
14
Celupa
• Monitoração do processo de produção de filtros de papel para café
• Sistema recebe dados analógicos, mede as diferenças do padrão e ajusta equipamento
• Conhecimento dos técnicos e do padrão exigido da empresa
15
Engenharia de ConhecimentoCapturando conhecimento da
organização e das pessoas
16
Objetivos da Engenharia de Conhecimento
• Engenharia de software para sistemas baseados em conhecimento
• Transformar o processo ad hoc de construir sistemas baseados em conhecimento em uma disciplina da engenharia– Métodos
– Linguagens
– Ferramentas
17
Engenharia de Conhecimento
• Aquisição de conhecimento– Extração do conhecimento de suas diversas fontes
• Representação de conhecimento– Modelagem do domínio
• Validação do conhecimento– Verificação de consistência
• Explicação e justificativa– Recuperação e apresentação do raciocínio ao usuário
18
Evolução
• Paradigma de transferência– Especialista detém o conhecimento que deve ser
extraído e colocado no sistema.
• Paradigma de modelagem – Organização detém o conhecimento
– Conhecimento existente nas pessoas, arquivos, sistemas deve ser extraído e modelado em um formato computacional
19
Análise de Sistemas - Análise de Conhecimento
1. Necessidades do usuário
2. Informações e dados factuais, processos e procedimentos
3. Entradas, saídas e fluxo de dados
4. Dados quantitativos5. Técnicas estruturadas
6. Aspectos sintáticos do domínio e seus processos
1. Necessidades da perícia e do usuário
2. Aplicação cognitiva dos dados e da informação
3. Conceitos e estratégias de solução de problemas
4. Dados heurísticos e subjetivos
5. Aquisição cognitiva do conhecimento e técnicas de análise
6. Riqueza semântica do domínio e raciocínio de solução de problemas
20
Abordagem de Modelagem
• Modelos formais
• Conceitos representados explicitamente
• Métodos de solução representados explicitamente e de modo abstrato
• Compartilhamento de conceitos e métodos
• Reuso do modelo
21
Metodologias que Aplicam a Abordagem de Modelagem
• Tarefas genéricas
• Métodos de limitação de papéis
Componentes da perícia
• Ontologias e OntoLíngua
• VITAL
• PROTÉGÉ
• KADS e Common KADS .
22
Metodologia Common KADSUtilizando um formalismo para modelar
conhecimento
23
site: www.commonkads.uva.nl
24
Princípios do Common KADS
• Princípio da Modelagem: um modelo é uma abstração de algum aspecto
da realidade. Modelar é construir uma boa descrição de alguns aspectos do
conhecimento, deixando de fora o resto. O modelo torna possível focar em
alguns aspectos e ignorar os outros.
• Princípio do nível de conhecimento: primeiro se concentre na estrutura
conceitual do conhecimento, deixando os aspectos de implementação para
mais tarde.
• Princípio da Tipagem do Conhecimento: modela-se o conhecimento
como um conjunto funcional bem estruturado, cujas partes apresentam papéis
bem definidos e especializados na solução de problemas.
• Processo em espiral: não tão rígido como o modelo em cascata nem tão
livre como a prototipação rápida
25
O conjunto de modelos
modelo da organização
modelo da tarefa
modelo dos agentes
modelo do conhecimento
modelo de comunicação
modelo do projeto
contexto
conceito
artefato
26
O Modelo do Conhecimento
Representando o conhecimento em um formalismo
27
Modelo do Conhecimento: categorias de conhecimento
Conhecimento da Tarefa- Objetivos da tarefa- Decomposição da tarefa- Controle da tarefa
Conhecimento de inferência- Inferências básicas - Papéis
Conhecimento do Domínio - Tipos - Regras - Fatos
Diagnóstico(tarefa)
Hipótese Verificação(inferência) (inferência)
Sintoma Doença Teste
(tipo) (tipo) (tipo)
CO
NH
EC
IME
NT
OO
BJE
TIV
OS
AÇ
ÕE
S
28
Conhecimento do DomínioOntologias
• Especificação formal e explícita de um conjunto de
conceitos compartilhados
– Formal: processável por computador
– Explícita: conceitos e restrições previamente definidos
– Compartilhado: descreve um conhecimento consensual, que
é aceito por um grupo.
• Inclui conceitos, relações, regras e todos os tipos
estáticos.
29
Ontologia
(i) Um vocabulário de conceitos, ou termos do
domínio;
(ii) a tipologia do domínio, que define tipos de dados e
restrições de valores que os termos devem
respeitar;
(iii) as relações entre conceitos, que formam as
taxonomias e partonomias daquele domínio, ou
outras associações entre conceitos.
30
Construtores do Conhecimento do Domínio
• Conceitos: objetos ou entidades do domínio
– Definidos por seus atributos e tipos de valores
• Relações : classificação, especialização, agregação,
conjunto
• Regras : relações de dependências entre conceitos
do domínio ou entre expressões de domínio
Conceitos
• Conceitos do domínio: objetos ou entidades
• os atributos ou propriedades desses objetos;
• as restrições que definem os conceitos e distinguem
a realidade deste domínio dos demais
• (Descrevem o que são as coisas do domínio)
32
Conceitos
CONCEPT tanque-combustível
ATTRIBUTES
Status:{cheio, reserva, vazio}
Tipo-combustivel: combustível
END-CONCEPT tanque-combustível
VALUE-TYPE combustível
VALUE-LIST : {gasolina,álcool}
TYPE: ORDINAL;
END-VALUE-TYPE combustível;
33
Relações do Domínio
Principalmente
• Classificação
• Especialização
• Agregação
• Associação de conjunto
34
Base de Conhecimento
• Instâncias dos conceitos do domínio que descrevem a aplicação
• Não são instâncias do usuário
INSTANCE tanque-combustível
Status: vazio
Tipo-combustivel: gasolina
END-INSTANCE tanque-combustível
35
Termos de Domínio
• Declarações sobre os conceitos do domínio ou qualquer combinação lógica dessas declarações
tanque-combustível.status = vazio;
bateria.status =baixa => força.status = desligado
farol.status = não-funciona E ignição.status = não-funciona E radio.status = não-funciona
36
Tipo-regra: instâncias
Entrada-combustível.status = bloqueado
CAUSA
gasolina.status = falso;
bateria.status = baixa
farol.status = ligado
CAUSA
força.valor = desligado
37
Modelo da Tarefa
• Define a relação entre os conceitos do domínios
necessários à aplicação e os métodos de solução de
problema abstratos necessários para obter a
solução.
• Realiza a instanciação dos métodos de solução de
problemas
38
Modelo da Tarefa - Definido por ...
• Objetivo
• Papéis de entrada e saída
• Corpo da tarefa– sub-objetivos
– sub-tarefas
– estrutura de controle: em que ordem os passos da tarefa serão executados
39
Inferências (primitivas)
• Abstrair
• Atribuir
• Classificar
• Comparar
• Cobrir
• Criticar
• Avaliar
• Gerar
• Agrupar
• Casar
• Modificar
• Operacionalizar
• Propor
• Prever
• Selecionar
• Ordenar
• Especificar
• Verificar
40
Métodos de Solução de Problemas
• Componente dinâmico do conhecimento
• Modelo abstrato da inferência aplicável àquela classe de
problemas
• NÃO correspondem aos métodos de inferência por
busca, como raciocínio progressivo ou regressivo
• Generalização de um padrão de raciocínio específico,
mas não é um raciocínio genérico
41
Tipos de MSPs
• Geração e teste
• Classificação heurística
• Diagnóstico sistemático
• Verificação
• Reparo
• Projeto
• Configuração
42
obter
Exemplo: Diagnóstico
hipóteses
valor verdade
reclamação
observação
achadocobrir
especificar
verificar
hipótese
selecionar
43
obter
Diagnóstico
hipóteses
valor verdade
reclamação
observação
achadocobrir
especificar
verificar
hipótese
selecionar
Rede com performance baixa
Processo em deadlock causa rede com performance baixa
Processo em deadlock?
•Processo em deadlock causa rede com performance baixa
•Alto consumo de memoria causa rede com performance baixa verdade
Causa: processo XYZ
Processo XYZ parado
44
Construção do Modelo
Formalizando o conhecimento adquirido!!
45
(i) (i) (i) (i)
Modelo Cognitivo
Modelo do Conhecimento
Abstração
Construção do Modelo
46
Modelos KL (Knowledge Level)
O processo de modelagem
é
contínuo
cíclico
falho
Aproximação
da realidade !
Observações provocam modificações no modelo
e o modelo sugere novas observações!
Modelo deve ser continuamente
validado !
47
Identificação do conhecimento
• Familiarização com o domínio– listar todas as fontes de conhecimento e
caracterizá-las,
– resumo dos textos-chave a respeito do problema ou tarefa,
– seleção e identificação de cenários representativos do domínio,
– coleta de casos, se houver.
48
Identificação do conhecimento
• Listar componentes potenciais do modelo:
– identificar tipo da tarefa (diagnóstico,
monitoração?)
– identificar tipo do domínio (técnico,
excessivamente simbólico, muitas heurísticas?)
49
Especificação do conhecimento
• Escolher a estrutura de inferência a partir de uma biblioteca disponível
– Verificar se as entradas e saídas desta estrutura são adequadas ao problema.
– Colocar “anotações” nos papéis do conhecimento relacionando-os às instâncias da base de conhecimento.
– Adaptar a estrutura para as necessidades do domínio, se necessário
50
Especificação do conhecimento
• Construção do esquema inicial do domínio– Definir os conceitos e termos do domínio
– Construir as hierarquias e partonomias desses conceitos
– Utilizar os conceitos de abstração já definidos, especificando outros apenas quando a semântica for essencial.
51
Especificação do conhecimento
• Completar a especificação do modelo do conhecimento.
– Pode-se partir da inferência e definir os conceitos (melhor),
– ou partir dos conceitos e identificar a inferência (possível quando casos foram obtidos na fase de aquisição).
52
Validação do Conhecimento
• Validar o modelo do conhecimento
– Utilizar simulação no papel,
– Casos previamente reservados para teste,
– Ou protótipo construído apenas para validar a base.
• Completar a base de conhecimento
– Incluir instâncias necessárias para a execução da tarefa em questão.
53
Referências
Velde, W.V. Issues in knowledge level modeling. In: David, J. M.et al. Second generation expert systems. Berlin: Springer Verlag, 1993
Schreiber, G.; Akkermans, H.; Anjewierden, A.; Hoog, R.d.; Shadbolt, N.; Velde, W.v.d.; Wielinga, B. Knowledge engineering and management: the CommonKads methodology. Cambridge: The MIT Press, 2000.
Shadbolt, N., O'hara, K. and Crow, L. The experimental evaluation of knowledge acquisition techniques and methods: history, problems and new directions. International Journal of Human-Computer Studies, 51: 729-755, 1999.