Expert System and Machine-Learning Paradigms
Expert System and Machine-Learning Paradigms
Introduction
-- knowledge-based programs that offer expert value answers to the problems in particular
application domain
main components of expert system are
knowledge base and
navigational ability (inference engine)
Usually, its knowledge is extracted from human experts in the application domain by
knowledge Engineer
frequently based on valuable rules and experience instead of absolute certainties
1
Testing Phase
contains assessing the performance and utility of prototype systems and revising it if need be
domain expert evaluates the prototype system and his feedback help knowledge engineer to
revise
Knowledge Engineering
process of gathering knowledge from domain expert and codifying the same in line with the
formalism -- named knowledge engineering
knowledge engineer involves in the following
ensuring that the computer has all the knowledge required to solve a problem
choosing one or more forms to represent required knowledge
ensuring that the computer can use the knowledge by choosing some of the
reasoning approaches
2
Inference Engine
It consists of inference mechanism and control strategy
Inference is search through KB and derive new knowledge which contain formal reasoning
including matching and unification
similar to the one performed by human expert to solve problems in a specific area
of knowledge
Inference operates by using MP (Modus Ponen) rule
Control strategy determines the order in which rules are applied
generally, TWO kinds of control mechanism
forward chaining and
backward chaining
Knowledge Acquisition
It allows system to acquire knowledge about the problem domain
Sources of Knowledge for ES
text books, reports, case studies, empirical data and
domain expert experience.
Updating the Knowledge can be done thru knowledge
insertion, deletion and updation of existing knowledge
Case History
Case history- stores the file created by inference engine using the dynamic db generated at
the time of consultation
beneficial for learning module to improve its knowledge base
dissimilar incidents with solutions that are stored in Case Base system (CBS)
incidents are used for resolving problem thru Case Base Reasoning (CBR)
User Interfaces
Allows user to speak with system in interactive mode and assists system to create working
knowledge for the problem to be solved
Explanation module
Most expert systems have clarification services and allow the user to ask queries
why it asked some query, and how it reached to conclusion
it encompasses How and Why modules attached to it
3
sub-module How communicates the user about the procedure thro which system has
arrived to a specific solution
sub-module Why communicates that reason for proposing specific solution
it explains user about the reasoning behind any specific solution
Queries are answered by referring to
the system goals, the rules being used, and any present problem data
Special Interfaces
-- may be used for specialized events such as managing ambiguity in knowledge.
It is a major area of expert systems investigation that consist of approaches for reasoning with
ambiguous data and uncertain knowledge
To deal with uncertain knowledge, a rule may have linked with it
a confidence factor or a weight
4
Characteristics of Expert Systems
Expertise
ES exhibit expert performance, have high level skills and has acceptable robustness
-- leads to cost effective
Symbolic Reasoning
Knowledge is represented symbolically which can be easily reformulated and reasoned
Self-Knowledge
System should be able to explain and examine its own reasoning
Learning Capability
learns from mistakes and mature as it grows
Ability to provide training
able and efficient of provide training by means of describing reasoning process
Predictive modelling power
acts as information processing model of problem solving
describes a new situation led to change
Therefore, users understands the effect of new facts and their relationships
Evaluation of Expert Systems
Does the system make decisions the experts agree to?
Are the inference rules correct and complete?
Does the control strategy allow the system to consider items in the natural order that the
expert prefers?
Are relevant questions asked to the user in proper order?
Is explanation adequate for explaining how and why conclusions?
Utility Evaluation
Does the system help the user in some significant way?
Are the conclusions of the system organized and ordered in a meaningful way?
Is the system fast enough to satisfy the user?
Is the user interface adequate?
Advantages and Disadvantages of Expert Systems
Advantages
assists in maintaining unusual expertise
provides consistent answers for repetitive decisions, processes and tasks
can work faster than human expert work
holds and preserves important levels of info
provides better quality of decision making
domain experts -- not always capable to clarify their logic and reasoning unlike ES
leads major cost saving inside organizations
inspires organizations to explain the logic of their decision making
5
reasons introduction of new products
never overlooks to ask a question, unlike a human
Disadvantages
not able to make creative replies as human experts would
lacks common sense needed in decision making
may cause errors in the knowledge base and lead to incorrect decision making
cannot adapt to changing environment, unless knowledge is changed
Non-monotonic system
allows retraction of truths that are present in the system whenever contradictions come
So, number of axioms can both increase and decrease and depending upon the
changes in KB, it can be updated
TMS basically operates with two kinds of objects
Propositions declaring different beliefs and
Justifications related to individual propositions for backing up the belief or disbelief
expressed by the proposition
6
For every TMS, there are two kinds of justifications needed Support list and Conditional
proof
SL(IN-node) (OUT-node)
IN-node is list of all IN-nodes (propositions)
that support the considered node as true
IN means that the belief is true
OUT-node is list of all OUT nodes for the considered node to be true
OUT means that belief is not true
Applications of Expert System
The purpose of ES is to provide this knowledge to other members of the organization for
problem-solving purposes
7
Financial decision making
assist insurance companies to assess the risk presented by the customer to determine a
price for the insurance
e.g., foreign exchange trading
formulating financial strategies
giving advices, etc.
Process monitoring and control
Expert systems belonging to this class analyze real-time data from physical devices with the
goal by comparing observations to expected outcomes, predicting trends, and controlling
e.g., steel-making and oil-refining industries
nuclear reactor (to detect accident conditions)
patient monitoring system in hospitals etc.
Instruction
An ES can offer tutorials and instructions to students by incorporating a student's behaviour
and learning capability models and can also evaluate a student's acquired skills
Debugging
prescribe remedies for malfunctioning devices
e.g., suggest the type of maintenance needed to correct faulty equipment
help in debugging large computer programs to improve the performance, etc.
Knowledge Publishing
to deliver knowledge to user that is in context of the user's problem
e.g., advisors, which advice a user on appropriate grammatical usage in a text
a tax advisor that accompanies a tax preparation program
Other Miscellaneous Applications
a number of other applications where expert systems can be built
e.g., Fraud detection,
object identification and information retrieval system
Handling certain dangerous situations such as coal mining
Judicial systems to solve new cases intelligently using
past case history,
advising on legal issues, etc.
In defense
performing situation assessment from intelligence reports,
analyzing radar signals and images,
predicting when and where armed war will happen next,
simulation of war, etc.
Household activities such as
giving advice on cooking,
shopping, and so on are also potential applications
8
Machine-Learning Paradigms
Introduction
What is Learning?
The act, process, or experience of gaining knowledge or skill
Psychology -- Behavioral modification especially through experience or conditioning --
American Heritage Dictionary
adaptive changes in a sense that they enable the system to do the same task(s) drawn from the
same population with more efficiently when we repeat the same task(s) next time
- Simon & Schuster, 87
Agents can improve their performance through diligent study of their own experiences
- Russell & Norvig
Why Should Machines Learn?
Learning is essential for unknown environs
everything in the environment cannot be anticipated
designer lacks omniscience
Learning is an alternative to explicit design
expose the agent to reality rather than trying to tell it about reality
Generally, Two types of learning approaches followed
Inductive and Deductive
Inductive
needed rules and patterns are extracted from large data sets
Therefore, major focus of ML is extract info from data automatically by computational and
statistical approaches
Deductive
inferring new knowledge from existing
Machine-Learning Systems
ML algorithms – classified into Two categories
Supervised Learning
algorithm generates a function that maps i/ps to expected o/ps
Unsupervised Learning
all the i/p observations are given and no o/p observations are available
Learning Systems Components
Performance element
Learning element
Problem generator
Critic
Sensors and Effectors
9
Learning element
responsible for making improvements, it takes in percepts and decides on actions
problem generator
responsible for suggesting actions which lead to new and informative experiences
performance element
is responsible for selecting external actions
uses feedback from the critic on how the agent is doing and determines
Sensors and Effectors
are external to the system
system receive info from sensors, while the o/p is communicated thro effectors
consider the automated taxi example
performance element consists of collection of knowledge and procedures the taxi has
for selecting its driving actions
Assume, taxi goes out on the road and drives, using this performance element
critic observes the world and passes information along to the learning element
e.g., after the taxi makes a quick left turn across three lanes
the critic observes the shocking language used by other drivers
with this experience,
learning element is able to formulate a rule saying
this was a bad action, and the
performance element can be modified by new rule installation
problem generator -- identify certain areas of behavior in need of improvement and
suggest experiments,
for instance, trying out the brakes on different road surfaces under different
conditions
10
Learning Methods
Rote learning / learning by memorization
denotes to process of memorization
therefore, needs saving knowledge to utilize again when required
simple storage of computed information
highlights some related issues of added complex learning notions mentioned below
Organization: Knowledge must be stored -- accessing this stored knowledge is quicker
than restoring to re-computation
Generalization
Stability of environment
Learning by taking advice
following are two basic approaches to advice taking
Taking high-level and abstract advice and then converting it into rules
Developing sophisticated modules
In 1st method,
Every facet of advice taking – automated. following steps are needed in this method
Request -- be simple question enquiring about either general or complicate advice by
identifying shortcomings in the knowledge base and asking for a remedy
Interpret -- the advice is converted into an internal notation
Operationalize -- provides notation to use the transformed advice by performance
element, if the converted advice not in use
Integrate -- once knowledge added to the knowledge base, attention needs to be taken to
avoid the –ve effects, like redundancy and contradictions
Evaluate -- system must assess or access the new knowledge for errors, contradictions etc.,
Learning by Parameter Adjustment
In several programs, static assessment functions -- be used to decrease space and make
program to be intelligent and efficient
slight modification in formulating evaluation function may give rise to learning
to some extent
Such learning denotes learning by parameter adjustment
here, an evaluation function is represented as polynomial
Wj T i
Ti -- terms denoting values of features;
Wj -- weights of terms
The basic idea of parameter adjustment can be described as
Initially start with some estimate of the correct weight settings
then change the weight in the program on the basis of gathered experiences
Increase features weights that appear to be good predictors
decrease features weights that appear to be bad predictors
11
Supervised and Unsupervised Learnings
generally classified into Two types
Supervised and Unsupervised
In each learning approach,
basic goal is to learn an unknown function f(x) = y,
x is input example and y is expected output
main difference between supervised and unsupervised learning lies only in the causal
structure of the model
Supervised Learning
-- depicts the effect of one set of observations, termed i/ps, on another set of observations,
named o/ps
-- the user attempts -- the relation between Two given sets of observations
-- Here, purpose -- find function f that transforms given i/p x into o/p y
-- cannot be used to learn models with deep hierarchies, as the difficulty of the learning
task raises exponentially between the two sets
-- the causal relation between the i/p and o/p observations is simple
Unsupervised Learning
-- all i/p observations are given and no o/p observations -- available
-- enables users to learn larger and more complex models as compared to supervised
learning
-- the learning can proceed hierarchically from the observations
as each additional hierarchy needs to learn only one step, the learning time rises
roughly linearly in the number of levels in the model hierarchy
the causal relation between the i/p and o/p observations are complex compared to
supervised learning. Examples include clustering and discovery
Reinforcement Learning
-- decision-making system, also known as agent, receives feedback either +ve or –ve
-- takes place in an environment where the agent cannot directly compare the results of its
act on to anticipated result
Instead, it is given a +ve and –ve feedback directly based on its actions
-- may reason a system to win or lose a game, or inform a system that has made a good
move or a poor one
Primary task here is acquire a successful function using these feedback/rewards
The agent can learn basic types of info given as follows
Utility function
agent learns the utility of being in various states, and chooses movements so as to
maximize the expected utility of their outcomes
requires the agent to keep a model environment
Action-value function
The agent learns an action-value function giving the expected utility of performing an
action in a given state
12
Inductive Learning is process of learning where a system learns by example
i.e. it tries to induce a general rule from a set of observed instances
Most inductive learning is supervised learning, in which examples are provided by means of
categorizations
An alternative method to inductive learning is clustering
formally, an example is a pair (x, f(x))
x -- i/p and f(x) -- o/p of the function applied to x
Inductive Learning Framework
Frame can be constructed by pre-processing raw i/p data from sensors and attaining a
feature vector X
Each feature vector X is a list of (attribute, value) pairs
e.g., X = {(Person. Ram), (Eye_Colour, Brown), (Age, Young), (Sex, male)}
every feature is fixed number of attributes
each attribute is a fixed finite number of possible values
Deductive Learning
-- working on previously present facts and knowledge
merely deducing new knowledge from knowledge previously existing in the system
Thus. deductive learning or reasoning can be described as reasoning of the form if A then B
Probability-Based Learning (Bayesian Learning)
likelihoods of various hypotheses are estimated, and
predictions are made using posterior probabilities of the hypotheses to weigh them
Adaptive Dynamic Programming
is a kind of reinforcement learning method which works by solving utility eqns usin dynamic
programming algorithm.
Clustering
Clustering is considered to be the significant unsupervised inductive learning problem
it can be defined as a process in which data or objects are arranged into groups
all the group members are similar in some way
Therefore, a cluster may be defined as a collection of similar objects,
goal is to find out intrinsic grouping in a set of unlabeled data instances
clustering algorithm should possess the following important properties
find a structure in a collection of unlabeled data
must be scalable
should be able to deal with different types of attributes
must be able to discover clusters with arbitrary shape
must have minimal requirements for domain knowledge to determine input parameters
Should have the ability to deal with noise
must be insensitive to the order of input records
13
must have high dimensionality, interpretability, and usability
Clustering Algorithms may be categorized into the following categories
Exclusive clustering
objects are grouped in an exclusive way so that if a definite object belongs to a definite
cluster
then it cannot be added in any other cluster
Overlapping clustering
fuzzy sets -- used to cluster objects
so that each point may belong to two or more clusters with dissimilar degrees of
membership
object -- linked by a proper membership value
Hierarchical clustering is based on the union between two nearest clusters
14