EVA An Expert System for Vases of the Antiquity Martina Trognitz Deutsches Arch¨ aologisches Institut, Berlin 22 October 2013 M. Trognitz (DAI) EVA 1 / 31
Jan 15, 2015
EVAAn Expert System for Vases of the Antiquity
Martina TrognitzDeutsches Archaologisches Institut, Berlin
22 October 2013
M. Trognitz (DAI) EVA 1 / 31
What is EVA?
EVA is an expert system for computer aided classification and dating ofceramics. It represents the application of natural language processingmethods for an archaeological problem.
It was the subject of my master thesis at the University of Heidelberg, inthe department of Computational Linguistics.
M. Trognitz (DAI) EVA 2 / 31
Outline
1 Motivation
2 The problem
3 What is an expert system?
How it worksProperties
4 Implementation
Before implementationSystem architectureThe knowledge baseDescription texts
5 Discussion
M. Trognitz (DAI) EVA 3 / 31
Motivation
Motivation
Combination of computational linguistics and archaeology
Fill the gap between the number of human experts and amount ofunclassified ceramic
EVA could provide a second opinion and be used as a learning tool
M. Trognitz (DAI) EVA 4 / 31
The problem
Outline
1 Motivation
2 The problem
3 What is an expert system?
How it worksProperties
4 Implementation
Before implementationSystem architectureThe knowledge baseDescription texts
5 Discussion
M. Trognitz (DAI) EVA 5 / 31
The problem
The problem
Ceramic is a common find at excavations.
Form and decoration depend on various factors and change in thecourse of time:
cultural environmentsourcetaste and fashiontechnical achievements
Hence ceramic is used to date archeological find deposits. It serves asa type fossil.
M. Trognitz (DAI) EVA 6 / 31
The problem
Problem
An ancient Greek vase is a difficult object for the non-expert to come to
terms with. Faced with rows of apparently undifferentiated black, red and
buff pots, he or she is at a loss as to where to begin.
Tom Rasmussen & Nigel Spivey
M. Trognitz (DAI) EVA 7 / 31
The problem
Problem
An ancient Greek vase is a difficult object for the non-expert to come to
terms with. Faced with rows of apparently undifferentiated black, red and
buff pots, he or she is at a loss as to where to begin.
Tom Rasmussen & Nigel Spivey
Solution
Store the knowledge of an expert into an expert system to classify anddate ceramic.
M. Trognitz (DAI) EVA 7 / 31
What is an expert system?
Outline
1 Motivation
2 The problem
3 What is an expert system?
How it worksProperties
4 Implementation
Before implementationSystem architectureThe knowledge baseDescription texts
5 Discussion
M. Trognitz (DAI) EVA 8 / 31
What is an expert system?
What is an expert system?
It is a program capable of solvingproblems similarly as human expertswould do.
It uses knowledge and inferencemethods to solve problems.
It can solve complex problemsnormally requiring enourmous humanexpertise.
Edward Feigenbaum“Father of expert systems”
M. Trognitz (DAI) EVA 9 / 31
What is an expert system?
Special subject of artificial intelligence
Early systems were developed in the sixties (DENDRAL)
They are used comercially since the eighties
Can be used in a wide range of subjects (MYCIN, PROSPECTOR,XCON/R1)
M. Trognitz (DAI) EVA 10 / 31
What is an expert system?
Special subject of artificial intelligence
Early systems were developed in the sixties (DENDRAL)
They are used comercially since the eighties
Can be used in a wide range of subjects (MYCIN, PROSPECTOR,XCON/R1)
Remark
An expert system only works well in a well-defined special field, theknowledge domain.
M. Trognitz (DAI) EVA 10 / 31
What is an expert system? How it works
How it works
user
expert system
knowledge base
inference engine
facts & informations
expertise
user interface
M. Trognitz (DAI) EVA 11 / 31
What is an expert system? How it works
Functionality of the inference engine
inference engine
deductions
facts
working memory
knowledge base
agenda
M. Trognitz (DAI) EVA 12 / 31
What is an expert system? Properties
Properties of expert systems
high perfomance, results compete with those of human experts
proper response time
robust
understandable
flexible
M. Trognitz (DAI) EVA 13 / 31
What is an expert system? Properties
Properties of expert systems
high perfomance, results compete with those of human experts
proper response time
robust
understandable
flexible
Remark
The knowledge is explicitly disconnected from the processig part of theprogram.
M. Trognitz (DAI) EVA 13 / 31
Implementation
Outline
1 Motivation
2 The problem
3 What is an expert system?
How it worksProperties
4 Implementation
Before implementationSystem architectureThe knowledge baseDescription texts
5 Discussion
M. Trognitz (DAI) EVA 14 / 31
Implementation Before implementation
Before implementation
Size of knowledge domain?
“Ancient vases” is reduced to:attic protogeometric and geometric
Knowledge base?
sort of a rule-based systembased on a decision tree
Inference engine and knowledge base depend on each other
The system is implemented with Python
M. Trognitz (DAI) EVA 15 / 31
Implementation System architecture
System architecture
user
expert system
knowledge base
inference engine
questions
desriptions
processing
results
classification
& dating
AB
M. Trognitz (DAI) EVA 16 / 31
Implementation The knowledge base
The knowledge base
The knowledge base is the heart of the system
A restricted, well-defined knowledge domain is mapped to aknowledge base
The knowledge representation depends on:
area of applicationscopesource of knowledgefunctionality of the inference engine
A knowledge engineer transfers the knowledge from an expert to theknowledge base of the expert system.
M. Trognitz (DAI) EVA 17 / 31
Implementation The knowledge base
Why a decision tree?
A specific vase can be described with a specific set of characteristics.
EG I:
figured:no; shape:amphora; handlePosition:neck; handleForm:band;body:ovoid; motifs:band of slanting lines
MG II:
figured:no; shape:amphora; handlePosition:neck; handleForm:band;body:ovoid; motifs:hatched meander, zigzag, dogtooth
IF a specific set of characteristics is given THEN you get a specificvase.
M. Trognitz (DAI) EVA 18 / 31
Implementation The knowledge base
Decision tree in EVA
start
figured?
no
shape?
yes
LG!
amphora
handlePostion?
oinochoe
...
...
...
neck
...
shoulder
...
belly
...
M. Trognitz (DAI) EVA 19 / 31
Implementation The knowledge base
tree.py
The decision tree is built in the module tree.py
Each node in the tree consists of a value, a question related to thevalue, a link to the parent node and a list of child nodes.
no
shape?
yes
LG!
amphora
handlePostion?
oinochoe
...
...
...
M. Trognitz (DAI) EVA 20 / 31
Implementation The knowledge base
Knowledge base details
The knowledge base is stored in a separate text file
root - figured? : yes - LG!
root - figured? : no - shape? : amphora - handlePosition? : neck - ...
root - figured? : no - shape? : amphora - handlePosition? : shoulder -
The full question that is displayed to the user is stored indictionaries.py
M. Trognitz (DAI) EVA 21 / 31
Implementation Description texts
Description texts
user
expert system
knowledge base
inference engine
questions
descriptions
processing
result
classification
& dating
AB
M. Trognitz (DAI) EVA 22 / 31
Implementation Description texts
Description texts
user
expert system
knowledge base
inference engine
questions
descriptions
processing
result
classification
& dating
AB
M. Trognitz (DAI) EVA 22 / 31
Implementation Description texts
This is a small oinochoe. The handle isoutlined and has a wavy line. The rim isdecorated with three horizontal lines. Onthe neck a horizontal row of dots, ahorizontal panel with a lozenge chain andanother row of dots can be seen. Theshoulder is decorated with a dotted snakeand some sparse dots. On the belly arelinked dots. All ornaments are interspersedby encircling bands. The lower part of thevase is covered by a thin layer of clay.
CVA Oxford 4 (GB, 24) p.12, plate 30 1-3
M. Trognitz (DAI) EVA 23 / 31
Implementation Description texts
This is a small oinochoe. The handle isoutlined and has a wavy line. The rim isdecorated with three horizontal lines. Onthe neck a horizontal row of dots, ahorizontal panel with a lozenge chain andanother row of dots can be seen. Theshoulder is decorated with a dotted snakeand some sparse dots. On the belly arelinked dots. All ornaments are interspersedby encircling bands. The lower part of thevase is covered by a thin layer of clay.
CVA Oxford 4 (GB, 24) p.12, plate 30 1-3
M. Trognitz (DAI) EVA 23 / 31
Implementation Description texts
Some aspects of natural language texts
The form and structure of the texts depend on:
personal stylelanguage skillsknowledge of the subject
Some informations may be missing
M. Trognitz (DAI) EVA 24 / 31
Implementation Description texts
Information extraction
Question
At which part of the body are the handles attached?
M. Trognitz (DAI) EVA 25 / 31
Implementation Description texts
Information extraction
Question
At which part of the body are the handles attached?
Possible answers
This neck-handled amphora has a thick barred rim.The handles of this amphora are attached to the neck.This is a neck-handled amphora with a thick barred rim.This amphora has a thick barred rim. The handles are on the neck.
M. Trognitz (DAI) EVA 25 / 31
Implementation Description texts
Information extraction
Question
At which part of the body are the handles attached?
Possible answers
This neck-handled amphora has a thick barred rim.The handles of this amphora are attached to the neck.This is a neck-handled amphora with a thick barred rim.This amphora has a thick barred rim. The handles are on the neck.
Possible patterns to look for
... 〈string〉-handled ...
... handles 〈verbal phrase with on/to〉 ... 〈string〉
M. Trognitz (DAI) EVA 25 / 31
Implementation Description texts
Processing of texts
1: Parsing
Stanford Parser (Klein – Manning 2003)
2: Go through decision tree
Questions are answered automatically with the given text (information
extraction)It is done by searching for specific patterns
M. Trognitz (DAI) EVA 26 / 31
Implementation Description texts
Demonstration of EVA
The main module ist called core.py
core.py builds the decision tree with tree.py and a knowledge basestored in a text file
In dictionaries.py the user friendly questions and answers are stored.
The patterns for information extraction are also stored indictionaries.py
M. Trognitz (DAI) EVA 27 / 31
Implementation Description texts
Demonstration of EVA
The main module ist called core.py
core.py builds the decision tree with tree.py and a knowledge basestored in a text file
In dictionaries.py the user friendly questions and answers are stored.
The patterns for information extraction are also stored indictionaries.py
EVA is in an experimental status.
M. Trognitz (DAI) EVA 27 / 31
Discussion
Outline
1 Motivation
2 The problem
3 What is an expert system?
How it worksProperties
4 Implementation
Before implementationSystem architectureThe knowledge baseDescription texts
5 Discussion
M. Trognitz (DAI) EVA 28 / 31
Discussion
Drawbacks
time-consuming
Knowledge base and patterns are handcraftet.
abstract
The program does not consider the actual vase (e.g. looks at images). Itonly relies on textual descriptions.
M. Trognitz (DAI) EVA 29 / 31
Discussion
Future work
GUI (with example images)
Use a certainty factor to weigh outcome
Expansion of knowledge base
more regions; earlier and later styles
Additional languages
Build knowledge base by means of machine learning
Include image recognition
M. Trognitz (DAI) EVA 30 / 31
Discussion
Discussion
Computer aided classification and dating of ceramics is possible.
What do you think?
M. Trognitz (DAI) EVA 31 / 31