AI – CS364 Knowledge Engineering 07 th November 2006 Dr Bogdan L. Vrusias

Slides:



Advertisements
Similar presentations
Testing Relational Database
Advertisements

Approaches, Tools, and Applications Islam A. El-Shaarawy Shoubra Faculty of Eng.
FUNCTION FITTING Student’s name: Ruba Eyal Salman Supervisor:
FT228/4 Knowledge Based Decision Support Systems Knowledge Engineering Ref: Artificial Intelligence A Guide to Intelligent Systems, Michael Negnevitsky.
CHAPTER 13 Inference Techniques. Reasoning in Artificial Intelligence n Knowledge must be processed (reasoned with) n Computer program accesses knowledge.
Rulebase Expert System and Uncertainty. Rule-based ES Rules as a knowledge representation technique Type of rules :- relation, recommendation, directive,
AI TECHNIQUES Fuzzy Logic (Fuzzy System). Fuzzy Logic : An Idea.
Rule Based Systems Michael J. Watts
Modeling Human Reasoning About Meta-Information Presented By: Scott Langevin Jingsong Wang.
AI – CS364 Uncertainty Management Introduction to Uncertainty Management 21 st September 2006 Dr Bogdan L. Vrusias
AI – CS364 Uncertainty Management 26 th September 2006 Dr Bogdan L. Vrusias
Computer Intelligence and Soft Computing
Chapter 11 Artificial Intelligence and Expert Systems.
1 Chapter 9 Rules and Expert Systems. 2 Chapter 9 Contents (1) l Rules for Knowledge Representation l Rule Based Production Systems l Forward Chaining.
© C. Kemke1Reasoning - Introduction COMP 4200: Expert Systems Dr. Christel Kemke Department of Computer Science University of Manitoba.
AI – CS364 Hybrid Intelligent Systems Overview of Hybrid Intelligent Systems 07 th November 2005 Dr Bogdan L. Vrusias
Knowledge Acquisition CIS 479/579 Bruce R. Maxim UM-Dearborn.
Specialized Business Information Systems Chapter 11.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter Chapter 7: Expert Systems and Artificial Intelligence Decision Support.
EXPERT SYSTEMS Part I.
MSIS 110: Introduction to Computers; Instructor: S. Mathiyalakan1 Specialized Business Information Systems Chapter 11.
Building Knowledge-Driven DSS and Mining Data
McGraw-Hill/Irwin ©2005 The McGraw-Hill Companies, All rights reserved ©2005 The McGraw-Hill Companies, All rights reserved McGraw-Hill/Irwin.
Sepandar Sepehr McMaster University November 2008
Artificial Intelligence (AI) Addition to the lecture 11.
CHAPTER 12 ADVANCED INTELLIGENT SYSTEMS © 2005 Prentice Hall, Decision Support Systems and Intelligent Systems, 7th Edition, Turban, Aronson, and Liang.
Enabling Organization-Decision Making
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
0AI-based Information Technology  Information Technology Based on AI ● What is Artificial Intelligence? ● Artificial Intelligence vs. Natural Intelligence.
Chapter 14: Artificial Intelligence Invitation to Computer Science, C++ Version, Third Edition.
A Simple Method to Extract Fuzzy Rules by Measure of Fuzziness Jieh-Ren Chang Nai-Jian Wang.
B. Ross Cosc 4f79 1 Commercial tools Size of system: –small systems 400 rules single user, PC based –larger systems narrow, problem-type specific or hybrid.
Knowledge representation
11 C H A P T E R Artificial Intelligence and Expert Systems.
© Negnevitsky, Pearson Education, Will neural network work for my problem? Will neural network work for my problem? Character recognition neural.
10/6/2015 1Intelligent Systems and Soft Computing Lecture 0 What is Soft Computing.
Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved. Decision Support Systems Chapter 10.
School of Computer Science and Technology, Tianjin University
Artificial Intelligence Techniques Multilayer Perceptrons.
Principles of Information Systems, Sixth Edition Specialized Business Information Systems Chapter 11.
CS62S: Expert Systems Requirements Specification and Design Based on Chap. 12: The Engineering of Knowledge-based Systems: Theory and Practice, A. J. Gonzalez.
I Robot.
Overview Of Expert System Tools Expert System Tools : are all designed to support prototyping. Prototype : is a working model that is functionally equivalent.
Soft Computing Lecture 19 Part 2 Hybrid Intelligent Systems.
Uncertainty Management in Rule-based Expert Systems
Generic Tasks by Ihab M. Amer Graduate Student Computer Science Dept. AUC, Cairo, Egypt.
Chapter 4 Decision Support System & Artificial Intelligence.
Fundamentals of Information Systems, Third Edition1 The Knowledge Base Stores all relevant information, data, rules, cases, and relationships used by the.
Artificial Intelligence, Expert Systems, and Neural Networks Group 10 Cameron Kinard Leaundre Zeno Heath Carley Megan Wiedmaier.
International Conference on Fuzzy Systems and Knowledge Discovery, p.p ,July 2011.
Team Members Ming-Chun Chang Lungisa Matshoba Steven Preston Supervisors Dr James Gain Dr Patrick Marais.
Finite State Machines (FSM) OR Finite State Automation (FSA) - are models of the behaviors of a system or a complex object, with a limited number of defined.
RULES Patty Nordstrom Hien Nguyen. "Cognitive Skills are Realized by Production Rules"
Artificial Intelligence: Research and Collaborative Possibilities a presentation by: Dr. Ernest L. McDuffie, Assistant Professor Department of Computer.
Artificial Intelligence
ITEC 1010 Information and Organizations Chapter V Expert Systems.
Artificial Intelligence, simulation and modelling.
Artificial Intelligence – CS364 Knowledge Engineering Lectures on Artificial Intelligence – CS364 Knowledge Engineering 08 th November 2005 Dr Bogdan L.
 Knowledge Acquisition  Machine Learning. The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Network Management Lecture 13. MACHINE LEARNING TECHNIQUES 2 Dr. Atiq Ahmed Université de Balouchistan.
Business Intelligence and Decision Support Systems (9 th Ed., Prentice Hall) Chapter 6: Artificial Neural Networks for Data Mining.
Knowledge Engineering
CHAPTER 1 Introduction BIC 3337 EXPERT SYSTEM.
DSS & Warehousing Systems
Architecture Components
Introduction Artificial Intelligent.
Intelligent Systems and
CHAPTER I. of EVOLUTIONARY ROBOTICS Stefano Nolfi and Dario Floreano
28th September 2005 Dr Bogdan L. Vrusias
This presentation was developed by Dr. Steven C
Presentation transcript:

AI – CS364 Knowledge Engineering 07 th November 2006 Dr Bogdan L. Vrusias

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Contents Definitions Basic Process of Knowledge Engineering Case Studies

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Definition Davis’ law: “For every tool there is a task perfectly suited to it”. But… It would be too optimistic to assume that for every task there is a tool perfectly suited to it. The process of building intelligent knowledge-based systems is called knowledge engineering.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Process of Knowledge Engineering

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Phase 1: 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.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Phase 1: Problem assessment

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Phase 2: Data and Knowledge Acquisition Collect and analyse data and knowledge. Make key concepts of the system design more explicit. Deal with issue of: –Incompatible data –Inconsistent data –Missing data

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Phase 3: Development of a Prototype System Choose a tool for building an intelligent system. Transform data and represent knowledge. Design and implement a prototype system. Test the prototype with test cases.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © What is a prototype? A prototype system is defined as a small version of the final system. It is designed 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. It also provides us with an opportunity to persuade the sceptics and, in many cases, to actively engage the domain expert in the system’s development.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © What is a test case? A test case is a problem successfully solved in the past for which input data and an output solution are known. During testing, the system is presented with the same input data and its solution is compared with the original solution.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Phase 4: Development of a Complete System Prepare a detailed design for a full-scale system. Collect additional data and knowledge. Develop the user interface. Implement the complete system.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Phase 5: Evaluation and Revision of the System Evaluate the system against the performance criteria. Revise the system as necessary. To evaluate an intelligent system is, in fact, to assure that the system performs the intended task to the user’s satisfaction. A formal evaluation of the system is normally accomplished with the test cases. The system’s performance is compared against the performance criteria that were agreed upon at the end of the prototyping phase.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Phase 6:Integration and Maintenance Make arrangements for technology transfer. Establish an effective maintenance program.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Will an Expert System Work for my Problem? The Phone Call Rule: “Any problem that can be solved by your in-house expert in a minute phone call can be developed as an expert system”.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case Study 1: Diagnostic Expert System Diagnostic expert systems are relatively easy to develop: Most diagnostic problems have a finite list of possible solutions, Involve a rather limited amount of well-formalised knowledge, and Often take a human expert a short time (say, an hour) to solve.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case Study 1: Diagnostic Expert System

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Choosing an Expert System Development Tool Tools range from high-level programming languages such as LISP, PROLOG, OPS, C and Java, to expert system shells. High-level programming languages offer a greater flexibility, but they require high-level programming skills. Shells provide us with the built-in inference engine, explanation facilities and the user interface. We do not need any programming skills to use a shell – we enter rules in English in the shell’s knowledge base.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Choosing an Expert System Shell When selecting an expert system shell, we consider: –how the shell represents knowledge (rules or frames); –what inference mechanism it uses (forward or backward chaining); –whether the shell supports inexact reasoning and if so what technique it uses (Bayesian reasoning, certainty factors or fuzzy logic); –whether the shell has an “open” architecture allowing access to external data files and programs; –how the user will interact with the expert system (graphical user interface, hypertext).

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 2: Classification Expert System Classification problems can be handled well by both expert systems and neural networks. As an example, we will build an expert system to identify different classes of sail boats. We start with collecting some information about mast structures and sail plans of different sailing vessels. Each boat can be uniquely identified by its sail plans.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 2: Classification Expert System

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 2: Classification Expert System

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Classification and Certainty Factors Although solving real-world classification problems often involves inexact and incomplete data, we still can use the expert system approach. However, we need to deal with uncertainties. The certainty factors theory can manage incrementally acquired evidence, as well as information with different degrees of belief.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Classification and Certainty Factors

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Will a Fuzzy Expert System Work for my Problem? If you cannot define a set of exact rules for each possible situation, then use fuzzy logic. While certainty factors and Bayesian probabilities are concerned with the imprecision associated with the outcome of a well-defined event, fuzzy logic concentrates on the imprecision of the event itself. Inherently imprecise properties of the problem make it a good candidate for fuzzy technology.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 3: Decision-support Fuzzy Systems Although, most fuzzy technology applications are still reported in control and engineering, an even larger potential exists in business and finance. Decisions in these areas are often based on human intuition, common sense and experience, rather than on the availability and precision of data. Fuzzy technology provides us with a means of coping with the “soft criteria” and “fuzzy data” that are often used in business and finance.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 3: Decision-support Fuzzy Systems Mortgage application assessment is a typical problem to which decision-support fuzzy systems can be successfully applied. Assessment of a mortgage application is normally based on evaluating the market value and location of the house, the applicant’s assets and income, and the repayment plan, which is decided by the applicant’s income and bank’s interest charges.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 3: Decision-support Fuzzy Systems

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Will a Neural Network Work for my Problem? Neural networks represent a class of very powerful, general-purpose tools that have been successfully applied to prediction, classification and clustering problems. They are used in a variety of areas, from speech and character recognition to detecting fraudulent transactions, from medical diagnosis of heart attacks to process control and robotics, from predicting foreign exchange rates to detecting and identifying radar targets.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 4: Character Recognition Neural Networks Recognition of both printed and handwritten characters is a typical domain where neural networks have been successfully applied. Optical character recognition systems were among the first commercial applications of neural networks. A multilayer feedforward network could work well for the for a character recognition system. For simplicity, we can limit our task to the recognition of digits from 0 to 9. Each digit is represented by a 5 x 9 bit map. In commercial applications, where a better resolution is required, at least 16 x 16 bit maps are used.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 4: Character Recognition Neural Networks

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © How do we choose the architecture of a neural network? The number of neurons in the input layer is decided by the number of pixels in the bit map. The bit map in our example consists of 45 pixels, and thus we need 45 input neurons. The output layer has 10 neurons – one neuron for each digit to be recognised. Complex patterns cannot be detected by a small number of hidden neurons; however too many of them can dramatically increase the computational burden. Another problem is overfitting. The greater the number of hidden neurons, the greater the ability of the network to recognise existing patterns. However, if the number of hidden neurons is too big, the network might simply memorise all training examples.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Character Recognition Neural Network

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Testing the character recognition system A test set has to be strictly independent from the training examples. To test the character recognition network, we present it with examples that include “noise” – the distortion of the input patterns. We evaluate the performance of the printed digit recognition networks with 1000 test examples (100 for each digit to be recognised).

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Can we improve the performance of the character recognition neural network? A neural network is as good as the examples used to train it. Therefore, we can attempt to improve digit recognition by feeding the network with “noisy” examples of digits from 0 to 9.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 5: Prediction Neural Networks As an example, we consider a problem of predicting the market value of a given house based on the knowledge of the sales prices of similar houses. In this problem, the inputs (the house location, living area, number of bedrooms, number of bathrooms, land size, type of heating system, etc.) are well-defined, and even standardised for sharing the housing market information between different real estate agencies. The output is also well-defined – we know what we are trying to predict. The features of recently sold houses and their sales prices are examples, which we use for training the neural network.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 5: Prediction Neural Networks

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Validating the Results To validate results, we use a set of examples never seen by the network. Before training, all the available data are randomly divided into a training set and a test set. Once the training phase is complete, the network’s ability to generalise is tested against examples of the test set.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 6: Classification Neural Networks with Competitive Learning As an example, we will consider an iris plant classification problem. Suppose, we are given a data set with several variables but we have no idea how to separate it into different classes because we cannot find any unique or distinctive features in the data.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 6: Classification Neural Networks with Competitive Learning Neural networks can discover significant features in input patterns and learn how to separate input data into different classes. A neural network with competitive learning is a suitable tool to accomplish this task. The competitive learning rule enables a single-layer neural network to combine similar input data into groups or clusters. This process is called clustering. Each cluster is represented by a single output.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 6: Classification Neural Networks with Competitive Learning For this case study, we will use a data set of 150 elements that contains three classes of iris plants – setosa, versicolor and virginica. Each plant in the data set is represented by four variables: sepal length, sepal width, petal length and petal width. The sepal length ranges between 4.3 and 7.9 cm, sepal width between 2.0 and 4.4 cm, petal length between 1.0 and 6.9 cm, and petal width between 0.1 and 2.5 cm.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 6: Classification Neural Networks with Competitive Learning

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 6: Classification Neural Networks with Competitive Learning The next step is to generate training and test sets from the available data. The 150-element Iris data is randomly divided into a training set of 100 elements and a test set of 50 elements. Now we can train the competitive neural network to divide input vectors into three classes.

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Case study 6: Classification Neural Networks with Competitive Learning

AI – CS364 Knowledge Engineering 07 th November 2006Bogdan L. Vrusias © Closing Questions??? Remarks??? Comments!!! Evaluation!