12-10-2013_09-24-50 / [Simon_Kendal,_Malcolm_Creen]_Introduction_to_Know(BookFi.org)
.pdfAn Introduction to Knowledge Engineering |
13 |
The Project Champion
There are many people involved in the actual building of a KBS. Some of those people, such as the knowledge engineer and the human expert, have been discussed earlier in this chapter.
However, one of the most important people involved in a KBS project from the users perspective is the Project Champion. This is a person who works with the project team, most likely as a user representative. Such a person must:
be able to convince users that the KBS is needed
have an appropriate level of authority
‘get on’ with both management and users
have a personal investment in the project
believe in the need for the KBS
be capable of presenting the business benefits to management
be highly motivated towards the success of the project.
Convincing Management
One of the key activities that takes place at the beginning of a KBS project is convincing management of the need for the system. Obtaining management approval is essential because without appropriate ‘buy-in’ there will not be the necessary management support, nor the funding required to build and maintain the KBS.
A presentation of the aims of the KBS early in the project will:
provide an opportunity for management to be made aware of the reality of the project
allow the knowledge engineer to gauge the real level of support from management.
The aim of the presentation is therefore to obtain management buy-in and the funding for the project. The overall level of support from management will be determined partly by enthusiasm in the meeting and partly by the level of funding obtained.
Example of a KBS Project
The following is an example of how a hypothetical KBS project can start.
The goal of the system was to assist the clinician in the intensive care unit (ICU). The system addressed the following problems:
14 |
An Introduction to Knowledge Engineering |
The need for interpretation of measurement values with respect to historical information about changes in a patient’s status and therapy.
The difficulty of directly relating measurement values to a therapeutic recommendation.
The system was designed to perform the following tasks in the ICU:
Predict the initial setting of the mechanical ventilator to assist the patient to breathe.
Suggest adjustments to treatment by continuous reassessment of the patient’s condition.
Summarise the patient’s physiological status.
Maintain a set of patient’s specific expectations and goals for future evaluation.
Aid in the stabilisation of the patient’s condition.
The basic procedure for obtaining information and developing the system is outlined in Figure 1.2.
The knowledge elicitation sessions resulted in a set of rules
A prototype was developed and shown to the clinicians
Feedback from the prototype was used to refine the system and rule set
The loop was repeated a number of times until the final system was obtained
The system was tested on over 50 patients The majority of the tests showed a close agreement
between the KBS and the consultant
FIGURE 1.2. Knowledge-based system development process.
One of the main queries in the project was from the experts providing knowledge for the system. Obviously, it was essential that the system provided accurate answers, otherwise patients lives could be at risk. Similarly, experts providing the knowledge did not want to be blamed if an incorrect response was given by the KBS. These concerns can be summarised in Figure 1.3.
The main assurance provided by the knowledge engineer and project manager was that the system was built in accordance with quality assurance standards.
Quality assurance is an essential part of the design of any KBS—especially those designed for such purposes as:
railway signalling systems
alarm systems
detection of gas leaks
nuclear power station monitoring and control.
An Introduction to Knowledge Engineering |
15 |
Whose fault is it if the system fails?
Has the system been developed to quality standards?
Do we really know if it is correct?
FIGURE 1.3. Safety critical systems.
An error in any of these systems could result in significant risk, including loss of life. Attention to quality assurance is therefore essential.
The Project Manager’s Dilemma
As well as being skilled in overall project management, a project manager needs some negotiating skills to try and match the expectations of all parties involved in a project.
Stakeholder |
Expectation |
Users |
Want a system that meets their needs |
Knowledge engineers |
Would like to be left alone to carry out their job |
Quality manager |
Require the system to conform to their quality control procedures |
Senior management |
Would like the introduction of the system to go smoothly. They |
|
also want the project on time, within budget and working correctly |
|
|
Balancing the conflicting requirements will be difficult.
Professionalism
One method of trying to ensure high-quality systems development is to employ people who belong to a known profession. Membership of a professional body implies that a certain standard of work will be carried out and that the person will take pride in doing a good job.
Though the word ‘professional’ is in common usage, most people believe they understand what it means, we need to look more closely at what precisely defines a ‘professional’.
16 |
An Introduction to Knowledge Engineering |
Activity 8
This activity helps you focus on precisely what qualities characterise a professional or a professional group.
List the words you might normally expect to use or see used when describing professionalism.
Feedback 8
You may have thought of such terms as:
expert |
honesty |
skilled |
ethical |
integrity |
|
The main factors that distinguish a professional organisation are as follows:
Expertise. The individuals within the organisation maintain a current, working expertise of a given subject.
Self-regulation. The professional code of conduct and other regulations (such as code of practice or code of ethics) are self-imposed and made public. Any individual that wishes to be recognised as a member of the society must voluntarily show continuous compliance with such a code.
World view. All of the above conditions maintain a ‘world view’. This view does not discriminate nor does it compromise the basic moral principles of any member of society as a whole.
Professionals are normally recognised as a distinct group of people having established some sort of ‘contract’ with society. This contract is typically based upon a code of conduct or a code of ethics. An individual must adhere to this code in order to become and stay a member of the particular professional organisation.
In the United Kingdom, a profession is normally granted by Royal Charter. So if a profession were to be started for KBS development, a charter would be needed. The two main conditions for the granting of a charter are as follows:
It should be in the public interest to regulate members within that body.
The members should represent a coherent group.
Summary
A knowledge engineer requires a variety of skills ranging from the technical to the managerial.
An Introduction to Knowledge Engineering |
17 |
Self-Assessment Question
Knowledge Engineering: Skills Audit
The skills of a knowledge engineer are listed again in the table below.
Define each of these skills and then consider whether or not you have each skill. Draw up an action plan to acquire the skills you lack or need to improve.
Skill required |
Explanation/Definition |
Knowledge representation
Fact finding
Human skills
Visual skills
Analysis
Creativity
Managerial
Answer to Self-Assessment Question
Skill required |
Explanation |
Knowledge representation |
Being able to understand the information being provided by the expert |
|
and record this in some appropriate manner |
Fact finding |
Using tools such as interviews, questionnaires and observations to |
|
obtain knowledge from an expert |
Human skills |
Interviewing skill including how to acquire knowledge from an expert |
|
in a friendly and helpful manner |
Visualisation skills |
Being able to visualise the overall design of the system, prior to com- |
|
mitting the ideas to paper |
Analysis |
Working through data and information to find the most appropriate |
|
method of representing it, and identifying links within the data and |
|
information |
Creativity |
Using new ideas or methods of representing data within the structure |
|
of the KBS |
Managerial |
Having good time management and delegation skills to help ensure |
|
that the data is recorded on time and within budget |
|
|
18 |
An Introduction to Knowledge Engineering |
SECTION 3: AN INTRODUCTION TO
KNOWLEDGE-BASED SYSTEMS
Introduction
This section introduces some of the software systems used in knowledge engineering and shows how they work compared to human processing.
Objectives
By the end of the section you will be able to:
explain the difference between knowledge engineering and artificial intelligence
define knowledge-based systems (KBSs)
explain what a KBS can do
explain the differences between human and computer processing
provide a brief definition of expert systems, neural networks, case-based reasoning, genetic algorithms, intelligent agents, data mining and intelligent tutoring systems
What Is the Difference Between Knowledge Engineering
and Artificial Intelligence?
To try and provide a simple answer to this question, consider each of the following life forms:
Plants
Fish
Chimpanzees
Humans
Now, do the plant and animals in the example above exhibit evidence of intelligence?
An Introduction to Knowledge Engineering |
19 |
Activity 9
We have noted that a knowledge engineer must be able to capture the behavioural skills or knowledge of experts and code these into some KBS. If you were a knowledge engineer, what particular behavioural skills or knowledge, in generic terms, would you expect to find in the objects listed below?
If you picture the four objects listed below, this will help you see the different skills that are displayed by them. Think specifically of the movement (or lack of) for each object, as well as the communication skills that could be expected.
A plant
A fish
A chimpanzee
A human.
Feedback 9
The skills may include:
Aplant
Adapt in time and evolve—an individual plant has no skills but as a species they do.
Afish
Navigation
Visual recognition
Avoid danger.
Achimpanzee
Language/communication about concrete concepts
Use of basic tools
Simple problem solving
Mimic humans
Build mental models.
Ahuman
Language/communication about complex concepts
Learn from being told
Learn from the past experience
Identify cause and effect relationships
Teach
Solve complex problems
Design, plan and schedule
Create complex abstract models
Show initiative.
20 |
An Introduction to Knowledge Engineering |
While we may not consider fish to be intelligent, they do exhibit some complex characteristics that can be considered aspects of intelligence. They navigate around the world, and visually recognise other animals. They can also plan to avoid danger.
All these are all aspects of intelligence, and when applied to computer systems could not be implemented by traditional computing techniques.
Chimpanzees are clearly more intelligent than fish. They have the ability to use language. They use basic tools, sticks and stones. They can solve simple problems, mimic humans and have been shown to build mental models of their environment.
Finally, humans are clearly more intelligent again. They can:
learn by being told
learn from past examples and from experience
teach
solve complex problems, design, plan and schedule
create complex, abstract models of the universe.
Further, one common feature that fish, chimpanzees and humans share is that we are all unique individuals. Within the scope of our mental capacity we have individual choice and make our own decisions. This again is evidence of intelligence.
The application of artificial intelligence has tried to emulate all of these characteristics within computer systems. Knowledge engineers have the difficult job of attempting to build these characteristics into a computer program.
By using a range of techniques, including expert systems, neural networks, casebased reasoning, genetic algorithms, intelligent agents and data mining, we can get computer systems to emulate some aspects of intelligent behaviour such as:
making decisions, diagnosing, scheduling and planning using expert systems or neural networks
evolving solutions to very complex problems using genetic algorithms
learning from a single previous example, where this is particularly relevant and using it to solve a current problem using case-based reasoning
recognising hand writing or understanding sensory data—simulated by artificial neural networks
identifying cause and effect relationships using data mining
free will, i.e., the ability to take independent actions—simulated by intelligent agents.
For example, legal systems can suggest suitable fines based on past examples using case-based reasoning—a type of KBS you will encounter later in more detail.
An Introduction to Knowledge Engineering |
21 |
Programs can also process human language including grammar checking, summarisation and translation—all of which use natural language processing techniques (not covered in this book).
Artificial intelligence aims to endow computers with human abilities. Often this involves research into new and novel technologies that might not be immediately usable.
Knowledge engineering, on the other hand, is the practical application of those aspects of artificial intelligence that are well understood to real commercial business problems such as recognising signatures to detect potential fraud.
What Are KBSs?
Knowledge-based systems are computer programs that are designed to emulate the work of experts in specific areas of knowledge.
It is these systems that provide the main focus of this book.
There are seven main types of KBS:
1.Expert systems. Expert systems model the higher order cognitive functions of the brain. They can be used to mimic the decision-making process of human experts. Typical example applications include planning, scheduling and diagnostics systems.
Expert systems are normally used to model the human decision-making process. Although expert systems contain algorithms, many of those algorithms tend to be static, that is they do not change over time. While this provides some certainty in how the system will operate, it does mean that the expert system is not designed to learn from experience.
It is worth mentioning that expert systems are very often spoken of as synonymous with KBSs. However, expert systems are simply a category of KBS.
2.Neural networks. Neural networks, on the other hand, model the brain at a biological level. Just as the brain is adept at pattern recognition tasks, such as vision and speech recognition, so are neural network systems. They can learn to read, can recognise patterns from experience and can be used to predict future trends, e.g. in the demand for electricity.
3.Case-based reasoning. Case-based reasoning systems model the human ability to reason via analogy. Typical applications include legal cases, where the knowledge of the law is not just contained in written documents, but in a knowledge base of how this has been applied by the courts in actual situations.
4.Genetic algorithms. A genetic algorithm is a method of evolving solutions to complex problems. For example, such a method could be used to find one of many good solutions to the problem of scheduling examinations (rooms,
22 |
An Introduction to Knowledge Engineering |
students, invigilators and possibly even equipment) from the millions of possible solutions.
The term ‘genetic’ refers to the behaviour of algorithms. In this situation, the behaviour is very similar to biological processes involved in evolution.
5.Intelligent agents. An intelligent agent is, normally, a software program where its goal or overall task is specified but where the software can make some decisions on its own
Most agents work in the background (that is they are not seen by the user) and only appear to report their findings. They may work over the Internet looking for important information where the user simply does not have time to sift through all the reports presented to him or her.
Agents often have the ability to learn and make increasingly complex decisions on behalf of their users. The simplest agents simply retrieve information while the most complex learn and use deductive reasoning to make decisions.
6.Data mining. Data mining is a term used to describe knowledge discovery by identifying previously unknown relationships in data. Alternative terms for mining include knowledge extraction, data archaeology, data dredging and data harvesting.
The technique relates to the idea that large databases contain a lot of data, with many links within that data not necessarily becoming evident until the database is analysed thoroughly. One of the classic examples of data mining concerns the analysis of sales within supermarkets. Data mining techniques could potentially identify products often purchased at the same time such as nuts and crisps. By placing these items next to each other on the supermarket shelf the sales of both products can be increased as they can now be found easily.
Data mining is used in many different areas of business, including marketing, banking, retailing and manufacturing. The main aim of data mining in these situations is to uncover previously hidden relationships and then use this information to provide some competitive advantage for the organisation.
7.Intelligent tutoring systems. The interest in computer-based instructional environments increases with the demand for high-quality education at a low cost. Meanwhile, computers become cheaper, more powerful and more user-friendly. An environment that responds in a sophisticated fashion to adapt its teaching strategy to the specific learning style of a given student/user is highly attractive. For a tutoring system to be intelligent, it must be able to react (teach) continuously according to a student’s learning. Most tutoring systems try to use a single teaching method but with various levels of explanations/examples/disclosure of domain materials to react to different student’s learning. However, a teacher in practice will use more than one teaching method in teaching a subject according to the type of domain knowledge. In order to be intelligent and effective in teaching, a tutoring system must be able to provide multiple teaching methods. An example is available at: http://www.pitt.edu/ vanlehn/andes.html.