1.2 Expert Systems
How rules-based systems can be used for binary classification

Human decision making
How do humans make decisions?
(c) One Fourth Labs



Dengue
headache
cold cough
vomiting




fever
skin rash

Human decision making
How do humans make decisions from past experiences?
(c) One Fourth Labs

fever
headache
cold cough
vomiting
Rash
Inputs
Output







Human decision making
How do humans make decisions from past experiences?
(c) One Fourth Labs

fever
headache
cold cough
vomiting
Rash
inputs
output







| 1 | 0 | 0 | 0 | 0 |
|---|---|---|---|---|
| 1 | 0 | 0 | 1 | 0 |
| 1 | 1 | 1 | 0 | 1 |
| 1 | 0 | 1 | 1 | 0 |
| 0 |
|---|
| 0 |
| 1 |
| 0 |
0
1
Human decision making
Is this applicable in multiple domains ?
(c) One Fourth Labs

LBW out
Impact
Height
no ball
shot attempted
Pitching in line
Inputs
Output






Human decision making
Is this applicable in multiple domains ?
(c) One Fourth Labs

LBW out
Impact
Height
no ball
shot attempted
Pitching in line
Inputs
Output






| 1 | 1 | 0 | 1 | 0 |
|---|---|---|---|---|
| 1 | 1 | 1 | 0 | 0 |
| 1 | 1 | 1 | 0 | 1 |
| 1 | 0 | 1 | 1 | 0 |
| 0 |
|---|
| 1 |
| 1 |
| 0 |
0
1
Features and Rules
What is the semantics of decision making?
(c) One Fourth Labs

Output
Inputs
headache
cold cough
vomiting




fever
skin rash



Fever
Rash
Cold
(c) One Fourth Labs

if HIGH_FEVER and COLD:
return no_dengue
elif HIGH_FEVER and VOMITING and not RASH:
return no_dengue
elif HIGH_FEVER and VOMITING and RASH:
return dengue
Output
Inputs


Fever
Rash
Cold
Expert Systems
How do we outsource this to a machine?

headache
cold cough
vomiting




fever
skin rash

Use-cases
Where have expert systems been used - past and recent applications
(c) One Fourth Labs

(1990)
(1990)
(1965)
(1995)
(2018)





Hanane et. al., Expert Systems, May 2018.

Limitations
Do we need to look beyond expert systems?
(c) One Fourth Labs

Task of hiring someone for a job
10th marks
12th marks
graduate
post graduate
projects
if 10th>90 and 12>90 and GRADUATE:
return hired
elif 10th>80 and 12th>80 and POST_GRADUATE:
return hired
elif 10th<70 and 12th<70:
return not_hired


10th
12th
graduate
Output
YES / NO
Inputs
Limitations
Do we need to look beyond expert systems?
(c) One Fourth Labs

Task of hiring someone for a job - involving many factors
10th marks
if 10th>90 and 12>90 and GRADUATE:
return hired
elif 10th>80 and 12th>80 and POST_GRADUATE:
return hired
elif 10th<70 and 12th<70:
return not_hired


10th
12th
graduate
12th marks
graduate
post graduate
projects
awards
.....
| 10th marks | 12th marks | graduate | post graduate | projects | ........... | awards |
|---|---|---|---|---|---|---|
| 92 | 82 | yes | yes | 3 | ........... | 2 |
| 83 | 75.2 | yes | no | 1 | ........... | 0 |
| 75 | 70 | no | no | 0 | ........... | 1 |
| 96 | 95 | yes | yes | 5 | ........... | 4 |
| 90 | 89 | yes | yes | 2 | ........... | 1 |
| 78 | 82 | yes | no | 0 | ........... | 0 |
| 86 | 88 | yes | no | 1 | ........... | 1 |
Lots of data to make sense from
Output
YES / NO
Limitations
Do we need to look beyond expert systems?

| 10th marks | 12th marks | graduate | post graduate | projects | ........... | awards |
|---|---|---|---|---|---|---|
| 92 | 82 | yes | yes | 3 | ........... | 2 |
| 83 | 75.2 | yes | no | 1 | ........... | 0 |
| 75 | 70 | no | no | 0 | ........... | 1 |
| 96 | 95 | yes | yes | 5 | ........... | 4 |
| 90 | 89 | yes | yes | 2 | ........... | 1 |
| 78 | 82 | yes | no | 0 | ........... | 0 |
| 86 | 88 | yes | no | 1 | ........... | 1 |
if 10th>90 and 12>90 and GRADUATE:
return hired
elif 10th>80 and 12th>80 and POST_GRADUATE:
return hired
elif 10th<70 and 12th<70:
return not_hired
elif awards>2 and GRADUATE:
return hired
elif not POST_GRADUATE and publications>1:
return hired
elif projects>10 and publications>2:
return hired
elif competitions>3 and publications>3:
return hired
elif awards>5:
return hired
elif GRADUATE and not POST_GRADUATE and awards>5:
return hired
The rules can be very complex

(c) One Fourth Labs

Limitations
Do we need to look beyond expert systems?
The rules can sometimes be unknown:
- task of predicting Ebola
Output

high fever
headache
sore throat
weakness
nausea
?
?
YES / NO
Inputs
(c) One Fourth Labs

Limitations
Do we need to look beyond expert systems?
(c) One Fourth Labs

The rules can be sometimes inexpressible
10th marks
12th marks
graduate
post graduate
projects


Output
YES / NO
Inputs
?
I saw
(c) One Fourth Labs

Say Hi to Machine Learning
How to move from writing rules to learning rules?
| 10th marks | 12th marks | graduate | post graduate | projects | ........... | awards | HIRED |
|---|---|---|---|---|---|---|---|
| 92 | 82 | yes | yes | 3 | ........... | 2 | yes |
| 83 | 75.2 | yes | no | 1 | ........... | 0 | yes |
| 75 | 70 | no | no | 0 | ........... | 1 | no |
| 96 | 95 | yes | yes | 5 | ........... | 4 | yes |
| 90 | 89 | yes | yes | 2 | ........... | 1 | yes |
| 78 | 82 | yes | no | 0 | ........... | 0 | no |
| 86 | 88 | yes | no | 1 | ........... | 1 | no |
def f(x):
if 10th>90 and 12>90 and GRADUATE:
return hired
elif 10th>80 and 12th>80 and POST_GRADUATE:
return hired
elif 10th<70 and 12th<70:
return not_hired


10th
12th
graduate
Output
YES / NO

def f(x):
i=0
max_epochs=100
w = rand()
while(i<max_epochs):
dw = grad(w,w*x)
w = w - lr*dx
i += 1
return w*x


Data, Democratization, Devices
Why has Machine Learning been so successful ?
(c) One Fourth Labs

In most applications we have limited intuition but infinite data
ML engines have been standardised and democratised
Show many gears and then say it is about matching a gear to your data ?
Different roles in the ML world
How this relates to you ?
(c) One Fourth Labs

Show the gears and data on LHS
Show a pyramid:
- Most problems about curating data
- Some problems about optimizing existing algorithms
- Research on new algorithms
Takeaway
How do we contrast expert systems from machine learning?
(c) One Fourth Labs

Expert systems are useful when we can specify rules - some use cases still exist
But primarily focus is on machine learning, where rules are discovered by learning from data
// show a collage of respective applications
// very few icons for expert systems
// many many icons for ML
Text
Copy of Copy of 1.2 Expert Systems
By suman banerjee
Copy of Copy of 1.2 Expert Systems
- 782