0% found this document useful (0 votes)
151 views

Knowledge Base & Knowledge Engineering Process: Knowledge Representation & Reasoning WID2001

The document discusses knowledge representation and knowledge engineering processes. It defines knowledge as information about the world and representation as how knowledge is represented. It contrasts two Prolog programs to show how an explicit representation of knowledge in a knowledge base allows for reasoning. Knowledge engineering involves problem assessment, knowledge acquisition from experts, developing prototypes, and evaluating and maintaining the system. Key persons are the knowledge engineer, human expert, and end-users.

Uploaded by

Marina MEL
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
151 views

Knowledge Base & Knowledge Engineering Process: Knowledge Representation & Reasoning WID2001

The document discusses knowledge representation and knowledge engineering processes. It defines knowledge as information about the world and representation as how knowledge is represented. It contrasts two Prolog programs to show how an explicit representation of knowledge in a knowledge base allows for reasoning. Knowledge engineering involves problem assessment, knowledge acquisition from experts, developing prototypes, and evaluating and maintaining the system. Key persons are the knowledge engineer, human expert, and end-users.

Uploaded by

Marina MEL
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 29

KNOWLEDGE BASE

&
KNOWLEDGE ENGINEERING
PROCESS

KNOWLEDGE REPRESENTATION &


REASONING
WID2001
Introduction
• Knowledge: some information about the world
– medical information about some particular set of
diseases: what causes them, what are the symptoms,
how to diagnose them, …
– geographical data: which city is the capital of which
country, which is the world’s highest mountain , ….
• Representation: how / in which language do we
represent this information
• Reasoning: how to extract more information from
what is explicitly represented
Knowledge Base
• Two Prolog programs with identical behaviour.
Which one is knowledge-based?
Example1
(1)
printColour(ocean) :- !, write("It’s blue.").
printColour(grass) :- !, write("It’s green.").
printColour(cloud) :- !, write("It’s white.").
printColour(X) :- !, write("Beats me.").

(2)
printColour(X) :- colour(X,Y), !, write("It’s "),
write(Y), write(".").
printColour(X) :- write("Beats me.").
colour(ocean, blue).
colour(cloud, white).
colour(X,Y) : - madeof(X,Z), colour(Z,Y).
madeof(grass, vegetation).
colour(vegetation, green).
• Only the second program has explicit
representation of ‘knowledge’ that ocean is blue
• The program does what it does when asked for
the colour of ocean because of this knowledge.
• When colour(ocean,blue) is removed, it will not
print the right colour for ocean.
• Thus, KB system is having explicit representation
of knowledge which is used in the operation of
the program
Example 2
% File loc.pl

/* Clause 1 */ located_in(kangar, perlis).


/* Clause 2 */ located_in(ipoh, perak).
/* Clause 3 */ located_in(taiping, perak).
/* Clause 4 */ located_in(kuching, sarawak).
/* Clause 5 */ located_in(X, malaysia) :- located_in(X, perlis).
/* Clause 6 */ located_in(X, malaysia) :- located_in(X, perak).
/* Clause 7 */ located_in(X, east_mal) :- located_in(X, sarawak).

A knowledge based using Prolog that describes the locations of cities in


Malaysia.
What is Knowledge-based System?
• Knowledge-based systems are systems for
which intentional stance is grounded by design
in symbolic representation
• The symbolic representation of knowledge is
called a knowledge base.
• A system that draws upon the knowledge of
human experts captured in a knowledge base to
solve problems that normally require human
expertise.
• Symbolic: It incorporates knowledge that is symbolic
[as well as numeric].
• Heuristic: It reasons with judgmental, imprecise, and
qualitative knowledge as well as with formal
knowledge of established theories.
• Transparent: Its knowledge is simply and explicitly
represented in terms familiar to specialists, and is
separate from its inference procedures. It provides
explanations of its line of reasoning and answers to
queries about its knowledge.
Basic Knowledge-Based System Architecture
Examples of knowledge-based Systems
• MYCIN (1970s, Stanford University)
– Type: an expert system
– Knowledge domain: diagnosing blood infections
of the sort that might be contracted in hospital
– Knowledge acquisition: lots of interviews with
experts on infectious diseases, translated into
approximately 500 rules
– Purpose: to assist a physician, who was not an
expert in the field of antibiotics, with the diagnosis
& treatment of blood disorders (and in particular
to establish whether the patient was suffering
from a serious infection like meningitis).
– Input: symptoms & test results
– Output: a diagnosis, accompanied by a degree of
certainty, & recommended therapy
– Knowledge representation: production rules (and
simpler data structures)
– Inference engine: Mixed chaining, but principally
backward chaining from a top goal: that diagnosis
& therapy is needed. Rules are found to satisfy
conditions of this rule, then further rules to satisfy
these. Evidence may be sought from the user.
– Dealing with uncertainty: By calculating certainty
factors.
Example of MYCIN
--------PATIENT-248--------
1) Patient's name: (first-last) **
C.R.
2) Sex: **
MALE
3) Age: **
52
4) Have you been able to obtain positive
microbiological information about a possible
infection of C.R.? **
YES
--------INFECTION-1--------
5) What is the infection? **
ENDARTERITIS
• Take a look at the Computational Knowledge Engine
called Wolfram Alpha.
– http://www.wolframalpha.com/examples/
(focus on the nutrition example)
– What type of knowledge-based system?
– What knowledge must it represent?
– What reasoning must it do?
– What would it take to extend it?
– Where does it fail?
– How is it different from Google?
Wolfram Alpha (2009, Wolfram Alpha LLC)
• What type of knowledge-based system?
– Answer engine (online service that answers factual queries)
• What knowledge must it represent?
– Different kinds of foods, nutritional data, calories
• What reasoning must it do?
– Mathematical computations based on portions
• Where does it fail?
– Does not know about recipes, how to combine foods,
• How is it different from Google?
– Data driven as opposed to document driven, mathematical reasoning
Knowledge Engineering (KE)
• KR is first and foremost about knowledge
• Before implementing it, need to understand
clearly
– what is to be computed? What domain?
– why and where inference is necessary?
• Definition: The process of building intelligent
knowledge based systems.
Phases of KE (Prototyping)
Problem
Assessment

Knowledge
Acquisition

Development

Evaluation
and
Maintenance
Problem Assessment
• Determine the problem’s characteristics.
• Identify the main participants in the project.
• Specify the project’s objectives.
• Determine the resources needed for building
the system.
Types of Problem suitable for KBS (ES)
• Typical problems addressed

Problem Type Description


Diagnosis Inferring malfunctions of an object from its behaviour
and recommending solutions.

Selection Recommending the best option from a list of possible


alternatives.
Prediction Predicting the future behaviour of an object from its
behaviour in the past.
Classification Assigning an object to one of the defined classes.
Optimization Improving the quality of solutions until an optimal
one is found.
Knowledge Acquisition
• Acquire (elicit, research, observe,
communicate, learn) the knowledge from the
Human Expert and the potential End-Users.
The processes – Knowlegde base
• Collect and analyse data, information and knowledge.
• Make key concepts of the system design more explicit.
• Knowledge acquisition is an inherently iterative process.
– we start with reviewing documents and reading books, papers
and manuals related to the problem domain.
– Once we become familiar with the problem, we can collect
further knowledge through interviewing the domain expert.
– Then we study and analyse the acquired knowledge, and
repeat the entire process again.
• Understanding the problem domain is a critical task.
Human Expert Knowledge - Knowledgebase /
Expert System
• Real world problems are complex and usually ‘new’ (Unstructured,
unseen, uninformed, uncertain, missing data)
• Recall the different types of Knowledge (DIKW) (requires different
methods to apply them).
• Appropriate methods to represent the knowledge so that the KBS (ES)
is reliable when doing the inferencing (reason & justify) and
communicate appropriately for achieving its goal*:
– ‘Sound’ consultation ( use the correct facts & rules)
– Less ‘noise’ (accurate)
– Trust & Integrity
– Fast decision making
– Safety & Friendly
• *Intelligent Wisdom
The KBS (ES) Development
• Choose a tool/software for building an intelligent system (from scratch or
using ES Shell?)
• Transform data to information and represent the knowledge.
• Design and implement a prototype system.
– To test how well we understand the problem - to make sure that the problem-solving
strategy, the tool selected for building a system, and techniques for representing
acquired data and knowledge are adequate to the task.
– Must refer to the end-users (satisfaction & ease of use – user friendly)
– Must consult the human expert (performance of the prototype – Knowledge base &
flow must be validated)
• Implement the complete system.
– main work at this phase is often associated with adding data and knowledge to the
system
– Few versions of the prototype until the ES is ready for deliverable (“real-world
prototype” – has risk & expensive cost)
Evaluation & Maintenance
• Evaluate the system against the performance criteria:
– Knowledge base
– Inference Engine
– User Interface
– Extra: (Explanation, Uncertainty, Supportive)
• Revise the system as necessary (repeat – update the
KB, Inference Strategy, Planning).
• Make arrangements for technology transfer.
• Establish an effective maintenance program.
Basic Expert System Structure
Persons involved
• Knowledge Engineer (DBO, SA, Programmer)
• Human Expert (domain-specific)
• End-Users
And must involve from the beginning until the
end of the implementation and evaluation
processes – (i.e. that is why using the
Prototyping approach)
Example of Real World Problems
• Reminder: new, uncertain, complex, not enough
data/information, high-risk, unpredictable
– Engine Problem – Flight & Train accidents
– Medical Diagnosis – Covid19
– Tsunami & Earth quake
– Stock market
• Specific domain, Complex and requires practices,
experiences, formal education, non-stop learning =>
EXPERT (Knowledge-base as required huge data and
methodology doing a decision-making)
Early ES Examples
• Real-world *
– Mycin (and E-Mycin)
– Dendral
----------
*Tutorial tasks
i. Find and explain another 3 examples
ii. Preparation for a Group Project
• PROJECT DISCUSSION (TUTORIAL – THURSDAY)

You might also like