A Library of Components for Classification Problem Solving Wenjin Lu and Enrico Motta Knowledge Media Institute.

Slides:



Advertisements
Similar presentations
Pat Langley Computational Learning Laboratory Center for the Study of Language and Information Stanford University, Stanford, California
Advertisements

Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah
© C. Kemke Constructive Problem Solving 1 COMP 4200: Expert Systems Dr. Christel Kemke Department of Computer Science University of Manitoba.
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
16/11/ IRS-II: A Framework and Infrastructure for Semantic Web Services Motta, Domingue, Cabral, Gaspari Presenter: Emilia Cimpian.
CBR matching & brokering IIIA-CSIC IBROW. Framework UPML components as cases Retrieved by CBR constructs in NOOS UPML meta-ontology Object language Describes.
ITIL: Service Transition
1 Congifurable, Incremental and Re- structurable Contributive Learning Environments Dr Kinshuk Information Systems Department Massey University, Private.
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
Ontology Library Systems: The key to successful Ontology Re-use Ying Ding & Dieter Fensel Supported by OnToKnowledge.
Internet Reasoning Service: Progress Report Wenjin Lu and Enrico Motta Knowledge Media Institute Monica Crubézy Stanford Medical Informatics.
The UPML Framework, IRS-I and IRS-II John Domingue, Liliana Cabral & Enrico Motta Knowledge Media Institute The Open University, UK.
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Knowledge Modelling: Foundations, Techniques and Applications Enrico Motta Knowledge Media Institute The Open University United Kingdom.
Requirements Analysis Concepts & Principles
Requirements Elicitation Chapter 4. Establishing Requirements Two questions –What is the purpose of the system –What is inside and what is outside the.
IBROW Progress Report - OU Enrico Motta Knowledge Media Institute.
School of Computing and Mathematics, University of Huddersfield Knowledge Engineering: Issues for the Planning Community Lee McCluskey Department of Computing.
Epistemological Framework for Reuse Problem Solving Method Generic Task Multi-Functional Domain Mapping Knowledge Application-specific Problem-Solving.
PROMPT: Algorithm and Tool for Automated Ontology Merging and Alignment Natalya F. Noy and Mark A. Musen.
Protégé An Environment for Knowledge- Based Systems Development Haishan Liu.
MACHINE LEARNING. What is learning? A computer program learns if it improves its performance at some task through experience (T. Mitchell, 1997) A computer.
Semantic Web for E-Science and Education Enrico Motta Knowledge Media Institute The Open University, UK.
KMi-SMI collaboration Wenjin Lu and Enrico Motta Knowledge Media Institute Monica Crubézy Stanford Medical Informatics.
1 An introduction to design patterns Based on material produced by John Vlissides and Douglas C. Schmidt.
Domain-Specific Software Engineering Alex Adamec.
Chapter 9 Architecture Alignment. 9 – Architecture Alignment 9.1 Introduction 9.2 The GRAAL Alignment Framework  System Aspects  The Aggregation.
ONTOLOGY SUPPORT For the Semantic Web. THE BIG PICTURE  Diagram, page 9  html5  xml can be used as a syntactic model for RDF and DAML/OIL  RDF, RDF.
Click to edit Master title style  Click to edit Master text styles  Second level  Third level  Fourth level  Fifth level  Click to edit Master text.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
1 Artificial Intelligence Applications Institute Centre for Intelligent Systems and their Applications Stuart Aitken Artificial Intelligence Applications.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
Knowledge representation
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
Basics of Research and Development and Design STEM Education HON4013 ENGR1020 Learning and Action Cycles.
Machine Learning Chapter 5. Artificial IntelligenceChapter 52 Learning 1. Rote learning rote( โรท ) n. วิถีทาง, ทางเดิน, วิธีการตามปกติ, (by rote จากความทรงจำ.
The Process Specification Language (PSL): Theories and Applications Michael Grüninger and Christopher Menzel Journal Club Presentation Eric Rozell, Tetherless.
Christoph F. Eick University of Houston Organization 1. What are Ontologies? 2. What are they good for? 3. Ontologies and.
The Modelling We Do Enrico Motta. Modelling Primitives Classes Slots Instances Relations Functions Rules Axioms Reasoning Services Query Answering (Ask)
What is Science?.
Generic Tasks by Ihab M. Amer Graduate Student Computer Science Dept. AUC, Cairo, Egypt.
1 USC INFORMATION SCIENCES INSTITUTE EXPECT TEMPLE: TEMPLate Extension Through Knowledge Acquisition Yolanda Gil Jim Blythe Information Sciences Institute.
1 URBDP 591 A Analysis, Interpretation, and Synthesis -Assumptions of Progressive Synthesis -Principles of Progressive Synthesis -Components and Methods.
RULES Patty Nordstrom Hien Nguyen. "Cognitive Skills are Realized by Production Rules"
Formal Verification. Background Information Formal verification methods based on theorem proving techniques and model­checking –To prove the absence of.
Problem-Solving Methods in Protégé-2000 Monica Crubézy Stanford Medical Informatics MIS November 1999.
Henrik Eriksson Department of Computer and Information Science Linkoping University SE Linkoping, Sweden Raymond W. Fergerson Yuval Shahar Stanford.
3.5 Informed (Heuristic) Searches This section show how an informed search strategy can find solution more efficiently than uninformed strategy. Best-first.
Abdul Rahim Ahmad MITM 613 Intelligent System Chapter 10: Tools.
Artificial Intelligence
Enable Semantic Interoperability for Decision Support and Risk Management Presented by Dr. David Li Key Contributors: Dr. Ruixin Yang and Dr. John Qu.
Semantic Interoperability in GIS N. L. Sarda Suman Somavarapu.
Design Evaluation Overview Introduction Model for Interface Design Evaluation Types of Evaluation –Conceptual Design –Usability –Learning Outcome.
Ontologies COMP6028 Semantic Web Technologies Dr Nicholas Gibbins
Mechanisms for Requirements Driven Component Selection and Design Automation 최경석.
ITIL: Service Transition
n-ary relations OWL modeling problem when n≥3
Architecture Components
Semantic Web - Ontologies
Introduction Artificial Intelligent.
Logical architecture refinement
Ontology Reuse In MBSE Henson Graves Abstract January 2011
Test-Driven Ontology Development in Protégé
Dept. of Computation, UMIST
Semantic Resolution in a Simple E-Commerce Application
Building Ontologies with Protégé-2000
Presentation transcript:

A Library of Components for Classification Problem Solving Wenjin Lu and Enrico Motta Knowledge Media Institute

Four Main Goals To carry out a knowledge-level analysis of classification To develop a practical resource to support the development of classification applications To provide a concrete set of components to act as a test case for IBROW brokering system and IRS To evaluate the UPML framework and the OCML modelling language on a non-trivial test-case

UPML Framework

Detailed Modelling in OCML Supports domain, task and PSM specification Large Library (>90 Ontologies) Extensive experience (~20 projects, 5 years) Robust Infrastructure –Both web-based and ‘vanilla’ development environments Intg. of specification and operationalization is a good thing! ÝRapid development and validation ÝResult = both analytical and engineering resource

Amalgamating UPML and OCML OCML Base Ontology was revised to comply with UPML ÝTasks and PSMs become assumption-based

Classification Classification can be seen as the problem of finding the solution (class), which best explains a set of known facts (observables), according to some criterion Observables Candidate Sols. Criterion Classification Solution

Example Observables Candidate Sols. Criterion Classification Solution {background=green; area=china...} Complete-coverage-criterion (every observable has to be explained) {chinese-granny, dutch-granny, etc..} {chinese-granny}

Observables Observables = set_of (Observable); Observable = {feature, value}. Well defined Observables (obs): ({f 1, v 1 }  obs  {f 1, v 2 }  obs) -> v 1 = v 2 ({f 1, v 1 }  obs) -> legal_feature_value (f 1, v 1 )

Solutions Solution = set_of (Feature_Spec); Feature_Spec = {Feature, Feature_value_spec} Feature_value_spec = Unary_Relation Well defined Solution (sol): {f 1, s 1 }  sol  holds (s 1, v 1 ) -> legal_feature_value (f 1, v 1 )

Matching Observable={f 1, v 1 } matches Solution=sol iff: {f 1, c}  sol  holds (c, v 1 )

Matching Sets of Obs to a Solution Sol: {{fsol 1, c 1 }...{fsol m, c m }}; Obs: {{fob 1, v 1 }...{fob n, v n }} Four possible cases: {f j, c j }  sol  {f j, v j }  obs  holds (c j, v j ) -> Explained (f j ) {f j, c j }  sol  {f j, v j }  obs  not holds (c j, v j ) -> Inconsistent(f j ) {f j, v j }  obs  {f j, c j }  sol -> Unexplained (f j ) {f j, v j }  obs  {f j, c j }  sol -> Missing (f j )

Default Match Criterion Match Score: Vector: Match Comparison Relation S 1 = (i 1, e 1, u 1, m 1 ); S 2 = (i 2, e 2, u 2, m 2 ) S 1 better_score than S 2 iff: (i 1 < i 2 )  (i 2 = i 1  e 2 < e 1 )  (i 2 = i 1  e 2 = e 1  u 1 < u 2 )  (i 2 = i 1  e 2 = e 1  u 2 = u 1  m 1 < m 2 )

Possible Solution Criteria Positive Coverage –Some feature is explained and none is incosistent Complete Coverage –All features are explained and none is incosistent

Hierarchy of Criteria Solution Criterion Match Criterion Match Score Comparison Rel Macro Score Mechanism Feature Score Mechanism Match Score Mechanism

Observables (def-class observables (set) ?obs "This is simply a set of observables. An important constraint is that there cannot be two values for the same feature in a set of observables" :iff-def (every ?obs observable) :constraint (not (exists (?ob1 ?ob2) (and (member ?ob1 ?obs) (member ?ob2 ?obs) (has-observable-feature ?ob1 ?f) (has-observable-feature ?ob2 ?f) (has-observable-value ?ob1 ?v1) (has-observable-value ?ob2 ?v2) (not (= ?v1 ?v2))))))

Solutions (def-class solution () ?x "A solution is a set of feature definitions" :iff-def (every ?x feature-definition)) (def-class feature-definition () ?x ((has-feature-name :type feature) (has-feature-value-spec :type unary-relation)) :constraint (=> (and (has-feature-name ?x ?f) (has-feature-value-spec ?x ?spec)) (=> (holds ?spec ?v) (legal-feature-value ?f ?v))))

Solution Criterion (def-class solution-admissibility-criterion () ?c ((applies-to-match-score-type :type match-score-type) (has-solution-admissibility-relation :type unary-relation)) :constraint (=> (and (solution-admissibility-criterion ?c) (has-solution-admissibility-relation ?c ?r) (domain ?r ?d)) (subclass-of ?d match-score)))

Monotonicity of Admissibile Solutions (def-axiom admissibility-is-monotonic "This axiom states that the admissibility criterion is monotonic. That is, if a solution, ?sol, is admissible, then any solution which is better than ?sol will also be admissible" (forall (?sol1 ?sol2 ?obs ?criterion) (=> (and (admissible-solution ?sol1 (apply-match-criterion ?criterion ?obs ?sol1) ?criterion) (better-match-than ?sol2 ?sol1 ?obs ?criterion)) (admissible-solution ?sol2 (apply-match-criterion ?criterion ?obs ?sol2) ?criterion))))

Complete Coverage (def-instance complete-coverage-admissibility-criterion solution-admissibility-criterion ((applies-to-match-score-type default-match-score) (has-solution-admissibility-relation complete-coverage-admissibility-relation))) (def-relation complete-coverage-admissibility-relation (?score) "a solution should be consistent and explain all features" :constraint (default-match-score ?score) :iff-def (and (= (length (first ?score)) 0) ;;no inconsistency (= (length (third ?score)) 0))) ;;no unexplained

Classification Task Ontology 42 Definitions Provides both a theory of classification and a vocabulary to describe classification problems Ontology is separated from task specifications

Generic Classification Task Input roles –Candidate Solutions, Match Criterion, Solution Criterion, Observables Precondition –Both observables and candidate solutions have to be provided Goal –To find a solution from the candidate solutions which is admissible with respect to the given observables, solution criterion and match criterion

Specific Classification Tasks Single-Solution Classification Task –Single-solution assumption Optimal Classification Tasks –Goal requires optimality

Problem Solving Library Based on heuristic classification model Supports both data-directed and solution- directed classification Based on search paradigm Supported by a method ontology

Method Ontology: Main Concepts Abstractors –Mechanism for performing abstraction on observables –Abstractor: Obs* -> Obs Refiners –Mechanism for specialising a solution –Refiner: Sol -> Sol* Candidate Exclusion Criterion –A criterion which is used to decide when a search path is a dead-end –Default criterion rules out inconsistent solutions

Monotonicity of Exclusion Criterion (def-axiom exclusion-is-monotonic (forall (?sol1 ?sol2 ?obs ?criterion) (=> (and (ruled-out-solution ?sol1 (the-match-score ?sol1) ?criterion) (not (better-match-than ?sol2 ?sol1 ?obs ?criterion))) (ruled-out-solution ?sol2 (the-match-score ?sol2)?criterion))))

Axiom of Congruence (def-axiom CONGRUENT-ADMISSIBILITY-AND-EXCLUSION-CRITERIA (forall (?sol ?task) (=> (member ?sol (the-solution-space ?task)) (not (and (admissible-solution ?sol (the-match-score ?sol) (role-value ?task 'has-solution-admissibility-criterion)) (ruled-out-solution ?sol (the-match-score ?sol) (role-value ?psm 'has-solution-exclusion-criterion)))))))

Three Heuristic Classification PSMs Two Data-directed –Admissible Solution Classifier Finds one admissible solution according to the given criteria Uses backtracking hill climbing –Optimal Classifier Performs complete search looking for optimal solution Uses best-first strategy Uses candidate exclusion criterion to prune search space One Solution-directed –Goes down the solution hierarchy, acquiring observables as needed –Ask for observables with max discrimination power

Four Assumptions in Main PSMs No cycles in abstraction hierarchy No cycles in refinement hierarchy At least one class in the solution space is an admissible solution The solution refinement hierarchy is consistent with the candidate exclusion criterion. That is if sol is ruled out, all refinements of sol can also be ruled out

Task-Method Hierarchy

Example Apple Domain –Originally developed in Amsterdam Solutions = Apple Types = {granny, noble, delicious...} Hierarchy of Apple Types Features = {bkg-colour, fg-colour, rusty....} Pretty trivial really!

Mapping Solutions and Obs to Apples (def-relation-mapping solution :up ((solution ?x) if (or (= ?x apple) (subclass-of ?x apple)))) (def-relation-mapping observable :up ((observable ?x) if (or (== ?X (?f ?v ?obs)) (== ?x (?f ?v)))))

More Relation Mappings (def-relation-mapping has-observable-feature :up ((has-observable-feature ?x ?f) if (or (== ?X (?f ?v ?obs)) (== ?x (?f ?v))))) (def-relation-mapping has-observable-value :up ((has-observable-value ?x ?v) if (or (== ?X (?f ?v ?obs)) (== ?x (?f ?v))))) (def-relation-mapping directly-abstracts-from :up ((directly-abstracts-from ?ob ?obs) if (== ?ob (?f ?v ?obs))))

Sample Abstractor (def-instance sugar-abstractor abstractor ((has-body '(lambda (?obs) (in-environment ((?v. (observables-feature-value ?obs 'sugar))) (cond ((>= ?v 70) (list-of 'sweet-level 'high (list-of (list-of 'sugar ?v)))) ((and ( ?v 40)) (list-of 'sweet-level 'medium (list-of (list-of 'sugar ?v)))) ((<= ?v 40) (list-of 'sweet-level 'low (list-of (list-of 'sugar ?v)))))))) (applicability-condition (kappa (?obs) (member 'sugar (all-features-in-observables ?obs))))))

Generic (reusable) Refiner (def-instance refinement-through-subclass-of-links refiner "If the solution space is specified by means of classes arranged in a subclass-of hierarchy, then this is a good refiner to use" ((has-body '(lambda (?sol) (setofall ?sub (direct-subclass-of ?sub ?sol)))) (applicability-condition (kappa (?sol) (and (class ?sol) (exists ?sub (direct-subclass-of ?sub ?sol)))))))

Evaluation/Results All PSMs successfully tested on the apple domain Assumptions also successfully tested in the domain Library available online in WebOnto

Next Tasks Start work on Internet Reasoning Service Approach: Ever increasing levels of intelligent support –Browsing/Navigation/Manual PSM Configuration –Intelligent Assistant Semi-automated component selection/configuration –Intelligent Broker Multiple libraries/multiple platforms/symbol-level interoperability Application to more complex domains –Scientific Classification, Selection of Manufacturing Tech.

Possible Platforms for IRS Specialized WebOnto Configuration Protégé –Intg. Protégé with OCML Library Collaboration with Stanford (i.e., Monica) –Dedicated Tabs to support PSM selection/reuse New Java/Lisp Tool –Java Applets interfaced with library sitting on Lisp server

Classification Library in OCML (at the end of IBROW 1) Task spec (TaskSpec1) Flat classification PSM (GenPSM1) Applied to apple and Rocky-III domains