Sistemas de Conhecimento:
Aplicação e desenvolvimento
Profa. Mara Abel
Instituto de Informática - UFRGS
[email protected]
1
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.
2
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.
3
Sistemas de Conhecimento
• Permitem
– Extrair o conhecimento de suas diferentes fontes,
tornando-o independente das pessoas
– Organizá-lo
– Distribuí-lo
– Multiplicá-lo
4
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.
5
Quando utilizar sistemas de
conhecimento?
6
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
7
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
8
PRINCIPAIS APLICAÇÕES
Tarefas Analíticas
Tarefas de Síntese
• Classificação
• Projeto e/ou
configuração
• Aconselhamento
• Diagnóstico
• Monitoração
• Previsão
• Modelagem
• Planejamento
• Escalonamento
• Atribuição
9
Serviço de Atendimento ao Cliente
Problemas - Volume e complexidade crescentes
Técnicos
Técnicos
10
Aplicações
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
11
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ásticoLegrand
• 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
12
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
13
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
14
Engenharia de Conhecimento
Capturando conhecimento da
organização e das pessoas
15
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
16
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
17
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
18
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 quantitativos
5. 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
19
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
20
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 .
21
Metodologia Common KADS
Utilizando um formalismo para modelar
conhecimento
22
site: www.commonkads.uva.nl
23
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
24
O conjunto de modelos
contexto
conceito
artefato
modelo da
organização
modelo
da tarefa
modelo do
conhecimento
modelo
dos agentes
modelo de
comunicação
modelo do
projeto
25
O Modelo do Conhecimento
Representando o conhecimento em
um formalismo
26
OBJETIVOS
Conhecimento de
inferência
CONHECIMENTO
Conhecimento da
Tarefa
AÇÕES
Modelo do Conhecimento: categorias
de conhecimento
Diagnóstico
(tarefa)
- Objetivos da tarefa
- Decomposição da
tarefa
- Controle da tarefa
- Inferências básicas
- Papéis
Conhecimento
do Domínio
- Tipos
- Regras
- Fatos
Hipótese
(inferência)
Sintoma
(tipo)
Verificação
(inferência)
Doença
(tipo)
Teste
(tipo)
27
Conhecimento do Domínio
Ontologias
• 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.
28
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.
29
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
30
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)
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;
32
Relações do Domínio
Principalmente
• Classificação
• Especialização
• Agregação
• Associação de conjunto
33
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
34
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
35
Tipo-regra: instâncias
Entrada-combustível.status = bloqueado
CAUSA
gasolina.status = falso;
bateria.status = baixa
farol.status = ligado
CAUSA
força.valor = desligado
36
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
37
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
38
Inferências (primitivas)
• Abstrair
• Casar
• Atribuir
• Modificar
• Classificar
• Operacionalizar
• Comparar
• Propor
• Cobrir
• Prever
• Criticar
• Selecionar
• Avaliar
• Ordenar
• Gerar
• Especificar
• Agrupar
• Verificar
39
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
40
Tipos de MSPs
• Geração e teste
• Classificação heurística
• Diagnóstico sistemático
• Verificação
• Reparo
• Projeto
• Configuração
41
Exemplo: Diagnóstico
hipótese
reclamação
cobrir
especificar
selecionar
hipóteses
observação
obter
verificar
achado
valor
verdade
42
Diagnóstico
Processo em deadlock
causa rede com
performance baixa
hipótese
Processo em
deadlock?
especificar
observação
Rede com
performance baixa
reclamação
cobrir
selecionar
hipóteses
•Processo em deadlock causa
rede com performance baixa
•Alto consumo de memoria
causa rede com performance
baixa
obter
verificar
achado
Processo XYZ parado
valor
verdade
verdade
Causa: processo XYZ
43
Construção do Modelo
Formalizando o conhecimento
adquirido!!
44
Construção do Modelo
Modelo
Cognitivo
Modelo do
Conhecimento
(i) (i) (i) (i)
Abstração
45
Modelos KL (Knowledge Level)
O processo de
modelagem é
 contínuo
 cíclico
 falho
Modelo deve ser
continuamente
validado !
Aproximação
da realidade !
Observações provocam
modificações no modelo
e o modelo sugere
novas observações!
46
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.
47
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?)
48
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
49
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.
50
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).
51
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.
52
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 HumanComputer Studies, 51: 729-755, 1999.
53
Download

SE-MARA