Upload
noah-horton
View
224
Download
1
Tags:
Embed Size (px)
Citation preview
Outline
Introduction to f-SHIN Syntax Semantics
Fuzzy Reasoning Engine FiRE Syntax Reasoning Services
FiRE Integration with Sesame Benefits
Demonstration
Uncertainty and knowledge representation Uncertainty is part of our lives…
i.e. tall, fat, soon Description Logics (DLs) lacks the ability to
represent imprecise or vague information This representation is necessary for many
application domains (medical informatics, multimedia processing)
DLs were extended using fuzzy set theory
Fuzzy Set Theory
An object belongs to a fuzzy set to any degree between 0 and 1. Tall(Tom) = 0.7
Set theoretic operations are performed by mathematical functions 1-x is used for negation min(x,y) for intersection max(x,y) for union max(1-x,y) for implications
SHIN SHIN is an AL language AL-language is represented by a string of the form
AL[U][E][N][C]
U: union
E: full existential quantification
N:Number Restrictions
C:Complement (negation) Negation is like union and full existential quantification
ALC = ALUE Similar for roles
S : transitive roles
H : role implication
I : inverse roles
Syntax of Fuzzy SHIN f-SHIN concepts are formed in the same
way as in SHIN
C,D ::=⊤ | ⊥ | ¬C | C ⊓ D | C ⊔ D |
∃R.C | ∀R.C | ≥nR | ≤nR
R,P::= R - | Trans(R) | P⊑R
Fuzzy knowledge bases
A fuzzy knowledge base is a triple
Σ= (T ,R, A) where: T is a finite set of fuzzy inclusion axioms: A ⊑ C
or fuzzy equivalences: A ≡ C, called a fuzzy TBox R is a finite set of fuzzy transitive role axioms:
Trans(R) or fuzzy role inclusion axioms P ⊑ R, called a fuzzy RBox
A is a finite set of fuzzy assertions: ⟨ a : C ⋈ n ⟩or ⟨ (a, b) : R ⋈ n ⟩, where ⋈ ∈ {≥,>,<, ≤}, called a fuzzy ABox.
Semantics of f-SHIN
A fuzzy interpretation is a pair I= (ΔI× .I) where ΔI is the domain of interpretation and .I is the interpretation function which maps
An individual name α ∈ I to an element α I ∈ ΔI
A concept name A to a membership function
AI : ΔI →[0,1] A role name R to a membership function
RI : ΔI× ΔI →[0,1]
Extending semantics to complex concepts
1 1
11,...,
( ) 1
( ) 0
( ) ( ) 1 ( )
( ) ( ) max( ( ), ( ))
( ) ( ) min( ( ), ( ))
( . ) ( ) inf {max(1 ( , ), ( ))}
( . ) ( ) sup {min( ( , ), ( ))}
( ) ( ) inf {max {1
I
I
Ip
I
I
I I
I I I
I I I
I I I
b
I I I
b
I pib b
T a
a
C a C a
C D a C a D a
C D a C a D a
RC a R a b C b
RC a R a b C b
pR a
1 11,...,
( , )}
( ) ( ) sup {min { ( , )}
( ) ( , ) ( ) ( , )
Ip
Ii i
I p Ii i ib b
I I
R a b
pR a R a b
R a b R b a
Interpreting Axioms
, ( ) ( )
( ) ( )
: ( )
( , ) : ( , )
( ) , , , ( , ) sup {min( ( , ), ( , )}
, . ( , ) ( , )
I
I I I
I I
I
I
I I I I
b
I I I
A C a A a C a
A C A a C a
a C n C a n
a b R n R a b n
Trans R a b c R a c R a b R b c
P R a b P a b R a b
ô
ô
FiRE
FiRE is a Fuzzy Reasoning Engine implemented using JAVA
Currently supports f-SHIN DL Language Consist of an alphabet of concepts (C)
roles (R) and individuals (I)
Declaring Alphabet
Alphabet declaration is made using the keyword signature and it is divided into three smaller declarations the concepts declaration using keyword atomic-concepts, the roles declaration using keyword roles and the individuals declaration using keyword individuals.
Declaring Alphabet -An Example(signature :atomic-concepts (human person female male
woman man parentC mother father sister brother parent-having-many-children tall clever thin organised parent-NOT-having-many-children parent-having-3-children beautifull fast strong)
:roles ((has-gender :transitive t) (has-descendant :transitive t) (has-child :inverse has-descendant) (has-sibling) (has-degree) (has-sister) (has-brother) ( has-friend) )
:individuals (Alice Betty Charles Doris Eve Peter))
Declaring Alphabet Roles are declared using keyword roles. Each
role is defined within brackets and it may have one or more of the following parameters
Keyword Description Syntax
parent States the parent Role :parent parentRole
transitive States whether the role is transitive or not. (A role is not transitive by default)
:transitive t
:transitive f
inverse States the inverse role of a role. (All roles have an inverse role and if it is not stated directly then it is Inv-roleName e.g for role has-child inverse role by default is Inv-has-child)
:inverse invRole
f-SHIN Constructors Syntax
Syntax DL Notation Description*top* ⊤ Top concept
*bottom* ⊥ Bottom concept
(not C) ¬C General negation
(and C1 . . .Cn) C1 ⊓. . . ⊓ Cn Conjuction
(or C1 . . .Cn) C1⊔… ⊔ Cn Disjunction
(some R C) ∃R.C Exist restriction
(all R C) ∀R.C Value restriction
(at-most n R) ≤nR At most restriction
(at-least n R) ≥nR At least restriction
Declaring Axioms
There are two kinds of axioms inclusion and equivalence.
Defined concept has to be an atomic concept and on the other hand property concept can be an atomic concept or a result of f-SHIN constructors.
Syntax (implies/equivalent definedConc propertyConc)
Examples (implies man (and person (some has-gender male))) (equivalent father-having-only-sons (and man (all has-child
man)))
Declaring Assertions
Fuzzy Instances Syntax
Using the keyword instance followed by the individual, the concept the inequality symbol (>,>=,<,<=) and the degree of participation.
Example
(instance Charles brother)
(instance Charles (and tall thin) >= 0.7 )
Declaring Assertions
Fuzzy Relations Syntax
Using the keyword related followed by the individuals names, the role that relates them, the inequality type and the degree of participation
Examples
(related Peter Betty has-sister )
(related Peter Charles has-friend >= 0.8 )
FiRE Interface
The FiRE user interface consists of an editor pane (upper left), inference services pane (upper right-Entailment, Subsumption,Glb), and output pane (the bottom-Tableaux Expansion, Output, Tableaux, Model, Classification).
Reasoning Services Consistency
Checks the knowledge for consistency. The Tableaux expansion pane presents the
tableaux expansion in detail showing all the operators applied.
The Output pane shows the statements declared, or differently the syntax mistakes
The Tableaux pane shows the results of tableaux expansion
The model pane shows the resulting model.
Reasoning Services
Entailment Entailment queries evaluate whether an individual
participates in a concept with a specific degree. FiRE answers true or false to these queries
Syntax
(instance individual concept ⋈ degree) or
individual concept degree⋈ Example
( instance Doris (and human (some has-gender (or female male))) >= 1) or
Doris (and human (some has-gender (or female male))) >= 1
Reasoning Services
Subsumption Subsumption queries evaluate whether a concept is
subsumed by another concept. FiRE answers true or false to these queries
Syntax(implies C1 C2) or C1 C2
Example( implies father man) or father man
Greatest Lower Bound Greatest lower bound queries evaluate the greatest
possible degree of an individual participating in a concept Syntax
Similar to entailment queries
Reasoning Services
Classification
This action performs subsumption checks of all the possible combinations of concepts and it creates the taxonomy tree shown in Classification Pane.
What is sesame
Sesame is an open source Java framework Storing Querying and Reasoning with RDF and RDF Schema. (also
supports N3, N-Triple, Turtle) It can be used
As a database for RDF and RDF Schema As a Java library for applications that need to
work with RDF internally
Sesame Integration
Converts knowledge to N-Triples and exports it to Sesame
Evaluates greatest lower bound for all the individuals participating in all the concepts (Global GLB) and exports implicit knowledge to Sesame.
Imports knowledge from sesame and evaluates Global GLB
FiRE SesameN-Triples
Benefits Data Stored in a sesame repository
Data can then easily stored to a database Server-Client Architecture
Easy access to data Queries
Which individual is tall > 0.6, clever > 0.5
and also has a sister? Reasoning is off-line operation
Future Extensions
Apply DL Optimizations. Fuzzy Queries Extend to other uncertainty formalisms. Extend the DL component’s
expressiveness (SHOIN exist). Support data types. Support rules.