50
5. Construcción del Modelo de Conocimiento 5.1 Introducción: proceso de modelado de conocimiento 5.2 Identificación del conocimiento 5.3 Especificación del conocimiento 5.4 Refinamiento del conocimiento Carlos Alonso González Dpto. de Informática Universidad de Valladolid La metodología CommonKADS

5. Construcción del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonKA… · Universidad de Valladolid La metodología CommonKADS. 5-2 5.1 Introducción ... • Considerar

  • Upload
    votu

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

5. Construcción delModelo de Conocimiento

5.1 Introducción: proceso de modelado de conocimiento5.2 Identificación del conocimiento5.3 Especificación del conocimiento5.4 Refinamiento del conocimiento

Carlos Alonso GonzálezDpto. de InformáticaUniversidad de Valladolid

La metodología CommonKADS

5-2

5.1 Introducción

• Hasta ahora: modelo de conocimiento como producto del análisis

• Elaboración del modelo de conocimiento: cuello de botella• Solución: proceso de modelado

– recomendaciones – elementos: etapas, actividades, pautas , técnicas

• El proceso de modelado es una actividad sintética– la solución correcta no es única ni existe una vía óptima

• Apoyado en pautas o directrices que suelen funcionar en la práctica

• El modelado de conocimiento es una forma especializada de especificación de requisitos

5-3

Etapas proceso de modelado

knowledgeidentification

knowledgespecification

- choose task template (provides initial task decomposition)- construct initial domain conceptualization (main domain information types)- complete know ledge-model specification (know ledge model w ith partial know ledge bases)

- domain familiarization (information sources, glossary, scenarios)- list potential model components for reuse (task- and domain-related components)

- validate know ledge model (paper simulation, prototype of reasoning system)- know ledge-base refinement (complete the know ledge bases)

knowledgerefinement

TYPICAL ACTIVITIESSTAGES

5-4

Etapa 1: Identificación del conocimiento

• Objetivo– Examinar en mas detalle items de conocimiento– prepararlos para etapa de especificación

• Entradas– tarea basada en conocimiento seleccionada– principales items de conocimiento identificados– tarea de aplicación clasificada

• Actividades– explorar y estructurar las fuentes de información (1.1)– estudiar la naturaleza de la tarea en más detalle para identificar

posibles elementos reutilizables (1.2)

5-5

Actividad 1.1: Familiarización con el dominio• Factores

– naturaleza de las fuentes• ¿comprendido?, ¿fundamento teórico?

– diversidad de las fuentes• pueden entrar en conflicto• varios expertos genera problemas

• Técnicas– esquemas de fuentes básicas– entrevistas no estructuradas/estructuradas

• Dificultad– aprender sobre el problema sin convertirse en experto

5-6

Pautas

• Considerar personal no experto pero que interacciona con los expertos

• Evitar profundizar en teorías complicadas, salvo casos de probada utilidad

• Construir algunos escenarios típicos que se comprendan a alto nivel

• No dedicar demasiado tiempo (2 personas/semana)

5-7

Exploración dominio “Vivienda”

• Lectura detallada revista bi-mensual– objetivos transparencia procedimiento facilita proceso: criterios

evaluación y descripción del proceso

• Informe original ayuntamiento especificando procedimiento de asignación– gestión casos urgencia

• Entrevistas/conversaciones breves– personal entidad– dos solicitantes (clientes)

5-8

Resultados exploración

• Tangibles– referencias fuentes de conocimiento del dominio, con breve

caracterización– resúmenes de textos claves– glosario de términos– descripción de escenarios desarrollados

• No tangibles– comprensión del dominio

• resultado más importante

5-9

Actividad 1.2:Lista de componentes potenciales• Objetivo: preparar el camino para la reutilización de

componentes ya utilizados• Principales oportunidades de reutilización

– Perspectiva de Tarea• revisar tipo de tarea asignado en Modelo de Tarea• lista de posibles plantillas de tarea

– Perspectiva de Dominio• tipo de dominio: ¿técnico?• descripciones estándar

– ontologías, Art and Architecture Thesaurus, Medical Subject Headings

5-10

Componentes disponibles aplicación “Vivienda”• Tarea: plantilla de evaluación

– Schreiber et al., 99– Breuker, Van de Velde, 94, biblioteca

• Dominio– modelo datos base datos solicitudes– modelo datos base datos residencias– Schreiber et al., 99

5-11

Etapa 2: Especificación del conocimiento

• Objetivo:– especificación completa del modelo de conocimiento, salvo

contenido bases de conocimiento

• Actividades– Elegir una plantilla de tarea (2.1)– Elaborar esquema de dominio inicial (2.2)– Especificar las tres categorías de conocimiento (2.3)

5-12

Actividad 2.1: Elegir plantilla de tarea

• Criterio básico: fuerte preferencia por plantillas existentes– eficiencia, calidad

• Criterio de selección: características de la tarea de aplicación– naturaleza de la salida: componente que falla, decisión– naturaleza entradas: datos disponibles– naturaleza de la tarea– naturaleza del sistema– restricciones impuestas por el entorno de la tarea

• coste observaciones, certeza solución, ...

5-13

Pautas

• Preferir plantillas más utilizadas• Elaborar estructura de inferencia anotada • Si ninguna plantilla se ajusta, cuestionar

– ¿Tarea basada en conocimiento?– ¿Viabilidad?

• Una “mala” plantilla es mejor que ninguna

5-14

Estructura de inferencia anotada, aplicación “Vivienda”

abstract

case

abstractedcase specify norms select

normevaluate

normvaluematchdecision

Datos iniciales sobre residencia y solicitante:edad, ingresos, alquiler

Se añaden al caso abstracciones,como el rango de edad

Criterios como:adecuación de la renta a los ingresos,tamaño de vivienda adecuada

Seleccionar un único criterio, comoadecuación de la renta a los ingresos

Adecuación de la renta a los ingresos =cierto (o falso)

Al solicitante cumple, o no, los requisitospara la adjudicación de la vivienda

5-15

Actividad 2.2:Elaborar esquema de dominio inicial• Objetivo: elaborar modelo de datos inicial, independiente

de la tarea o método• Partes esquema de dominio:

– conceptualizaciones específicas del dominio• batería, tanque de combustible• más estables

– conceptualizaciones específicas del método de solución• reglas manifestación, dependencia estado

• Salida: al menos, primera versión conceptualizaciónespecífica del dominio

5-16

Pautas

• Reutilizar modelos de datos existentes– misma terminología y constructores básicos

• Limitar uso de constructores básicos CML a concepts, subtypes y relations.– centrarse en “datos”– contrapartida distintas técnicas/metodologías

5-17

Esquema inicial “Vivienda”Residencias y Solicitantes

residence

number: naturalcategroy: {starter-residence, followup-residence}build-type: {house, apartment}street-address: stringcity: stringnum-rooms: naturalrent: numbermin-num-inhabitants: naturalmax-num-inhabitants: naturalsubsidy-type: subsidy-type-valuesurface-in-square-meters: naturalfloor: naturallift-available: boolean

applicant

registration-number: stringapplicant-type: {starter, existing-resident}name: stringstreet-address: stringcity: stringbirth-date: dateage: naturalage-category: age-category-valuegross-yearly-income: naturalhousehold-size: naturalhousehold-type: household-type-value

residenceapplication

application-date: string

5-18

Esquema inicial “Vivienda”Criterios

residencecriterion

t ruth-value: boolean

correcthouse category

correcthousehold size

rent fitsincome

residence-specificconstraints

5-19

Actividad 2.3: Especificación completa modelo conocimiento• Ruta-1: “middle-out”

– comenzar con el conocimiento de inferencia– método preferido– precondición: la plantilla de tarea proporciona un grado de

abstracción adecuado para la estructura de inferencia

• Ruta-2: “middle-in”– comenzar en paralelo con la descomposición de la tarea y el

modelado del dominio– requiere mayor esfuerzo– necesario si la plantilla propone nivel de detalle insuficiente

5-20

Middle-in / Middle-out

DOMAI N SCHEMA concepts relations rule types

Expressions in knowledge bases

KNOWLEDGEBASEDEFI NI TI ONS

role mapping

defines control over

middle in middle ou

tasksand

methods

inferencestructure

5-21

Pautas

• La estructura de inferencia esta suficientemente detallada si permite generar explicaciones suficientemente detalladas

• La estructura de inferencia esta suficientemente detallada si para cada inferencia es fácil encontrar un único tipo de conocimiento de dominio que puede actuar como papel estático para la inferencia

5-22

Proceso aplicación “Vivienda”

• Plantilla evaluación proporciona buena descripción estructura de inferencia– solo precisa una adaptación

• El esquema de dominio parece reutilizable– también se puede anotar

• Conclusión: middle-out

5-23

Estructura inferenciacase

abstractedcase norms

normvaluedecision

abstract

select

match

specify

evaluate normcase-specificnorms

raw data about a residenceand an applicant

e.g. age, income, rent

abstractions such as age category are added

to the case

criteria such as "rent fits income,"

"correct household size"

a single criterione.g. rent fits income

e.g rent-fits income = true (or false)

rules that only apply to oneparticular residence

applicant is eithereligible or not eligible

for the residence

5-24

Esquema de dominio plantilla evaluacióncase

case datum

value: universal

casedatum

tieneabstracción

reglaabstraccion

1+

norm

truth-value: boolean

implica

decisionindica

regladecision

1+

requisito

1+

Instancia de relaciónresidence application

atributo de residenceo applicant

alguno de los4 criterios

5-25

Pautas para especificar conocimiento de tarea• Comenzar con la estructura de control

– núcleo del método

• No preocuparse en exceso por los detalles de control• Elegir nombres de papeles significativos• Para aplicaciones en tiempo real, considerar alternativas al

pseudocódigo

5-26

Descomposición de tarea “Vivienda”

assess case

abstract case match case

assess troughabstract & match

abstract method

matchmethod

abstract specify select evaluate match

task

task method

inference

task

task method

5-27

Especificación de Tarea “Vivienda”TASK asses-case;

DOMAIN-NAME: asses-residence-applicationGOAL: “

asses whether an application for a residenceby a certain applicant satisfies the criteria”

ROLES:INPUT: case-descrition:

"data about the applicant and the residence";case-specific-requirements:“residence-specific criteria”

OUTPUT: decision:“elegible or not-elegible for a residence";

END TASK asses-case;

5-28

Método de tarea “Vivienda”

TASK-METHOD asses-through-abstract-and-match;REALIZES: asses-case;DECOMPOSITION:

TASK: abstract-case, match-case;ROLES:INTERMEDIATE: abstracted-case:

“Original case plus abstractions";CONTROL-STRUCTURE

abstract-case(case-description -> abstracted-case);match-case(abstracted-case + case-specific-requirements

-> decision);END TASK-METHOD asses-through-abstract-and-match;

5-29

Estructura inferencia “Vivienda”case

abstractedcase norms

normvaluedecision

abstract

select

match

specify

evaluate normcase-specificnorms

raw data about a residenceand an applicant

e.g. age, income, rent

abstractions such as age category are added

to the case

criteria such as "rent fits income,"

"correct household size"

a single criterione.g. rent fits income

e.g rent-fits income = true (or false)

rules that only apply to oneparticular residence

applicant is eithereligible or not eligible

for the residence

5-30

Esquema dominio anotado “Vivienda”

case

case datum

value: universal

casedatum

tieneabstracción

reglaabstraccion

1+

norm

truth-value: boolean

implica

decisionindica

regladecision

1+

requisito

1+

relaciónresidence application

atributo de residenceo applicant

alguno de los4 criterios

5-31

Esquema dominio completo “Vivienda”

residenceapplication

residencecriterion

residencedecision

residenceabstraction

residencedecision

rule

residencerequirement indicates

hasabstraction

implies

1+

1+

1+

5-32

Reglas de abstracción “Vivienda”

residence-application.applicant.household-size > 1HAS-ABASTRACTIONresidence-application.applicant.household-type = multiple-person;

RULE-TYPE residence-abstraction;ANTECEDENT: residence-application;

CARDNALITY: +1;CONSEQUENT: residence-application;

CARDINALITY: 1;CONNECTION-SYMBOL:

has-abstraction;END RULE-TYPE residence-abstraction;

residenceapplication

residenceapplication

1+ 1has-abstraction

residenceabstraction

5-33

Reglas requisitos“Vivienda”

residence-application.applicant.household-type = single-person ANDresidence-application.applicant.age-category = up-to-22 ANDresidence-application.applicant.income < 28000 ANDresidence-application.residence.rent < 545 AND

INDICATESrent-fits-income.truth-value = true;

residenceapplication

residencecriterion

1+ 1indicates

residencerequirement

5-34

Reglas decisión “Vivienda”

residencecriterion

residencedecision

1+ 1implies

residencedecision rule

correct-residence-category.truth-value = true ANDcorrect-household-size.truth-value = true AND rent-fits-income.truth-value = true ANDresidence-specific-constraints.truth-value = true

IMPLIESresidence-decision.value = elegible;

5-35

Pautas para especificar conocimiento de inferencia• Comenzar con representaciones gráficas• Elegir nombres de papeles independientes del dominio y

significativos• No preocuparse en exceso por la dinámica de los papeles• Si es posible, utilizar nombres de inferencias estándar

5-36

Conocimiento Inferencia (I) “Vivienda”

INFERENCE abstract;ROLES:

INPUT: case-description;OUTPUT: abstracted-case;STATIC: abstraction-knowledge;

SPECIFICATION: “Input is a set of case data. Output is the same set of data

extendedwith an abstracted feature that can be derived from the data

usingthe corpus of abstraction knowledge.”;

END INFERENCE abstract;

5-37

Conocimiento Inferencia (II) “Vivienda”

KNOWLEDGE-ROLE abstraction-knowledge;TYPE: STATIC;DOMAIN-MAPPING:

residence-abstractions FROM system-description;END KNOWLEDGE-ROLE abstraction-knowledge;

KNOWLEDGE-ROLE abstracted-case;TYPE: DYNAMIC;DOMAIN-MAPPING:

residence-application;END KNOWLEDGE-ROLE abstracted-case;

KNOWLEDGE-ROLE case-description;TYPE: DYNAMIC;DOMAIN-MAPPING: residence-application;

END KNOWLEDGE-ROLE case-description;

5-38

Conocimiento Inferencia (III) “Vivienda”

INFERENCE evaluate;

ROLES:

INPUT: norm, abstracted-case, case-specific-requirements;

OUTPUT: norm-value;

STATIC: requirements;SPECIFICATION: “

Establish the truth of the input norm for thr given case description.

The underlying domain knowledge consists of the requirements in the

knowledge base and of additional case-specific requirements (which

are part of the task input).”

END INFERENCE abstract;

5-39

Conocimiento Inferencia (IV) “Vivienda”

KNOWLEDGE-ROLE norm;TYPE: DYNAMIC;DOMAIN-MAPPING:

residence-criterion;END KNOWLEDGE-ROLE norm;

KNOWLEDGE-ROLE norm-value;TYPE: DYNAMIC;DOMAIN-MAPPING:

residence-criterion;END KNOWLEDGE-ROLE norm;

5-40

Conocimiento Inferencia (V) “Vivienda”

KNOWLEDGE-ROLE case-specific-requirements;TYPE: DYNAMIC;DOMAIN-MAPPING:

SET OF residence-requirement;END KNOWLEDGE-ROLE case-specific-requirements;

KNOWLEDGE-ROLE requirements;TYPE: STATIC;DOMAIN-MAPPING:

residence-requirement FROM measurement-system;END KNOWLEDGE-ROLE requirements;

5-41

Etapa 3: Refinamiento del Conocimiento

• Validar el modelo de conocimiento• Completar las bases de conocimiento

5-42

Actividad 3.1:Validar el modelo de conocimiento• Interna y externa• Verificación: validación interna

– ¿Es correcto el modelo?

• Validación: validación externa– ¿Es el modelo correcto?

5-43

Técnicas validación

• Internas– herramientas software– structured walk-through

• Externas– mas compleja– técnica principal: simulación

• traza manual• prototipo

5-44

Traza

the user says:“the car doesnot start”

DIAGNOSIS:Complaint: engine-behavior.status =does-not-start

Complaint is received,for which adiagnostic task isstarted

a possiblecause is thatthe fuel tank isempty

COVER:hypothesis; fuel-tank.status =empty

One of the threepossible causes isproduced.

in that case wewould expectthe gasindicator to below

PREDICT:expected-finding:gas-dial.value = zer

The expected findingprovides us with away of gettingsupportingevidence forhypothesis

DOMINIO MODELO EXPLICACION

5-45

Prototipo “Vivienda”

5-46

Actividad 3.2:Completar Bases de Conocimiento• El esquema de dominio contiene tipos de dos naturalezas

– “tipos de información”: sus instancias describen casos concretos– “tipos de conocimiento”: sus instancias son porciones del

conocimiento del dominio

• El objetivo es encontrar (todas) las instancias de los tipos de conocimiento

• Instancias de casos: para los escenarios

5-47

Pautas para completar bases de conocimiento• La ocurrencia de instancias valida el esquema• Habitualmente no es posible definir una base de

conocimiento correcta en la etapa de análisis– generalmente requiere pruebas de campo

• Las bases de conocimiento requieren mantenimiento– el conocimiento suele cambiar

• Técnicas:– editores orientados al experto, transcripciones de entrevistas no

estructuradas, entrevistas estructuradas, reutilización de otras bases de conocimiento, aprendizaje automático

5-48

Fragmento base conocimiento “Vivienda”KNOWLEDGE-BASE system-description;

USES:applicant-abstraction FROM assessment-schema;

EXPRESSIONS:residence-application.applicant.household-size < 1

HAS-ABSTRACTIONresidence-application.applicant.household-type = single-person;

residence-application.applicant.household-size > 1HAS-ABSTRACTION

residence-application.applicant.household-type = multiple-person;

END KNOWLEDGE-BASE system-description;

5-49

Fragmento base conocimiento “Vivienda”KNOWLEDGE-BASE measurement-system;

USES:residence-requirements FROM assessment-schema;residence-decision-rule FROM assessment-schema;

EXPRESSIONS:

/* ejemplo para la norma “renta se ajusta a ingresos” */residence-application.applicant.gross-yearly-income >= 70.000 ANDresidence-application.residence.rent > 1007

INDICATESrent-fits-income.truth-value = true;

/* ejemplo regla de decisión */rent-fits-income.truth-value = flase;

IMPLIESdecision.value = not-eligible;

END KNOWLEDGE-BASE measurement-system;

5-50

Documentación del modelo de conocimiento: formulario MC-1• Al menos

– diagrama esquema dominio completo– estructura de inferencia– lista de papeles, estáticos y dinámicos, y asociación al dominio– especificación textual de tarea y método de tarea (quizás gráfica)

• Deseable– modelo de conocimiento completo– fuentes de información– glosario– componentes considerados para reutilización y motivos– escenarios– resultados validación– material para elicitación en apendices