TOWARDS A COMPONENT- BASED PLATFORM FOR DEVELOPING CBR SYSTEMS JOSE MARIA ABASOLO LLUCH Directores...
-
Upload
genevieve-asay -
Category
Documents
-
view
216 -
download
0
Transcript of TOWARDS A COMPONENT- BASED PLATFORM FOR DEVELOPING CBR SYSTEMS JOSE MARIA ABASOLO LLUCH Directores...
TOWARDS A COMPONENT-BASED PLATFORM FOR
DEVELOPING CBR SYSTEMS
JOSE MARIA ABASOLO LLUCHDirectores Enric Plaza
Josep-Lluis Arcos
Tutor Ton Sales
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
Motivation
Case Base Reasoning deals with solving new problems from the experience of previous solved problems
Case Base Reasoning uses Case Knowledge (previous experience) General Knowledge of the application domain
Development of CBR systems involves decisions about CBR techniques Case representation
Two perspectives on CBR systems Scientific engineer Application engineer
Motivation
The scientific engineer develops and characterizes CBR techniques
The application engineer develops CBR systems Would like to reuse previous CBR developments
Goal: Support both perspective to improve the development of CBR systems
Approach
CBR techniques → Knowledge components Knowledge components → reusability Developing CBR system → Configuring
among the Knowledge components
Component Description Language to characterize CBR techniques
Domain independent platform to support the development of CBR systems
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
CBR
Newcase
NewCase
Retrievedcases
Solvedcase
Repairedcase
Learnedcase
Precedentcases
Domainknowlegde
RetrieveR
euse
Revise
Ret
ain
Problem
(Aamodt &Plaza 94)
Confirmedsolution
Suggestedsolution
CBR
Problemspace
Solutionspace A
R
Previous Works
[Aamodt&Plaza94] propose to decompose the different processes in subtasks and methods
[Armengol97] introduces the Task-Method decomposition for Machine
Learning techniques introduces Methods to acquire knowledge dynamically
[Diaz02] proposes the development of KI-CBR systems using Description Logics Ontology Tasks and Methods
CBR Development Methodologies
INRECA is a methodology that provides the guidelines for the activities to succesfully develop CBR systems Characterize Set Goals Choose Process Execute Analyze Package
CBR-PEB is a decision support system for CBR system development Support for feasibility study Support for evaluating the applicability of techniques Support for a state-of-the-art study
CBR Shells CBR-Works
Structured cases Predefined Similarity measures and similiratiy measures editor Adaptation → Rules (if condition then action)
K-commerce Not structured cases and problems with unknown values Not general knowledge representation Support large case bases Retrieve and Retain
KATE NN for Retrieval Personalized similarity measures Combines NN with dynamic induction Data Mining module to acquire knowledge
ReMind Not structured cases and problems with unknown values Retreival (NN, induction of DT and Query Database) Reuse → Rules (if condition then action) Retain
ReCall Combines NN and Inductive methods Allows structured cases, incomplete cases and uncertain knowlewdge
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
Knowledge Modelling
A knowledge modelling framework defines the basic types of modelling components, their relations,and proposes a model development methodology.
Task-Method-Decomposition Approaches: Generic Tasks Components of Expertise KADS and CommonKADS Problem-Solving Methods UPML
Generic Tasks
Chandresekaran presents a methodology of developing KSs oriented by Tasks.
A Task is described based on the Methods that can solve it and the requisits of this methods to be applied.
A Method is described based on the knowledge used and the decomposition into subtasks.
Components of Expertise Steels proposes a framework of describing
experience at a knowledge level This knowledge level focuses on the knowledge of
the experience more than the implementation structures.
The experience is decomposed in: Tasks: specifies the goal and the decomposition into
subtasks Models: the knowledge needed to solve the tasks
Case Model (specific situtation solving tasks) Domain Model (concrete knowledge about domain)
Methods: specifies where and when knowledge is applied Decomposers Execution
KADS and CommonKADS
KADS is a methodology for analysis and design of KSs CommonKADS = KADS + Components of Expertise Models capturing different aspects of the KS
Organization Model Task Model Agent Model Communication Model Design Model Expertise Model
Domain Layer Inference Layer Task Layer
Problem-Solving Methods
Common patterns in the reasoning processes in KSs. (e.g. Generate&Test, Propose&Revise)
These patterns can be described independently from the application domain → reusability.
Two types of PSMs: Decomposing a task into subtasks Primitive
Libraries of PSMs
UPML UPML is a software architecture, that tries to encapsulate some of the
previous approaches
UPML deals with the objective of defining components independently of the domain using ontologies for describing components.
UPML has two main drawbacks for our purpose UPML works statically with domain models. UPML specifies the components using some formula that do not take into
account characterisitics on the specific domain model.
Task PSM
Domainmodel
PSM-TaskBridge
Task-DMBridge
PSM-DMBridge
Ontologies
Context
Currently KM approaches converge to a task-method-decomposition approach
BUT CBR system development does not use KM approaches KM has some features that are not suitable for CBR
systems development
Our proposal is to develop, upon the idea of [Aamodt&Plaza94] of decomposing the different processes into subtasks and methods, a component based platform to develop CBR systems
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
Component Description Language
Task
PSM
Task-PSMmatching
PSM-Domainmatching
DomainModel
Content
Component Description Language
•A Task is specified by:•Goals to be achieved•Preconditions need to be satisfied•Input roles•Output roles
• CDL allows Tasks which output is a Domain Model.
Task
P G
R Ri o Ri Input rolesRo Output rolesP PreconditionsG Goals
Task
PSM
Task-PSMmatching
PSM-Domainmatching
DomainModel
Content
Component Description Language
• PSM (Problem-solving method) that characterizes the way to solve a task:
•Competence: goals the PSM is able to achieve•Preconditions: properties that need to be satisfied for the PSM to be applicable •Input and Output roles•Knowledge roles: types of Domain Models•Assumptions: properties of the Domain Models that are assumed to hold
PSM
P C (R ,A)
R R oi
k
Ri Input rolesRo Output rolesP PreconditionsC CompetenceRk Knowledge RolesA Assumption
Task
PSM
Task-PSMmatching
PSM-Domainmatching
DomainModel
Content
Component Description Language
Task
PSM
Task-PSMmatching
We distinguish three types of PSM
PDI O
OD
T T
DM
RRI O
DM
EI
DM
DMPSM-Domain
matching
DomainModel
Content
Component Description Language
Domain Model characterizes domain knowledge that is used by PSM to solve tasks:
- Type of knowledge content- Properties satisfied by the knowledge content- Assumptions: properties assumed to be satisfied
by the knowledge content
We distinguish between the knowledge content (expressed in the domain ontology) and characterization of the content (expressed in the Task-PSM ontology).
Domain Model
S P AS Type of the knowledge contentP PropertiesA Assumptions
Task
PSM
Task-PSMmatching
PSM-Domainmatching
DomainModel
Content
Content
Component Description Language
Task-PSM matching
≥
≤
Task-P → PSM-P
PSM-C →Task-G
Task
PSM
Task-PSMmatching
Task
P G
R Ri o
PSM
P C (R ,A)
R R oi
k
PSM-Domainmatching
DomainModel
Content
Component Description Language
Domain Model
S P A
PSM-Domain matching
PSM
P C (R ,A)
R R oi
k
Task
PSM
Task-PSMmatching
≤DM-P U DM-A → PSM-A
PSM-Domainmatching
DomainModel
Content
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
CBR ontology
The CBR ontology defines the concepts used to characterize the Tasks, PSMs and Domain Models for CBR systems.
The preconditions, assumptions, goals and competence of the components are specified using the CBR ontology
The ontology contains concepts to describe Noise Tolerance Accuracy Classification-Variability Difference-Bias Time and Space cost Characteristics of the retrieved cases …
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
CBR Models
We have defined a typology of CBR Models The different roles (input, output and knowledge) of the Tasks,
PSMs and Domain Models are typed using these CBR Models Some of these CBR Models are:
Case-Collection Case-Base Similarity-Model (Case-Similarity-Model, Grouped-Model, Set-of-
cases) K-Model (Unique-K, K-Case-Model, K-Class-Model) Weight-Model Order-Model Decision-Tree-Model
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
CBR components
•The CBR Library include components for:– Retrieval
– Nearest Neighbor, Decision Tree indexing– Subsumption Mechanisms (perspectives)
– Similarity– Feature similarity (numbers, ordered labels, …)– Structured cases similarity (SHAUD)– Aggregation (Weighted mean, euclidian, city-block, OWA, WOWA)
– Reuse – Classification (Voting, selection criteria)– Configuration (Constructive Adaptation techniques)
– Model Acquisition (Enabling)– Decision Tree induction – Weight models (gain, RLDM), numerical discretization– K-models
An example of PDProblem Decomposer K-NN-Retrieval
Ontology CBR-Ontology
Input roles target : CBR-Case
Output roles cases : CBR-Case
Subtasks Asses similarity
Select-k-neighbours
Preconditions
Competence Retrieve-Similar-cases-with-similarity
Operational Description (use-subtask Select-k-neighbours
target
(use-subtask Assess-Similarity
target))
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
CAT-CBR Platform
User Requirements
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
CAT-CBR Configuring
- The configuring process has been treated as a Search process in a space of states. - These states represent a partial configuration of a CBR system.
ConfiguringProcess
User RequirementsPreconditions InputsGoals Domain-Models
CBR Library User Requirements
ConfiguredCBR system
CBR system configured• Task → PSM• PSM Knowledge Role → DM
Task-method decomposition
Task
PSM
Subtasks
Configuring a Task-method decomposition
PSMs
DM
CAT-CBR Configuring
ConfiguringProcess
CBR Library User Requirements
ConfiguredCBR system
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
CAT-CBR Enabling
The goal of the enabling process is to connect the configured CBR system with a specific domain of application
Configured CBR system
EnablingProcess
EnabledCBR system
Drums-Model-Instrument
Drums-Model-Instrument Drums-cases
k-Model- for-Drums
Generate-k-Model
Global-kDrums-cases
Drums-Model-Instrument
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
CAT-CBR Enacting
The Enacting process links the enabled configuration with the PSM operationalizations
(use-subtask Select-k-Neighbours target)
(define-method K-selection:inputs ((target CBR-Case)):domains ((k-Model Unique-k)
(Case-Language-Model CLM))method-code)
(K-selection :inputs (targets) :domains (k-Model-for-drums Drums-Model-Instrument))
EnabledCBR system
EnactingProcess
EnactedCBR system
Select-k-NeighboursK-selection
Drums-Model-Instrument
k-Model-for-drums
CAT-CBR Enacting
CBR systemenabled
ConfiguringProcess
CBR systemenacted
CBROntology
DomainOntology
CaseLanguage
Model
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
Application Domain
Audio Content Description ← Classification Automatic labelling of sounds → sampling and
synthesis devices Application Domain = Unpitched percussion
sounds There are many sound descriptors Different source recordings Different criteria of classification (instrument, family)
A sound is described using 207 attributes There are 30 instrument classes
Configuring CBR system
ConfiguringProcess
User RequirementsPreconditions Propositonal-CaseInputs (Problem CBR-Case)Goals Classify-ProblemDomain-Models
(Case-Base-ModelPropositional-CaseNo-Missing-Values)
(Case-Language-Model)
CBR Library User Requirements
Configuring CBR system
ConfiguringProcess
CBR Library User Requirements
ConfiguredCBR system
Classify
Classify-by-k-NN
Retrieve-for-k-NN
Reuse-for-k-NN
K-NN-Retrieval
Assess-Similarity
Feature-Similarity-and-Aggragation
Feature-Similarity
Feature-Similarity-No-Missing-Values
Case-Base-Model
Case-Language-Model
Aggregation
City-Block-Aggregation
K-Model
Case-Language-Model
Select-k-Neighbours
K-selection
Majority
Case-Language-Model
Enabling CBR system
ConfiguredCBR system
EnablingProcess
Enabled CBR system
Classify
Classify-by-k-NN
Retrieve-for-k-NN
Reuse-for-k-NN
K-NN-Retrieval
Assess-Similarity
Feature-Similarity-and-Aggragation
Feature-Similarity
Feature-Similarity-No-Missing-Values
Case-Base-Model
Case-Language-Model
Aggregation
City-Block-Aggregation
K-Model
Case-Language-Model
Select-k-Neighbours
K-selection
Majority
Case-Language-Model
Drums-cases
Drums-Model-Instrument
Drums-Model-Instrument
Drums-Model-Instrument
k-Model-for-drums
Generate-k-Model
Global-kDrums-cases
Drums-Model-Instrument
Enacting CBR system
(define (Case-Language-Model :id Drums-Case-Language) (case-spec (define-spec (Mostpercussionclasses))) (case-attributes Specflat Speccent Speccentn
Strpeak Kurtosis Scr Zcr Strdecay Varsc Varzcr Skew B1 B1bis B2 B2bis B3 B4 B5 B6 B7 B8 B9 B10 B11 B12 B13....) (solution-attribute Instrument) (solution-accessor ‘Instrument-Accessor))
Case structure definition
Selected Attributes
(define (Numeric-Attribute :id Specflat) (name 'Specflat) (accessor Specflat-Accessor) (sim-function 'Specflat-Similarity) (range (define (interval)
(inf-lim -61)(sup-lim -1))))
Testing CBR systemsClassify
Classify-by-k-NN
Retrieve-for-k-NN
Reuse-for-k-NN
K-NN-RetrievalAssess-Similarity
Feature-Similarity-and-AggragationFeature-Similarity
Feature-Similarity-No-Missing-ValuesCase-Base-ModelCase-Language-Model
AggregationCity-Block-Aggregation
K-ModelCase-Language-Model
Select-k-NeighboursK-selection
Majority
Case-Language-Model
ClassifyClassify-by-k-NN
Retrieve-for-k-NN
Reuse-for-k-NN
K-NN-RetrievalAssess-Similarity
Feature-Similarity-and-AggragationFeature-Similarity
Feature-Similarity-No-Missing-ValuesCase-Base-ModelCase-Language-Model
AggregationEuclidean-Aggregation
K-ModelCase-Language-Model
Select-k-NeighboursK-selection
Majority
Case-Language-Model
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
Conclusions Reusability of CBR techniques across different domains Task-Method decomposition of CBR techniques
We have defined a CDL addresing the needs of the CBR development
CBR Library that includes a representative set of tasks and PSMs for the Retrieve and Reuse phase
We do not pretend to cover all CBR techniques, we only present some classic methods and viability of define and specify new methods using the CDL
CAT-CBR platform to develop CBR systems
We have presented the development process of a CBR system as a three phases processes
Configure Enable Enact
Future Work
To incorporate other techniques to the CBR Library Knowledge Intensive CBR (CREEK techniques) Higher Order Retrieval techniques (perspectives) Reuse techniques for Configuration (Constructive
Adaptation) To further study two application domains
Device configuration Music content retrieval and analysis
OUTLINE Motivation and approach State of the art
CBR Knowledge Modelling
A Component Description Language CBR Library
CBR Ontology CBR Models CBR Tasks and PSMs
The CAT-CBR platform Configuring Enabling Enacting
An example of using CAT-CBR Conclusions and Future Work Publications
Publications M. Gomez, C. Abasolo, E. Plaza (2003), “Open, Reusable and Configurable Multi-Agent
Systems”. Third price in the AgentCities Technology ATC03, in the Infrastructures category. M. Gomez, C. Abasolo (2003), “A general framework for meta-search based on query weighting
and numerical aggregation operators”. In Bouchon-Meuner, B. Foulloy, L and Yager, R.R. (eds.). Intelligent Systems for Information Pro-cessing: From Representation to Applications, pp. 129-140, Elsevier Science.
C. Abasolo, E. Plaza, J. Arcos (2002),”Components for Case-Based Reasoning”. In Proc.Congres Catala d'Intel.ligencia Artificial, CCIA 2002.
M. Gomez, C. Abasolo, E. Plaza (2002), “Problem-solving Methods and Cooperative Information Agents”. In Proc. Special Issue of the International Journal on Cooperative Information Systems vol. 11(3), 2002.
M. Gomez, C. Abasolo (2002), “Improving meta-search by using query-weighting and numerical aggregation operators”. In Proc. Information Processing and Management of Uncertainty conference, IPMU 2002.
C. Abasolo, M. Gomez (2002), “A framework for meta-search based on numerical aggregation operators”. In Proc.Congres Catala d'Intel.ligencia Artificial,CCIA 2002.
M. Gomez, C. Abasolo, E. Plaza (2001), ·Domain-independent ontologies for cooperative information agents·. In Proc. Fifth International Workshop Cooperative Information Agents CIA-2001. Lecture Notes in Artificial Intelligence, LNAI 2128, p. 118-129. Springer-Verlag.
C. Abasolo, M. Gomez E. Plaza (2001),” Agents d'informacio independents del domini”. In Proc.Congres Catala d'Intel.ligencia Artificial, CCIA 2001.
J. M. Abasolo, M. Gomez (2000). “MELISA: An ontology-based agent for information retrieval in medicine”. Proceedings of the First International Workshop on the Semantic Web (SemWeb2000). Lisbon, Portugal, pp 73-82.