0% found this document useful (0 votes)
24 views13 pages

Knowledge representation Sem Net and frames

The document discusses knowledge representation (KR) in cognitive science and artificial intelligence, highlighting various approaches such as semantic networks, frames, and extended semantic networks. It explains how knowledge can be structured and represented using predicate logic, inheritance mechanisms, and frame networks, including examples in Prolog. Additionally, it covers advanced techniques like conceptual dependency theory and the semantic web, emphasizing the importance of efficient knowledge storage and processing.

Uploaded by

harshiniv944
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views13 pages

Knowledge representation Sem Net and frames

The document discusses knowledge representation (KR) in cognitive science and artificial intelligence, highlighting various approaches such as semantic networks, frames, and extended semantic networks. It explains how knowledge can be structured and represented using predicate logic, inheritance mechanisms, and frame networks, including examples in Prolog. Additionally, it covers advanced techniques like conceptual dependency theory and the semantic web, emphasizing the importance of efficient knowledge storage and processing.

Uploaded by

harshiniv944
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

Knowledge Representation:

Introduction, Approaches to Knowledge representation, Knowledge


representation using Semantic Network, Extended Semantic Network for KR,
Knowledge representation using Frames Advance Knowledge Representation
Techniques: Introduction, Conceptual Dependency Theory, Script Structure, CYC
Theory, Case Grammars, Semantic Web

4.1 Knowledge Representation

● Knowledge representation (KR) is an important issue in both cognitive


science and artificial intelligence.

– In cognitive science, it is concerned with the way people store and


process information and

– In artificial intelligence (AI), main focus is to store knowledge so


that programs can process it and achieve human intelligence.

● There are different ways of representing knowledge e.g.

– predicate logic,

– semantic networks,

– extended semantic net,

– frames,

– conceptual dependency etc.

● In predicate logic, knowledge is represented in the form of rules and facts


as is done in Prolog.

4.2. Semantic Network:

 Formalism for representing information about objects, people, concepts


and specific relationship between them.

 The syntax of semantic net is simple. It is a network of labeled nodes and


links.

– It’s a directed graph with nodes corresponding to concepts, facts,


objects etc. and

– arcs showing relation or association between two concepts.


 The commonly used links in semantic net are of the following types.

– isa  subclass of entity (e.g., child hospital is subclass of


hospital)

– inst  particular instance of a class (e.g., India is an instance of


country)

prop  property link (e.g., property of dog is ‘bark)

4.3. Representation of Knowledge in Sem Net

“Every human, animal and bird is living thing who breathe and eat. All birds can
fly. All man and woman are humans who have two legs. Cat is an animal and has
a fur. All animals have skin and can move. Giraffe is an animal who is tall and has
long legs. Parrot is a bird and is green in color”.

4.3.1 Representation in Predicate Logic

● Every human, animal and bird is living thing who breathe and eat.

X [human(X)  living(X)]

X [animal(X)  living(X)]

X [bird(X)  living(X)]

● All birds are animal and can fly.

X [bird(X)  canfly(X)]

● Every man and woman are humans who have two legs.

X [man(X)  haslegs(X)]

X [woman(X)  haslegs(X)]

X [human(X)  has(X, legs)]

● Cat is an animal and has a fur.

animal(cat)  has(cat, fur)

● All animals have skin and can move.

X [animal(X)  has(X, skin)  canmove(X)]


● Giraffe is an animal who is tall and has long legs.

animal(giraffe)  has(giraffe, long_legs)  is(giraffe, tall)

● Parrot is a bird and is green in color.

bird(parrot)  has(parrot, green_colour)

4.3.2.Representation in Semantic Net


Semantic Net
breathe, eat
Living_thing prop
isa isa
two legs isa fly
Human Animal Bird
isa isa inst isa inst
prop green
Man Woman Giraffe Cat Parrot
prop prop prop
inst fur
john skin, move tall, long legs

4.4. Inheritance

● Inheritance mechanism allows knowledge to be stored at the highest


possible level of abstraction which reduces the size of knowledge base.

– It facilitates inferencing of information associated with semantic


nets.

– It is a natural tool for representing taxonomically structured


information and ensures that all the members and sub-concepts of
a concept share common properties.

– It also helps us to maintain the consistency of the knowledge base


by adding new concepts and members of existing ones.
● Properties attached to a particular object (class) are to be inherited by all
subclasses and members of that class.

4.4.1. Property Inheritance Algorithm

Input: Object, and property to be found from Semantic Net;

Output:Yes, if the object has the desired property else return false;

Procedure:

● Find an object in the semantic net; Found = false;

● While {(object ≠ root) OR Found } DO

{ If there is a a property attribute attached with an object then

{ Found = true; Report ‘Yes’} else

object=inst(object, class) OR isa(object, class)

};

● If Found = False then report ‘No’; Stop

Coding of Semantic Net in Prolog

Isa facts Instance facts Property facts

isa(living_thing, nil). inst(john, man). prop(breathe, living_thing).


isa(human, living_thing). inst(giraffe, animal). prop(eat, living_thing).
isa(animals, living_thing). inst(parrot, bird) prop(two_legs, human).
isa(birds, living_thing). prop(skin, animal).
isa(man, human ). prop(move, animal).
isa(woman, human). prop(fur, bird).
isa(cat, animal). prop(tall, giraffe).
prop(long_legs, giraffe).
prop(tall, animal).
prop(green, parrot).
4.4.2. Inheritance Rules in Prolog

Instance rules:

instance(X, Y) :- inst(X, Y).

instance (X, Y) :- inst(X, Z), subclass(Z,Y).

Subclass rules:

subclass(X, Y) :- isa(X, Y).

subclass(X, Y) :- isa(X, Z), subclass(Z, Y) .

Property rules:

property(X, Y) :- prop(X, Y).

property(X, Y) :- instance(Y,Z), property(X, Z).

property(X, Y) :- subclass(Y, Z), property(X, Z).

Queries
4.5. Knowledge Representation using Frames

● Frames are more structured form of packaging knowledge,

– used for representing objects, concepts etc.

● Frames are organized into hierarchies or network of frames.

● Lower level frames can inherit information from upper level frames in
network.

● Nodes are connected using links viz.,

– ako / subc (links two class frames, one of which is subclass of


other e.g., science_faculty class is ako of faculty class),

– is_a / inst ( connects a particular instance of a class frame e.g.,


Renuka is_a science_faculty)

– a_part_of (connects two class frames one of which is contained in


other e.g., faculty class is_part_of department class).

Property link of semantic net is replaced by SLOT fields.

● A frame may have any number of slots needed for describing object. e.g.,

– faculty frame may have name, age, address, qualification etc as


slot names.

● Each frame includes two basic elements : slots and facets.

– Each slot may contain one or more facets (called fillers) which
may take many forms such as:

 value (value of the slot),

 default (default value of the slot),

 range (indicates the range of integer or enumerated values, a


slot can have),

 demons (procedural attachments such as if_needed,


if_deleted, if_added etc.) and

 other (may contain rules, other frames, semantic net or any


type of other information).
4.5.1. Frame Network – Example

university

a_part_of

department hostel

a_part_of is_a

faculty nilgiri hostel

ako

science_faculty

is_a

renuka
4.5.2. Detailed Representation of Frame Network

frame0

f_name: university
phone: (default: - 011686971)
address : (default - IIT Delhi)

frame1 frame2

f_name : department f_name : hostel


a_part_of : frame0 a_part_of : frame0
programme : [Btech, Mtech, Ph.D] room : (default - 100)

frame11 frame21

f_name: faculty f_name : nilgiri


a_part_of : frame1 is_a : frame2
age : range (25 - 60) phone : 0116862345
nationality: (default - Indian)
qual: (default - Post graduate)

frame12 frame13

f_name : science faculty f_name : renuka


ako : frame11 is_a : frame12
qual : (default - M.Sc) qual : Ph.D
age: 45
adrress: Janak Puri

4.5.3. Description of Frames

● Each frame represents either a class or an instance.

● Class frame represents a general concept whereas instance frame


represents a specific occurrence of the class instance.
● Class frame generally have default values which can be redefined at
lower levels.

● If class frame has actual value facet then decedent frames can not modify
that value.

● Value remains unchanged for subclasses and instances.

4.5.4. Inheritance in Frames

● Suppose we want to know nationality or phone of an instance-frame


frame13 of renuka.

● These informations are not given in this frame.

● Search will start from frame13 in upward direction till we get our
answer or have reached root frame.

● The frames can be easily represented in prolog by choosing predicate


name as frame with two arguments.

● First argument is the name of the frame and second argument is a list of
slot - facet pair.

4.5.5. Coding of frames in Prolog

frame(university, [phone (default, 011686971),


address (default, IIT Delhi)]).

frame(deaprtment, [a_part_of (university), programme ([Btech, Mtech, Ph.d]))]).

frame(hostel, [a_part_of (university), room(default, 100)]).

frame(faculty, [a_part_of (department), age(range,25,60), nationality(default,


indian), qual(default, postgraduate)]).

frame(nilgiri, [is_a (hostel), phone(011686234)]).

frame(science_faculty, [ako (faculty),qual(default, M.Sc.)]).

frame(renuka, [is_a (science_faculty), qual(Ph.D.), age(45), address(janakpuri)]).

4.5.6. Inheritance Program in Prolog

find(X, Y) :- frame(X, Z), search(Z, Y), !.


find(X, Y) :- frame(X, [is_a(Z),_]), find(Z, Y), !.

find(X, Y) :- frame(X, [ako(Z), _]), find(Z, Y), !.

find(X, Y) :- frame(X, [a_part_of(Z), _]), find(Z, Y).

● Predicate search will basically retrieve the list of slots-facet pair and will
try to match Y for slot.

● If match is found then its facet value is retrieved otherwise process is


continued till we reach to root frame

4.6. Extended Semantic Network

● In conventional Sem Net, clausal form of logic can not be expressed.

● Extended Semantic Network (ESNet) combines the advantages of both


logic and semantic network.

● In the ESNet, terms are represented by nodes similar to Sem Net.

● Binary predicate symbols in clausal logic are represented by labels on


arcs of ESNet.

– An atom of the form “Love(john, mary)” is an arc labeled as ‘Love’


with its two end nodes representing ‘john’ and ‘mary’.

● Conclusions and conditions in clausal form are represented by different


kinds of arcs.

– Conditions are drawn with two lines and conclusions


are drawn with one heavy line .

Example:

● Represent ‘grandfather’ definition

Gfather(X, Y)  Father(X, Z), Parent(Z, Y) in ESNet.

Z
Father Parent

X Y
Gfather
● Represent clausal rule “Male(X), Female(X)  Human(X)” using binary
representation as “Isa(X, male), Isa(X, female)  Isa( X, human)”
and subsequently in ESNet as follows:

male
Isa Isa
X human
Isa
female

4.6.1. Inference Rules in ESNet

● Inference rules are embedded in the representation itself.

● The inference that “for every action of giving, there is an action of taking”
in clausal logic written as

“Action(E, take)  Action(E, give)”.

ESNet

● The inference rule such as “an actor of taking action is also the recipient
of the action” can be easily represented in clausal logic as:

– Here E is a variable representing an event where an action of


taking is happening).

Recipient(E, Y)  Acton(E, take), Actor (E, Y)


ESNet Action
E take
Recipient
Actor

Y
Example 2:

● Represent the following clauses of Logic in ESNet.

Recipient(E, Y)  Acton(E, take), Actor (E, Y)

Object (e, apple).

Action(e, take).

Actor (e, john) .

apple

Object
e E Recipient
Actor Action Actor
Action

john take Y

4.6.2. Contradiction

• The contradiction in the ESNet arises if we have the following situation.

Part_of
P X

Isa
Part_of
Y

4.6.3. Deduction in ESNet

● Both of the following inference mechanisms are available in ESNet.

– Forward reasoning inference (uses bottom up approach)

 Bottom Up Inferencing: Given an ESNet, apply the following


reduction (resolution) using modus ponen rule of logic ({A 
B, B} then A).
– Backward reasoning inference (uses top down approach).

Top Down Inferencing: Prove a conclusion from a given ESNet by adding the
denial of the conclusion to the network and show that the resulting set of
clauses in the network is inconsistent

Example: Bottom Up Inferencing

Given set of clauses Inferencing

Isa(X, human)  Isa(X, man) Isa(john, human)


Isa(john, man).

human human
Isa

X Isa
Isa

man john

john Isa

Here X is bound to john

Example: Top Down Inferencing

Given set of clauses Prove conclusion

Isa(X, human)  Isa(X, man) Query: Isa(john, human)


Isa(john, man). denial of query

human human
Isa Isa

X X
Isa Isa Isa

man man

john Isa john Isa

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy