Upload
frank-van-harmelen
View
716
Download
6
Embed Size (px)
DESCRIPTION
We show how it is possible to apply the problem solving patterns from knowledge engineering to systems developed on the semantic web. This give us re-usable problem solving patterns for the semantic web, and would greatly help us to build and understand such systems.
Citation preview
K-CAP2009 1
Knowledge Engineering rediscovered:
Towards Reasoning Patterns for the Semantic Web
Frank van Harmelen, Annette ten Teije, Vrije Universiteit Amsterdam
Holger WacheUniveristy of Applied Sciences Northwestern
Switzerland
Paper at http://www.cs.vu.nl/~frankh/postscript/KCAP09.pdf
K-CAP2009 2
Knowledge Engineering rediscovered:Towards Reasoning Patterns for the Semantic Web
Lessons from Knowledge Engineering– How to build knowledge-based systems
out of reusable components (CommonKADS, Generic Tasks)
– All based on Newell’s work on Knowledge-level / Symbol-level reasoning
K-CAP2009 3
Knowledge Engineering rediscovered: Towards Reasoning Patterns for the Semantic Web
• Research question:– Can we identify reusable patterns and
components that can help designers and implementers of SW applications?
– First step towards a methodology for building semantic web applications out of reusable components
• Notice:– Existing work on reusable ontology patterns,
but little work on reusable reasoning patterns
K-CAP2009 4
Overview
• KE best practices: CommonKADS
• Identify Semantic Web Tasks
• Validation of those tasks
• Identify Inferences
• Quasi-validation of those inferences
K-CAP2009 5
Task Knowledge• Goal + method• Decomposition• Control
Inference knowledge• Functions• Roles• Domain mapping
Domain Knowledge• Scheme• Knowledge• Facts
Knowledge Categories
K-CAP2009 6
Example of inference structure: Diagnosis
complaint
cover
specify
select obtain
hypothesis
observable
finding
hypothesis
verify
result
K-CAP2009 7
Can we identify reusable semantic web tasks and inferences?
• Seven tasks, defined by:– Input/output types– Definition of functionality– Decomposed into inferences
• Five inferences, defined by:– Input/output types– Definition of functionality
K-CAP2009 8
1. Search task (semi-formal)
• Search: c x O I’• Input: a query concept c• Knowledge: T(O) (set of ci,,cj) and
I(O) (set of i,,ck)• Output: search(c,O) =
{i,,c|cj: cj,,c T(O) i,,cj I(O))}
Input: query conceptKnowledge: ontology = schema + instance setOutput: members of the instance set
K-CAP2009 9
Is this the only possible definition?
• Other definitions are possible and reasonable• Alternative:
O |-- cj,, c T(O) O |-- i,,cj I(O))}• Leads to a typology of search tasks• Helps implementers:
– Makes choices explicit– Reusable components
K-CAP2009 10
Other Tasks2. Browse:
– input: a concept– knowledge: ontology + instance set– output: members of the instance set or concepts of the ontology
3. Data integration: – input: multiple ontologies with their instance sets– output: a single ontology and an instance set
4. Personalisation and recommending– input: instance set plus profile– knowledge: ontology– output: reduced instance set
K-CAP2009 11
Other Tasks
5. Web-service selection:– input: required functionality– Knowledge: ontology + set of instances of services– Output:
6. Web-service composition:– input: required functionality– Knowledge: ontology + set of instances of services– output: compositions of service instances
7. Semantic Enrichment: – input: an instance– output: set of triples with the given instance as subject
K-CAP2009 12
Validation of tasks:how complete are the 7 tasks?
• We classified all (38) Semantic Web Challenge applications of 2005-2007
• 37 applications could be classified
• Often, a single application belongs to multiple tasks
• We found no web-service selection,but some web-service composition
K-CAP2009 13
Application
search
brow
se
data in
teg
ratio
n
Person
alizatio
n
web
-servic
e sele
ctio
n
web
-servic
e com
positio
n
qu
estio
n an
sw
erin
g
sem
an
tic
en
ric
hm
en
t
ArnetMiner (2007) x x xCantabria (2007) x x xCHIP (2007) x xCOHSE (2006) x x xCollimator (2006) xCONFOTO (2005) x xDartgrid (2006) x xDbin (2006) x x ~DORIS (2007) x xDynamicView (2005) x xEachWiki (2007) xEKOSS (2006) xeMerges (2006) xFalcon-S (2006) x xFoafing the Music (2006) xFungalWeb (2005) x xGeospatial Semantic Web Services (2006) xGroupMe (2007) xiFanzy (2007) x x xInt.ere.st (2007) xJeromeDL(2007) x xMediaWatch (2007) x x xmle (2007) x xMultimediaN E-Culture (2006) x x xNotitio.us (2007) x xOyster (2005) xPaperpuppy (2006) xPersonal Publication Reader (2005) x x xPotluck (2007) x xRevyu (2007) x xRKB Explorer (2007) xSemantic MediaWiki (2006) xSemClip (2007) xSMART (2007) xswse (2007) x xWeb Services Execution Environment (2005) xwwwatch (2007) x x
Use Cases
Validation of tasks on Semantic web challenges 2005-2007
K-CAP2009 14
Five Primitive Inferences
1. Realisation: – Given an instance, find the concepts of
which it is a member– Instance x Ontology concept (o |-- i c)
2. Subsumption:– Determining whether one concept is a
subset of another– C1 x C2 x Ontology boolean
(Ontology |-- C1 C2)
K-CAP2009 15
Five primitive inferences
3. Mapping:– Finding correspondence relation between two concepts– Concept x Concept relation
4. Retrieval: – Inverse of realisation: which instances belong to a given concept– Concept instances (i c)
5. Classification:– Determining where a given class should be placed in a
subsumption hierarchy– Concept x hierarchy <C1,C2>
(c1 concept c2)
K-CAP2009 16
Decomposing Tasks in Basic Inferences
Example:Search =
Classification: locate the query concept in the ontology in order to find its direct sub- or super-concepts+Retrieval: to determine the instances of those sub- and super-concepts, which form the answers to the query.
K-CAP2009 17
Inference structure for Search
C
T
I
Classify Subconcepts
Retrieve
Instances
K-CAP2009 18
Decomposing Tasks in basic Inferences (2)
Example 2:Personalisation (eg. based on previously bought
items) =Realisation: to obain the concepts that describe these items+Classification: to find closely related concepts+Retrieval: to obtain instances of such related concepts, since these instances might of be interest to the user
K-CAP2009 19
Inference structurefor Personalisation
Iprofile
T
Idata
realise concepts
Retrieve
Instances
classify subconcepts
K-CAP2009 20
Quasi-Validation of inferences
Task types Primitive inference steps
realisation Subsumption & classification
mapping retrieval
search x x
browse x x x
Data integration
x x x
personalisation x x x
service selection
x x
Service composition
x
Semantic enrichment
K-CAP2009 21
Conclusion
• First step towards a methodology for building semantic web applications out of reusable components: tasks and inferences
• Attempt at a knowledge level description of semantic web reasoning
• Enables analysis and reuse at a higher level of abstraction.
K-CAP2009 22
Next steps
• Further investigation of set of inferences and tasks:– E.g. Right level of inferences (too DL-driven?)– E.g. More complex task definitions
• Model real applications as inference structures.
K-CAP2009 23
Our hope is that you will...
Iprofile
T
Idata
realise concepts
Retrieve
Instances
classify subconcepts
C
T
I
Classify Subconcepts
Retrieve
Instances
describe your application at this level of abstraction!