Title: CSCI3406 Fuzzy Logic and Knowledge Based Systems AI
1CSCI3406 Fuzzy Logic and Knowledge Based Systems
(AI)
Knowledge Acquisition (KA) II
2Introduction
- In this lecture we cover the actual process of
Knowledge Acquisition (KA) from preliminary work
to automated KA systems.
3Topics of Discussion
- Preliminary work
- Knowledge Handbook
- KA techniques
4Knowledge acquisition involves elicitation,
analysis, modelling and validation of knowledge
- Employing a technique to elicit data (usually
verbal) from the expert. - Interpreting these verbal data (more or less
skilfully) in order to infer what might be the
expert's underlying knowledge and reasoning
process. - Using this interpretation to guide the
construction of some model or language that
describes (more or less accurately) the expert's
knowledge and performance. - Interpretation of further data is guided in turn
by this evolving model. - The principle focus for the knowledge acquisition
team should be in constructing models, in domain
definition, or problem identification and problem
analysis. - Ref Johnson, L. Johnson, N.E., Knowledge
Elicitation Involving Teachback Interviewing in
Kidd in Knowledge Acquisition for Expert
Systems A Practical Handbook, 1987
5Roles for knowledge acquisition
- Knowledge engineering and management
technological innovation, ontology construction,
document mark-up - AI systems development generic methodologies
(e.g., KADS KADS stands for Knowledge Analysis
and Documentation System''. Later on, other
interpretations have been given to this acronym,
such as Knowledge Analysis and Design
Support'. KADS is the name of a structured
methodology for the development of knowledge
based systems that is now in practical use in
many places in Europe and elsewhere.) - Organizational analysis process approaches
- Task analysis job design
- User analysis generation of cognitive
specifications for tasks, the mitigation of human
error in domains of risk or time pressure, the
enhancement of proficiency through training and
skill remediation - Requirements elicitation systems or design
analysis, conceptual database design, software
requirements definition
6Preliminary Work - I
- Preliminary work is carried out by knowledge
engineer(s) - Knowledge engineering is knowledge acquisition
for expert system development, and used to
describe the reduction of a large body of
knowledge to a precise set of facts and rules
(Ref Feigenbaum, E.A. (1980). Knowledge
Engineering the Applied Side of Artificial
Intelligence. Report STAN-CS-80-812. Department
of Computer Science, Stanford University) - Knowledge engineer is a computer software
programmer who gathers knowledge from experts and
then translates the knowledge into the knowledge
base of a computerised expert system in a
structured and logical way, and eventually
constructs computerised expert systems. - "Knowledge acquisition is a bottleneck in the
construction of expert systems. The knowledge
engineer's job is to act as a go-between to help
an expert build a system. Since the knowledge
engineer has far less knowledge of the domain
than the expert, however, communication problems
impede the process of transferring expertise into
a program. The vocabulary initially used by the
expert to talk about the domain with a novice is
often inadequate for problem-solving thus the
knowledge engineer and expert must work together
to extend and refine it. One of the most
difficult aspects of the knowledge engineer's
task is helping the expert to structure the
domain knowledge, to identify and formalize the
domain concepts." (Ref Hayes-Roth, F., Waterman,
D.A. Lenat, D.B., Eds. (1983). Building Expert
Systems. Reading, Massachusetts Addison-Wesley)
7Preliminary Work - II
- When acquiring knowledge about a domain it is
absolutely crucial that the knowledge engineer
can converse with the expert using the expert
terminology. - The knowledge engineer has to have a good grasp
of the domain to be able to ask intelligent
questions to extract important and relevant
knowledge from the experts who have vast amounts
of knowledge a lot of which is tacit knowledge. - The knowledge engineer must therefore do some
preliminary work including research on the domain
in question before the first interview with the
expert takes place. - Some requirements for KA Techniques
- Take experts off the job for short time periods
- Allow non-experts to understand the knowledge
- Focus on the essential knowledge
- Try to capture tacit knowledge
- Allow knowledge to be collated from different
experts - Allow knowledge to be validated and maintained
8Preliminary Work
- Reading
- Observation
- Discussion
9The Knowledge Handbook
- One of the functions of the knowledge engineer
during the knowledge acquisition phase is to
document the knowledge that has been acquired.
One idea suggested (Wolfgram et. al. 1987 and
others) is that of building a knowledge handbook.
- Wolfgram et. al. describe the contents of the
knowledge handbook as follows - The general problem description.
- Who the users are and their expectations from the
system. - A breakdown of the problems into sub-problems and
sub-domains for future knowledge acquisition.
10The Knowledge Handbook
- A detailed description of the domain or
sub-domain to be used for the prototype. - A bibliography of reference documents.
- A list of vocabulary, concepts, terms, phrases
and acronyms in the domain. - A list of experts for the prototype.
- Some reasonable performance standards for the
system, based on consultation with the experts
and users. - Descriptions of typical reasoning scenarios
gained from the knowledge acquisition.
11Basic knowledge engineering for knowledge
acquisition - I
- Knowledge engineer act as a go-between the
expert and knowledge base. This can be achieved
by means of eliciting knowledge from the expert,
encoding it for the knowledge base, and refining
it in collaboration with the expert in order to
achieve acceptable performance. The process is
basically as follows - The knowledge engineer interviews the expert to
elicit his or her knowledge - The knowledge engineer encodes the elicited
knowledge for the knowledge base - The shell uses the knowledge base to make
inferences about particular cases specified by
clients - The clients use the shell's inferences to obtain
advice about particular cases - Ref http//ksi.cpsc.ucalgary.ca/articles/KBS/KSS0
/
12Basic knowledge engineering for knowledge
acquisition - II
- Basic knowledge engineering model with manual
acquisition of knowledge from an expert
(left-hand side of the figure). This is also
followed by interactive application of the
knowledge with multiple clients through an expert
system shell (right-hand side of the figure). - Ref http//ksi.cpsc.ucalgary.ca/articles/KBS/KSS0
/
13Interactive Knowledge Engineering for Interactive
Knowledge Acquisition -I
- In an interactive knowledge engineering process
for interactive knowledge acquisition, knowledge
engineers have responsibility for - Advising the experts on the process of
interactive knowledge elicitation - Managing the interactive knowledge acquisition
tools, setting them up appropriately - Editing the unencoded knowledge base in
collaboration with the experts - Managing the knowledge encoding tools, setting
them up appropriately - Editing the encoded knowledge base in
collaboration with the experts - Validating the application of the knowledge base
in collaboration with the experts - Setting up the user interface in collaboration
with the experts and clients - Training the clients in the effective use of the
knowledge base in collaboration with the expert
by developing operational and training procedures.
14Interactive Knowledge Engineering for Interactive
knowledge acquisition -II
15Interactive Knowledge Engineering for Interactive
Knowledge Acquisition -III
- Interactive knowledge acquisition and encoding
tools can greatly reduce the need for the
knowledge engineer to act as an intermediary but,
in most applications, they leave a substantial
role for the knowledge engineer. - This use of interactive elicitation can be
combined with manual elicitation and with the use
of the interactive tools by knowledge engineers
rather than, or in addition to, experts.
Knowledge engineers can directly elicit knowledge
from the expert and use the interactive
elicitation tools to enter knowledge into the
knowledge base. - Such approach is very useful and effective as it
allows use of - Multiple knowledge engineers since the tasks may
require the effort of more than one person, and
some specialization may be appropriate - Multiple experts since one person (expert) should
not be expected to have all the knowledge
required, and, even if such an expert exists,
comparative elicitation from multiple experts is
itself a valuable knowledge elicitation technique - Validation process, which is a key to an
effective and successful system development
16KA Techniques
- There have been many techniques developed to
help elicit knowledge from expert(s). These are
referred to as knowledge elicitation or knowledge
acquisition (KA) techniques. - Some of KA techniques are
- Interviews-General (Focused and Structured
Interview) - Observation
- Protocol Analysis
- Walkthroughs
- Repertory Grids
- Computer aided Knowledge Acquisition
- Automated Rule Induction
17Another way of listing principle KA techniques
I(see http//www.epistemics.co.uk/Notes/63-0-0.ht
m for further details)
- 1-Protocol-generation techniques include various
types of interviews (unstructured,
semi-structured and structured), reporting
techniques (such as self-report and shadowing)
and observational techniques - 2-Protocol analysis techniques are used with
transcripts of interviews or other text-based
information to identify various types of
knowledge, such as goals, decisions,
relationships and attributes. This acts as a
bridge between the use of protocol-based
techniques and knowledge modelling techniques. - 3-Hierarchy-generation techniques, such as
laddering, are used to build taxonomies or other
hierarchical structures such as goal trees and
decision networks. - Laddering techniques involve the creation,
reviewing and modification of hierarchical
knowledge, often in the form of ladders (i.e.
tree diagrams). - Various forms of ladders have been used Concept,
Attribute, Composition and Process ladders.
18Another way of listing principle KA techniques -
II
- 4-Matrix-based techniques involve the
construction of grids indicating such things as
problems encountered against possible solutions.
Important types include the use of frames for
representing the properties of concepts and the
repertory grid technique used to elicit, rate,
analyse and categorise the properties of
concepts. - 5-Sorting techniques are used for capturing the
way people compare and order concepts, and can
lead to the revelation of knowledge about
classes, properties and priorities. - 6-Limited-information and constrained-processing
tasks are techniques that either limit the time
and/or information available to the expert when
performing tasks. For instance, the
twenty-questions technique provides an efficient
way of accessing the key information in a domain
in a prioritised order. - 7-Diagram-based techniques include the generation
and use of concept maps, state transition
networks, event diagrams and process maps. The
use of these is particularly important in
capturing the "what, how, when, who and why" of
tasks and events.
19Comparison of KA Techniques
Ref http//www.epistemics.co.uk/Notes/63-0-0.htm
20Typical Use of KA Techniques
- The followings can summarise general process for
How and When the KA techniques are used in a
knowledge acquisition project - Conduct an initial interview with the expert in
order to (a) scope what knowledge is to be
acquired, (b) determine what purpose the
knowledge is to be put, (c) gain some
understanding of key terminology, and (d) build a
rapport with the expert. This interview (as with
all session with experts) is recorded on either
audiotape or videotape. - Transcribe the initial interview and analyse the
resulting protocol. Create a concept ladder of
the resulting knowledge to provide a broad
representation of the knowledge in the domain.
Use the ladder to produce a set of questions
which cover the essential issues across the
domain and which serve the goals of the knowledge
acquisition project. - Conduct a semi-structured interview with the
expert using the pre-prepared questions to
provide structure and focus. - Transcribe the semi-structured interview and
analyse the resulting protocol for the knowledge
types present. Typically these would be concepts,
attributes, values, relationships, tasks and
rules. - Represent these knowledge elements using the most
appropriate knowledge models, e.g. ladders,
grids, network diagrams, hypertext, etc. In
addition, document anecdotes, illustrations and
explanations in a structured manner using
hypertext and template headings. - Use the resulting knowledge models and structured
text with contrived techniques such as laddering,
think aloud problem-solving, twenty questions and
repertory grid to allow the expert to modify and
expand on the knowledge already captured. - Repeat the analysis, model building and
acquisition sessions until the expert and
knowledge engineer are happy that the goals of
the project have been realised. - Validate the knowledge acquired with other
experts, and make modifications wherever
appropriate and necessary. - Aggregate knowledge collected from all experts
if/wherever/whenever appropriate
This part is mostly adapted from
http//www.epistemics.co.uk/Notes/63-0-0.htm