Sliding Window
Download
Report
Transcript Sliding Window
Information Extraction
from the
World Wide Web
CSE 454
Based on Slides by
William W. Cohen
Carnegie Mellon University
Andrew McCallum
University of Massachusetts Amherst
From KDD 2003
todo
•
•
•
•
•
Add explanation of top down rule learning
Add explanation of wrappers for BWI
Better example of HMM structure for cora DB
Fix slide 79
Review learning with complete info
Group Meetings
• Thursday ??
• Tuesday
Class Overview
Info Extraction
Self-Supervised
HMMs
Sliding Windows
Query processing
Indexing
IR - Ranking
Content Analysis
Crawling
Network Layer
Information Extraction
Example: The Problem
Martin Baker, a person
Genomics job
Employers job posting form
Slides from Cohen & McCallum
Example: A Solution
Slides from Cohen & McCallum
Extracting Job Openings from the Web
foodscience.com-Job2
JobTitle: Ice Cream Guru
Employer: foodscience.com
JobCategory: Travel/Hospitality
JobFunction: Food Services
JobLocation: Upper Midwest
Contact Phone: 800-488-2611
DateExtracted: January 8, 2001
Source: www.foodscience.com/jobs_midwest.htm
OtherCompanyJobs: foodscience.com-Job1
Slides from Cohen & McCallum
Slides from Cohen & McCallum
Category = Food Services
Keyword = Baker
Location = Continental U.S.
Job Openings:
What is “Information Extraction”
As a task:
Filling slots in a database from sub-segments of text.
October 14, 2002, 4:00 a.m. PT
For years, Microsoft Corporation CEO Bill
Gates railed against the economic philosophy
of open-source software with Orwellian fervor,
denouncing its communal licensing as a
"cancer" that stifled technological innovation.
Today, Microsoft claims to "love" the opensource concept, by which software code is
made public to encourage improvement and
development by outside programmers. Gates
himself says Microsoft will gladly disclose its
crown jewels--the coveted code behind the
Windows operating system--to select
customers.
NAME
TITLE
ORGANIZATION
"We can be open source. We love the concept
of shared source," said Bill Veghte, a
Microsoft VP. "That's a super-important shift
for us in terms of code access.“
Richard Stallman, founder of the Free
Software Foundation, countered saying…
Slides from Cohen & McCallum
What is “Information Extraction”
As a task:
Filling slots in a database from sub-segments of text.
October 14, 2002, 4:00 a.m. PT
For years, Microsoft Corporation CEO Bill
Gates railed against the economic philosophy
of open-source software with Orwellian fervor,
denouncing its communal licensing as a
"cancer" that stifled technological innovation.
Today, Microsoft claims to "love" the opensource concept, by which software code is
made public to encourage improvement and
development by outside programmers. Gates
himself says Microsoft will gladly disclose its
crown jewels--the coveted code behind the
Windows operating system--to select
customers.
IE
NAME
Bill Gates
Bill Veghte
Richard Stallman
TITLE
ORGANIZATION
CEO
Microsoft
VP
Microsoft
founder Free Soft..
"We can be open source. We love the concept
of shared source," said Bill Veghte, a
Microsoft VP. "That's a super-important shift
for us in terms of code access.“
Richard Stallman, founder of the Free
Software Foundation, countered saying…
Slides from Cohen & McCallum
What is “Information Extraction”
As a family
of techniques:
Information Extraction =
segmentation + classification + clustering + association
October 14, 2002, 4:00 a.m. PT
For years, Microsoft Corporation CEO Bill
Gates railed against the economic philosophy
of open-source software with Orwellian fervor,
denouncing its communal licensing as a
"cancer" that stifled technological innovation.
Today, Microsoft claims to "love" the opensource concept, by which software code is
made public to encourage improvement and
development by outside programmers. Gates
himself says Microsoft will gladly disclose its
crown jewels--the coveted code behind the
Windows operating system--to select
customers.
"We can be open source. We love the concept
of shared source," said Bill Veghte, a
Microsoft VP. "That's a super-important shift
for us in terms of code access.“
Microsoft Corporation
CEO
Bill Gates
Microsoft
Gates
Microsoft
Bill Veghte
Microsoft
VP
Richard Stallman
founder
Free Software Foundation
Richard Stallman, founder of the Free
Software Foundation, countered saying…
Slides from Cohen & McCallum
What is “Information Extraction”
As a family
of techniques:
Information Extraction =
segmentation + classification + association + clustering
October 14, 2002, 4:00 a.m. PT
For years, Microsoft Corporation CEO Bill
Gates railed against the economic philosophy
of open-source software with Orwellian fervor,
denouncing its communal licensing as a
"cancer" that stifled technological innovation.
Today, Microsoft claims to "love" the opensource concept, by which software code is
made public to encourage improvement and
development by outside programmers. Gates
himself says Microsoft will gladly disclose its
crown jewels--the coveted code behind the
Windows operating system--to select
customers.
"We can be open source. We love the concept
of shared source," said Bill Veghte, a
Microsoft VP. "That's a super-important shift
for us in terms of code access.“
Microsoft Corporation
CEO
Bill Gates
Microsoft
Gates
Microsoft
Bill Veghte
Microsoft
VP
Richard Stallman
founder
Free Software Foundation
Richard Stallman, founder of the Free
Software Foundation, countered saying…
Slides from Cohen & McCallum
What is “Information Extraction”
As a family
of techniques:
Information Extraction =
segmentation + classification + association + clustering
October 14, 2002, 4:00 a.m. PT
For years, Microsoft Corporation CEO Bill
Gates railed against the economic philosophy
of open-source software with Orwellian fervor,
denouncing its communal licensing as a
"cancer" that stifled technological innovation.
Today, Microsoft claims to "love" the opensource concept, by which software code is
made public to encourage improvement and
development by outside programmers. Gates
himself says Microsoft will gladly disclose its
crown jewels--the coveted code behind the
Windows operating system--to select
customers.
"We can be open source. We love the concept
of shared source," said Bill Veghte, a
Microsoft VP. "That's a super-important shift
for us in terms of code access.“
Microsoft Corporation
CEO
Bill Gates
Microsoft
Gates
Microsoft
Bill Veghte
Microsoft
VP
Richard Stallman
founder
Free Software Foundation
Richard Stallman, founder of the Free
Software Foundation, countered saying…
Slides from Cohen & McCallum
What is “Information Extraction”
As a family
of techniques:
Information Extraction =
segmentation + classification + association + clustering
October 14, 2002, 4:00 a.m. PT
For years, Microsoft Corporation CEO Bill
Gates railed against the economic philosophy
of open-source software with Orwellian fervor,
denouncing its communal licensing as a
"cancer" that stifled technological innovation.
Today, Microsoft claims to "love" the opensource concept, by which software code is
made public to encourage improvement and
development by outside programmers. Gates
himself says Microsoft will gladly disclose its
crown jewels--the coveted code behind the
Windows operating system--to select
customers.
"We can be open source. We love the concept
of shared source," said Bill Veghte, a
Microsoft VP. "That's a super-important shift
for us in terms of code access.“
* Microsoft Corporation
CEO
Bill Gates
* Microsoft
Gates
* Microsoft
Bill Veghte
* Microsoft
VP
Richard Stallman
founder
Free Software Foundation
Richard Stallman, founder of the Free
Software Foundation, countered saying…
Slides from Cohen & McCallum
IE in Context
Create ontology
Spider
Filter by relevance
Load DB
IE
Document
collection
Database
Query,
Search
Data mine
Train extraction models
Label training data
Slides from Cohen & McCallum
IE History
Pre-Web
• Mostly news articles
– De Jong’s FRUMP [1982]
• Hand-built system to fill Schank-style “scripts” from news wire
– Message Understanding Conference (MUC) DARPA [’87-’95], TIPSTER [’92’96]
• Most early work dominated by hand-built models
– E.g. SRI’s FASTUS, hand-built FSMs.
– But by 1990’s, some machine learning: Soderland/Lehnert, Cardie, Grishman
– Then HMMs: Elkan [Leek ’97], BBN [Bikel et al ’98]
Web
• AAAI ’94 Spring Symposium on “Software Agents”
– Much discussion of ML applied to Web. Maes, Mitchell, Etzioni.
• Tom Mitchell’s WebKB, ‘96
– Build KB’s from the Web.
• Wrapper Induction
– First by hand, then ML: [Doorenbos ‘96], [Soderland ’96], [Kushmerick ’97],…
Slides from Cohen & McCallum
Landscape of IE Tasks (1/4):
Pattern Feature Domain
Text paragraphs
without formatting
Grammatical sentences
and some formatting & links
Astro Teller is the CEO and co-founder of
BodyMedia. Astro holds a Ph.D. in Artificial
Intelligence from Carnegie Mellon University,
where he was inducted as a national Hertz fellow.
His M.S. in symbolic and heuristic computation
and B.S. in computer science are from Stanford
University. His work in science, literature and
business has appeared in international media from
the New York Times to CNN to NPR.
Non-grammatical snippets,
rich formatting & links
Tables
Slides from Cohen & McCallum
Landscape of IE Tasks (2/4):
Pattern Scope
Web site specific
Formatting
Amazon Book Pages
Genre specific
Layout
Resumes
Wide, non-specific
Language
University Names
Slides from Cohen & McCallum
Landscape of IE Tasks (3/4):
Pattern Complexity
E.g. word patterns:
Closed set
Regular set
U.S. states
U.S. phone numbers
He was born in Alabama…
Phone: (413) 545-1323
The big Wyoming sky…
The CALD main office can be
reached at 412-268-1299
Complex pattern
U.S. postal addresses
University of Arkansas
P.O. Box 140
Hope, AR 71802
Headquarters:
1128 Main Street, 4th Floor
Cincinnati, Ohio 45210
Ambiguous patterns,
needing context and
many sources of evidence
Person names
…was among the six houses
sold by Hope Feldman that year.
Pawel Opalinski, Software
Engineer at WhizBang Labs.
Slides from Cohen & McCallum
Landscape of IE Tasks (4/4):
Pattern Combinations
Jack Welch will retire as CEO of General Electric
tomorrow. The top role at the Connecticut company
will be filled by Jeffrey Immelt.
Single entity
Binary relationship
N-ary record
Person: Jack Welch
Relation: Person-Title Relation: Succession
Person: Jack Welch Company: General Elec
Person: Jeffrey Immelt Title:
CEO
Title:
CEO
Out:
Jack Welsh
In:
Jeffrey Imme
Location: Connecticut Relation: Company-Location
Company: General Electric
Location: Connecticut
“Named
entity” extraction
Slides from Cohen & McCallum
Landscape of IE Models
Lexicons
Abraham Lincoln was born in Kentucky.
member?
Alabama
Alaska
…
Wisconsin
Wyoming
Classify Pre-segmented
Sliding Window
Candidates
Abraham Lincoln was born in Kentucky.
Abraham Lincoln was born in Kentucky.
Classifier
Classifier
which class?
which class?
Try alternate
window sizes:
Context Free Gramm
Boundary Models Finite State Machines
Abraham Lincoln was born in Kentucky.
Abraham Lincoln was born in Kentucky.
Abraham Lincoln was born in Kentucky.
BEGIN
Most likely state sequence?
NNP
NNP
V
V
P
Classifier
PP
which class?
VP
NP
BEGIN
END
BEGIN
NP
END
VP
S
…and beyond
Any of these models can be used to capture words, formatting or
both.
Slides from Cohen & McCallum
Evaluation of Single Entity Extraction
TRUTH:
Michael Kearns and Sebastian Seung will start Monday’s tutorial, followed by Richard M. Karpe and Martin Cooke.
PRED:
Michael Kearns and Sebastian Seung will start Monday’s tutorial, followed by Richard M. Karpe and Martin Cooke.
Precision =
Recall
=
# correctly predicted segments
=
2
# predicted segments
6
# correctly predicted segments
2
# true segments
=
4
1
F1 = Harmonic mean of Prec. + Recall = ((1/P) + (1/R))/2
Slides from Cohen & McCallum
State of the Art Performance
• Named entity recognition
– Person, Location, Organization, …
– F1 in high 80’s or low- to mid-90’s
• Binary relation extraction
– Contained-in (Location1, Location2)
Member-of (Person1, Organization1)
– F1 in 60’s or 70’s or 80’s
• Wrapper induction
– Extremely accurate performance obtainable
– Human effort (~30min) required on each site
Slides from Cohen & McCallum
Current Research
• Open Information Extraction
• Large Scale Extraction
– Eg 5000 relations
– Distant Supervision
• Rapid Supervision
– Minimal labeled examples
– Minimal tuning
Landscape:
Focus of this Tutorial
Pattern complexity closed set regular
Pattern feature domain words
Pattern scope
ambiguous
words + formatting formatting
site-specific genre-specific general
Pattern combinations entity
Models
complex
binary
n-ary
lexicon regex window boundary FSM CFG
Slides from Cohen & McC
Quick Review
Bayes Theorem
1702-1761
P( E | H ) P( H )
P( H | E )
P( E )
28
Bayesian Categorization
• Let set of categories be {c1, c2,…cn}
• Let E be description of an instance.
• Determine category of E by determining for each ci
P(ci | E )
P(ci ) P( E | ci )
P( E )
• P(E) can be determined since categories are complete
and disjoint.
n
n
i 1
i 1
P(ci | E )
P(ci ) P( E | ci )
1
P( E )
n
P( E ) P(ci ) P( E | ci )
i 1
29
Naïve Bayesian Motivation
• Problem: Too many possible instances (exponential in
m) to estimate all P(E | ci)
• If we assume features of an instance are independent
given the category (ci) (conditionally independent).
m
P( E | ci ) P(e1 e2 em | ci ) P(e j | ci )
j 1
• Therefore, we then only need to know P(ej | ci) for each
feature and category.
30
Probabilistic Graphical Models
• Nodes = Random Variables
• Directed Edges = Causal Connections
– Associated with a CPT (conditional probability table)
Spam?
Hidden state
y
Causal dependency
(probabilistic)
P(xi | y=spam)
P(xi | y≠spam)
Random variables
(Boolean)
Observable
x1
Nigeria?
x2
Widow?
x3
CSE 454?
Recap: Naïve Bayes
• Assumption: features independent given label
• Generative Classifier
– Model joint distribution p(x,y)
– Inference
:::
– Learning: counting
– Can we use for IE directly?
The article appeared in the Seattle Times.
city?
capitalization
length
suffix
Labels of
neighboring
words
dependent!
Need to
consider
sequence!
Sliding Windows
Slides from Cohen & McCallum
Extraction by Sliding Window
GRAND CHALLENGES FOR MACHINE LEARNING
Jaime Carbonell
School of Computer Science
Carnegie Mellon University
E.g.
Looking for
seminar
location
3:30 pm
7500 Wean Hall
Machine learning has evolved from obscurity
in the 1970s into a vibrant and popular
discipline in artificial intelligence
during the 1980s and 1990s.
As a result
of its success and growth, machine learning
is evolving into a collection of related
disciplines: inductive concept acquisition,
analytic learning in problem solving (e.g.
analogy, explanation-based learning),
learning theory (e.g. PAC learning),
genetic algorithms, connectionist learning,
hybrid systems, and so on.
CMU UseNet Seminar Announcement
Slides from Cohen & McCallum
Extraction by Sliding Window
GRAND CHALLENGES FOR MACHINE LEARNING
Jaime Carbonell
School of Computer Science
Carnegie Mellon University
E.g.
Looking for
seminar
location
3:30 pm
7500 Wean Hall
Machine learning has evolved from obscurity
in the 1970s into a vibrant and popular
discipline in artificial intelligence
during the 1980s and 1990s.
As a result
of its success and growth, machine learning
is evolving into a collection of related
disciplines: inductive concept acquisition,
analytic learning in problem solving (e.g.
analogy, explanation-based learning),
learning theory (e.g. PAC learning),
genetic algorithms, connectionist learning,
hybrid systems, and so on.
CMU UseNet Seminar Announcement
Slides from Cohen & McCallum
Extraction by Sliding Window
GRAND CHALLENGES FOR MACHINE LEARNING
Jaime Carbonell
School of Computer Science
Carnegie Mellon University
E.g.
Looking for
seminar
location
3:30 pm
7500 Wean Hall
Machine learning has evolved from obscurity
in the 1970s into a vibrant and popular
discipline in artificial intelligence
during the 1980s and 1990s.
As a result
of its success and growth, machine learning
is evolving into a collection of related
disciplines: inductive concept acquisition,
analytic learning in problem solving (e.g.
analogy, explanation-based learning),
learning theory (e.g. PAC learning),
genetic algorithms, connectionist learning,
hybrid systems, and so on.
CMU UseNet Seminar Announcement
Slides from Cohen & McCallum
Extraction by Sliding Window
GRAND CHALLENGES FOR MACHINE LEARNING
Jaime Carbonell
School of Computer Science
Carnegie Mellon University
E.g.
Looking for
seminar
location
3:30 pm
7500 Wean Hall
Machine learning has evolved from obscurity
in the 1970s into a vibrant and popular
discipline in artificial intelligence
during the 1980s and 1990s.
As a result
of its success and growth, machine learning
is evolving into a collection of related
disciplines: inductive concept acquisition,
analytic learning in problem solving (e.g.
analogy, explanation-based learning),
learning theory (e.g. PAC learning),
genetic algorithms, connectionist learning,
hybrid systems, and so on.
CMU UseNet Seminar Announcement
Slides from Cohen & McCallum
A “Naïve Bayes” Sliding Window Model
[Freitag 1997]
…
00 : pm Place : Wean Hall Rm 5409 Speaker : Sebastian Thrun …
w t-m
w t-1 w t
w t+n
w t+n+1
w t+n+m
prefix
contents
suffix
Estimate Pr(LOCATION | window) using Bayes rule
Try all “reasonable” windows (vary length, position)
Assume independence for length, prefix, suffix, content words
Estimate from data quantities like: Pr(“Place” in prefix|LOCATION)
If P(“Wean Hall Rm 5409” = LOCATION) is above some threshold, extract it.
Other examples of sliding window: [Baluja et al 2000]
(decision tree over individual words & their context)
Slides from Cohen & McCallum
“Naïve Bayes” Sliding Window Results
Domain: CMU UseNet Seminar Announcements
GRAND CHALLENGES FOR MACHINE LEARNING
Jaime Carbonell
School of Computer Science
Carnegie Mellon University
3:30 pm
7500 Wean Hall
Machine learning has evolved from obscurity
in the 1970s into a vibrant and popular
discipline in artificial intelligence during
the 1980s and 1990s.
As a result of its
success and growth, machine learning is
evolving into a collection of related
disciplines: inductive concept acquisition,
analytic learning in problem solving (e.g.
analogy, explanation-based learning),
learning theory (e.g. PAC learning), genetic
algorithms, connectionist learning, hybrid
systems, and so on.
Field
Person Name:
Location:
Start Time:
F1
30%
61%
98%
Slides from Cohen & McCallum
Realistic sliding-window-classifier IE
• What windows to consider?
– all windows containing as many tokens as the
shortest example, but no more tokens than the
longest example
• How to represent a classifier? It might:
– Restrict the length of window;
– Restrict the vocabulary or formatting used
before/after/inside window;
– Restrict the relative order of tokens, etc.
• Learning Method
– SRV: Top-Down Rule Learning
[Frietag AAAI ‘98]
– Rapier: Bottom-Up
[Califf & Mooney, AAAI ‘99]
Slides from Cohen & McCallum
Rapier: results – precision/recall
Slides from Cohen & McCallum
Rapier – results vs. SRV
Slides from Cohen & McCallum
Rule-learning approaches to slidingwindow classification: Summary
• SRV, Rapier, and WHISK [Soderland KDD ‘97]
– Representations for classifiers allow restriction of
the relationships between tokens, etc
– Representations are carefully chosen subsets of
even more powerful representations based on
logic programming (ILP and Prolog)
– Use of these “heavyweight” representations is
complicated, but seems to pay off in results
• Can simpler representations for classifiers
work?
Slides from Cohen & McCallum
BWI: Learning to detect boundaries
[Freitag & Kushmerick, AAAI 2000]
• Another formulation: learn 3 probabilistic classifiers:
– START(i) = Prob( position i starts a field)
– END(j) = Prob( position j ends a field)
– LEN(k) = Prob( an extracted field has length k)
• Score a possible extraction (i,j) by
START(i) * END(j) * LEN(j-i)
• LEN(k) is estimated from a histogram
Slides from Cohen & McCallum
BWI: Learning to detect boundaries
• BWI uses boosting to find “detectors” for
START and END
• Each weak detector has a BEFORE and
AFTER pattern (on tokens before/after
position i).
• Each “pattern” is a sequence of
– tokens and/or
– wildcards like: anyAlphabeticToken, anyNumber, …
• Weak learner for “patterns” uses greedy
search (+ lookahead) to repeatedly extend a
pair of empty BEFORE,AFTER patterns
Slides from Cohen & McCallum
BWI: Learning to detect boundaries
Naïve Bayes
Field
F1
Speaker:
30%
Location:
61%
Start Time:
98%
Slides from Cohen & McCallum
Problems with Sliding Windows
and Boundary Finders
• Decisions in neighboring parts of the input
are made independently from each other.
– Naïve Bayes Sliding Window may predict a
“seminar end time” before the “seminar start time”.
– It is possible for two overlapping windows to both
be above threshold.
– In a Boundary-Finding system, left boundaries are
laid down independently from right boundaries,
and their pairing happens as a separate step.
Slides from Cohen & McCallum
Landscape of IE Techniques (1/1):
Models
Classify Pre-segmented
Candidates
Lexicons
Abraham Lincoln was born in Kentucky.
member?
Alabama
Alaska
…
Wisconsin
Wyoming
Boundary Models
Abraham Lincoln was born in Kentucky.
Abraham Lincoln was born in Kentucky.
Sliding Window
Abraham Lincoln was born in Kentucky.
Classifier
Classifier
which class?
which class?
Try alternate
window sizes:
Finite State Machines
Abraham Lincoln was born in Kentucky.
Context Free Grammars
Abraham Lincoln was born in Kentucky.
BEGIN
Most likely state sequence?
NNP
NNP
V
V
P
Classifier
PP
which class?
VP
NP
BEGIN
END
BEGIN
NP
END
Each model can capture words, formatting, or both
VP
S
Slides from Cohen & McCallum
Finite State Machines
Slides from Cohen & McCallum
Hidden Markov Models (HMMs)
standard sequence model in genomics, speech, NLP, …
Graphical model
Finite state model
S t-1
St
S t+1
...
...
observations
...
O
Generates:
State
sequence
Observation
sequence
transitions
Ot
t -1
O t +1
|o|
o1
o2
o3
o4
o5
o6
o7
o8
P(s , o ) P(st | st 1 ) P(ot | st )
t 1
Parameters: for all states S={s1,s2,…}
Start state probabilities: P(st )
Transition probabilities:
P(st|st-1 )
Usually a multinomial over
atomic, fixed alphabet
Observation (emission) probabilities: P(ot|st )
Training:
Maximize probability of training observations (w/
prior)
Slides
from Cohen & McCallum
Example: The Dishonest Casino
A casino has two dice:
• Fair die
P(1) = P(2) = P(3) = P(5) = P(6) = 1/6
• Loaded die
P(1) = P(2) = P(3) = P(5) = 1/10
P(6) = 1/2
Casino player switches back-&-forth
between fair and loaded die once every
20 turns
Game:
1. You bet $1
2. You roll (always with a fair die)
3. Casino player rolls (maybe with fair die,
maybe with loaded die)
4. Highest number wins $2
Slides from Serafim Batzoglou
Question # 1 – Evaluation
GIVEN
A sequence of rolls by the casino player
12455264621461461361366616646616366163661636
1…
QUESTION
How likely is this sequence, given our model of
how the casino works?
This is the EVALUATION problem inSlides
HMMs
from Serafim Batzoglou
Question # 2 – Decoding
GIVEN
A sequence of rolls by the casino player
1245526462146146136136661664661636616366163
…
QUESTION
What portion of the sequence was generated
with the fair die, and what portion with the
loaded die?
Slides from Serafim Batzoglou
Question # 3 – Learning
GIVEN
A sequence of rolls by the casino player
124552646214614613613666166466163661636616361651…
QUESTION
How “loaded” is the loaded die? How “fair” is the fair
die? How often does the casino player change from
fair to loaded, and back?
This is the LEARNING question in HMMs
Slides from Serafim Batzoglou
The dishonest casino model
0.05
0.95
FAIR
P(1|F) = 1/6
P(2|F) = 1/6
P(3|F) = 1/6
P(4|F) = 1/6
P(5|F) = 1/6
P(6|F) = 1/6
0.95
LOADED
0.05
P(1|L) = 1/10
P(2|L) = 1/10
P(3|L) = 1/10
P(4|L) = 1/10
P(5|L) = 1/10
P(6|L) = 1/2
Slides from Serafim Batzoglou
What’s this have to do with Info Extraction?
0.05
0.95
FAIR
P(1|F) = 1/6
P(2|F) = 1/6
P(3|F) = 1/6
P(4|F) = 1/6
P(5|F) = 1/6
P(6|F) = 1/6
0.95
LOADED
0.05
P(1|L) = 1/10
P(2|L) = 1/10
P(3|L) = 1/10
P(4|L) = 1/10
P(5|L) = 1/10
P(6|L) = 1/2
What’s this have to do with Info Extraction?
0.05
0.95
TEXT
P(the | T) = 0.003
P(from | T) = 0.002
…..
0.95
NAME
0.05
P(Dan | N) = 0.005
P(Sue | N) = 0.003
…
IE with Hidden Markov Models
Given a sequence of observations:
Yesterday Pedro Domingos spoke this example sentence.
and a trained HMM:
person name
location name
background
Find the most likely state sequence: (Viterbi) arg max s P( s , o )
Yesterday Pedro Domingos spoke this example sentence.
Any words said to be generated by the designated “person name”
state extract as a person name:
Person name: Pedro Domingos
Slide by Cohen & McCallum
IE with Hidden Markov Models
For sparse extraction tasks :
• Separate HMM for each type of target
• Each HMM should
– Model entire document
– Consist of target and non-target states
– Not necessarily fully connected
Slide by Okan Basegmez
59
Or … Combined HMM
• Example – Research Paper Headers
Slide by Okan Basegmez
60
HMM Example: “Nymble”
[Bikel, et al 1998],
[BBN “IdentiFinder”]
Task: Named Entity Extraction
Transition
probabilities
Person
start-ofsentence
Observation
probabilities
end-ofsentence
Org
or
(Five other name classes)
Back-off to:
Back-off to:
Other
Train on ~500k words of news wire text.
Results:
Case
Mixed
Upper
Mixed
Language
English
English
Spanish
F1 .
93%
91%
90%
Other examples of shrinkage for HMMs in IE: [Freitag and McCallum ‘99]
Slide by Cohen & McCallum
HMM Example: “Nymble”
Task: Named Entity Extraction
[Bikel, et al 1998],
[BBN “IdentiFinder”]
Person
start-ofsentence
end-ofsentence
Org
(Five other name classes)
Train on ~500k words of
news wire text.
Other
Results: Case
Mixed
Upper
Mixed
Slide adapted from Cohen & McCallum
Language
English
English
Spanish
F1 .
93%
91%
90%
Finite State Model
Person
start-ofsentence
end-ofsentence
Org
(Five other name classes)
vs. Path
Other
y1
x1
y2
y3
y4
y5
y6
…
x2
x3
x4
x5
x6
…
Question #1 – Evaluation
GIVEN
A sequence of observations x1 x2 x3 x4 ……xN
A trained HMM
θ=(
,
,
)
QUESTION
How likely is this sequence, given our HMM ?
P(x,θ)
Why do we care?
Need it for learning to choose among competing
models!
Question #2 - Decoding
GIVEN
A sequence of observations x1 x2 x3 x4 ……xN
A trained HMM
θ=(
,
,
)
QUESTION
How dow we choose the corresponding parse (state sequence) y1 y2
y3 y4 ……yN , which “best” explains x1 x2 x3 x4 ……xN ?
There are several reasonable optimality criteria:
single optimal sequence, average statistics for
individual states, …
A parse of a sequence
Given a sequence x = x1……xN,
A parse of o is a sequence of states y = y1, ……, yN
person
other
location
1
1
1
…
1
2
2
2
…
2
…
…
…
K
K
K
x1
x2
x3
Slide by Serafim Batzoglou
…
…
K
xK
Question #3 - Learning
GIVEN
A sequence of observations x1 x2 x3 x4 ……xN
QUESTION
How do we learn the model parameters
θ =(
,
which maximize P(x, θ ) ?
,
)
Three Questions
• Evaluation
– Forward algorithm
– (Could also go other direction)
• Decoding
– Viterbi algorithm
• Learning
– Baum-Welch Algorithm (aka “forward-backward”)
• A kind of EM (expectation maximization)
– Perceptron Updates
A Solution to #1: Evaluation
Given observations x=x1 …xN and HMM θ, what is p(x) ?
Enumerate every possible state sequence y=y1 …yN
Probability of x and given particular y
Probability of particular y
2T multiplications
per sequence
Summing over all possible state sequences we get
For small HMMs
T=10, N=10
there are 10
billion sequences!
NT state sequences!
Solution to #1: Evaluation
Use Dynamic Programming:
Define forward variable
probability that at time t
- the state is Si
- the partial observation sequence x=x1 …xt has been emitted
Forward Variable t(i)
Prob - that the state at time t vas value Si and
- the partial obs sequence x=x1 …xt has been seen
person
1
1
1
…
1
…
other
2
2
2
…
2
…
…
…
…
K
K
K
x1
x2
x3
location
…
…
K
xt
…
Forward Variable t(i)
prob - that the state at t vas value Si and
- the partial obs sequence x=x1 …xt has been seen
person
1
1
1
…
1
…
other
2
2
2
…
2
…
…
…
…
K
K
K
x1
x2
x3
location
S
…i
…
K
xt
…
Solution to #1: Evaluation
• Use Dynamic Programming
• Cache and reuse inner sums
• Define forward variables
probability that at time t
- the state is yt = Si
- the partial observation sequence x=x1 …xt has been omitted
The Forward Algorithm
The Forward Algorithm
INITIALIZATION
INDUCTION
TERMINATION
Time:
Space:
O(K2N)
O(KN)
K = |S|
N
#states
length of sequence
The Backward Algorithm
The Backward Algorithm
INITIALIZATION
INDUCTION
TERMINATION
Time:
Space:
O(K2N)
O(KN)
Three Questions
• Evaluation
– Forward algorithm
– (Could also go other direction)
• Decoding
– Viterbi algorithm
• Learning
– Baum-Welch Algorithm (aka “forward-backward”)
– A kind of EM (expectation maximization)
Need new slide!
Solution to #2 - Decoding
Given x=x1 …xN and HMM θ, what is “best” parse y1 …yN?
Several optimal solutions
• 1. States which are individually most likely
• 2. Single best state sequence
We want to find sequence y1 …yN,
such that P(x,y) is maximized
y* = argmaxy P( x, y )
Again, we can use dynamic programming!
1
1
1
…
1
2
2
2
…
2
…
K
…
K
…
K
…
…
K
o1
o2
o3
oK
The Viterbi Algorithm
DEFINE
INITIALIZATION
INDUCTION
TERMINATION
Backtracking to get state
sequence y*
The Viterbi Algorithm
x1 x2 ……xj-1 xj……………………………..xT
State 1
2
i
δj(i)
K
Time:
O(K2T)
Linear in length of sequence
Space:
O(KT)
Remember:
δk(i) = probability of most likely
state seq ending with state Sk
Slides from Serafim Batzoglou
The Viterbi Algorithm
Pedro Domingos
83
Three Questions
• Evaluation
– Forward algorithm
– (Could also go other direction)
• Decoding
– Viterbi algorithm
• Learning
– Baum-Welch Algorithm (aka “forward-backward”)
– A kind of EM (expectation maximization)
Solution to #3 - Learning
Given x1 …xN , how do we learn θ =(
,
,
) to maximize P(x)?
• Unfortunately, there is no known way to analytically find a
global maximum θ * such that
θ * = arg max P(o | θ)
• But it is possible to find a local maximum; given an initial model
θ, we can always find a model θ’ such that
P(o | θ’) ≥ P(o | θ)
Chicken & Egg Problem
• If we knew the actual sequence of states
– It would be easy to learn transition and emission probabilities
– But we can’t observe states, so we don’t!
• If we knew transition & emission probabilities
– Then it’d be easy to estimate the sequence of states (Viterbi)
– But we don’t know them!
Slide by Daniel S. Weld
86
Simplest Version
• Mixture of two distributions
• Know: form of.01distribution
& variance,
.03 .05 .07 .09
% =5
• Just need mean of each distribution
Slide by Daniel S. Weld
87
Input Looks Like
.01
Slide by Daniel S. Weld
.03
.05
.07
88
.09
We Want to Predict
?
.01
Slide by Daniel S. Weld
.03
.05
.07
89
.09
Chicken & Egg
Note that coloring instances would be easy
if we knew Gausians….
.01
Slide by Daniel S. Weld
.03
.05
.07
90
.09
Chicken & Egg
And finding the Gausians would be easy
If we knew the coloring
.01
Slide by Daniel S. Weld
.03
.05
.07
91
.09
Expectation Maximization (EM)
• Pretend we do know the parameters
– Initialize randomly: set
1=?; 2=?
.01 .03 .05 .07 .09
Slide by Daniel S. Weld
92
Expectation Maximization (EM)
• Pretend we do know the parameters
– Initialize randomly
• [E step] Compute probability of instance having
each possible value of the hidden variable
.01
Slide by Daniel S. Weld
.03
.05
.07
93
.09
Expectation Maximization (EM)
• Pretend we do know the parameters
– Initialize randomly
• [E step] Compute probability of instance having
each possible value of the hidden variable
.01
Slide by Daniel S. Weld
.03
.05
.07
94
.09
Expectation Maximization (EM)
• Pretend we do know the parameters
– Initialize randomly
• [E step] Compute probability of instance having
each possible value of the hidden variable
[M step] Treating each instance as fractionally
having both values compute the new parameter
values
.01
Slide by Daniel S. Weld
.03
.05
.07
95
.09
ML Mean of Single Gaussian
Uml = argminu
(x – u)
i
i
2
.01 .03 .05 .07 .09
Slide by Daniel S. Weld
96
Expectation Maximization (EM)
• [E step] Compute probability of instance having each
possible value of the hidden variable
[M step] Treating each instance as fractionally
having both values compute the new parameter
values
.01
Slide by Daniel S. Weld
.03
.05
.07
97
.09
Expectation Maximization (EM)
• [E step] Compute probability of instance having
each possible value of the hidden variable
.01
Slide by Daniel S. Weld
.03
.05
.07
98
.09
Expectation Maximization (EM)
• [E step] Compute probability of instance having
each possible value of the hidden variable
[M step] Treating each instance as fractionally
having both values compute the new parameter
values
.01
Slide by Daniel S. Weld
.03
.05
.07
99
.09
Expectation Maximization (EM)
• [E step] Compute probability of instance having
each possible value of the hidden variable
[M step] Treating each instance as fractionally
having both values compute the new parameter
values
.01
Slide by Daniel S. Weld
.03
.05
.07
100
.09
EM for HMMs
• [E step] Compute probability of instance having
each possible value of the hidden variable
– Compute the forward and backward probabilities for given
model parameters and our observations
[M step] Treating each instance as fractionally
having both values compute the new parameter
values
- Re-estimate the model parameters
- Simple Counting
101
Summary - Learning
• Use hill-climbing
– Called the forward-backward (or Baum/Welch) algorithm
• Idea
– Use an initial parameter instantiation
– Loop
• Compute the forward and backward probabilities for given
model parameters and our observations
• Re-estimate the parameters
– Until estimates don’t change much
IE Resources
• Data
– RISE, http://www.isi.edu/~muslea/RISE/index.html
– Linguistic Data Consortium (LDC)
• Penn Treebank, Named Entities, Relations, etc.
– http://www.biostat.wisc.edu/~craven/ie
– http://www.cs.umass.edu/~mccallum/data
• Code
– TextPro, http://www.ai.sri.com/~appelt/TextPro
– MALLET, http://www.cs.umass.edu/~mccallum/mallet
– SecondString, http://secondstring.sourceforge.net/
• Both
– http://www.cis.upenn.edu/~adwait/penntools.html
Slides from Cohen & McCallum
References
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
[Bikel et al 1997] Bikel, D.; Miller, S.; Schwartz, R.; and Weischedel, R. Nymble: a high-performance learning name-finder. In
Proceedings of ANLP’97, p194-201.
[Califf & Mooney 1999], Califf, M.E.; Mooney, R.: Relational Learning of Pattern-Match Rules for Information Extraction, in
Proceedings of the Sixteenth National Conference on Artificial Intelligence (AAAI-99).
[Cohen, Hurst, Jensen, 2002] Cohen, W.; Hurst, M.; Jensen, L.: A flexible learning system for wrapping tables and lists in HTML
documents. Proceedings of The Eleventh International World Wide Web Conference (WWW-2002)
[Cohen, Kautz, McAllester 2000] Cohen, W; Kautz, H.; McAllester, D.: Hardening soft information sources. Proceedings of the
Sixth International Conference on Knowledge Discovery and Data Mining (KDD-2000).
[Cohen, 1998] Cohen, W.: Integration of Heterogeneous Databases Without Common Domains Using Queries Based on Textual
Similarity, in Proceedings of ACM SIGMOD-98.
[Cohen, 2000a] Cohen, W.: Data Integration using Similarity Joins and a Word-based Information Representation Language,
ACM Transactions on Information Systems, 18(3).
[Cohen, 2000b] Cohen, W. Automatically Extracting Features for Concept Learning from the Web, Machine Learning:
Proceedings of the Seventeeth International Conference (ML-2000).
[Collins & Singer 1999] Collins, M.; and Singer, Y. Unsupervised models for named entity classification. In Proceedings of the
Joint SIGDAT Conference on Empirical Methods in Natural Language Processing and Very Large Corpora, 1999.
[De Jong 1982] De Jong, G. An Overview of the FRUMP System. In: Lehnert, W. & Ringle, M. H. (eds), Strategies for Natural
Language Processing. Larence Erlbaum, 1982, 149-176.
[Freitag 98] Freitag, D: Information extraction from HTML: application of a general machine learning approach, Proceedings of the
Fifteenth National Conference on Artificial Intelligence (AAAI-98).
[Freitag, 1999], Freitag, D. Machine Learning for Information Extraction in Informal Domains. Ph.D. dissertation, Carnegie Mellon
University.
[Freitag 2000], Freitag, D: Machine Learning for Information Extraction in Informal Domains, Machine Learning 39(2/3): 99-101
(2000).
Freitag & Kushmerick, 1999] Freitag, D; Kushmerick, D.: Boosted Wrapper Induction. Proceedings of the Sixteenth National
Conference on Artificial Intelligence (AAAI-99)
[Freitag & McCallum 1999] Freitag, D. and McCallum, A. Information extraction using HMMs and shrinakge. In Proceedings
AAAI-99 Workshop on Machine Learning for Information Extraction. AAAI Technical Report WS-99-11.
[Kushmerick, 2000] Kushmerick, N: Wrapper Induction: efficiency and expressiveness, Artificial Intelligence, 118(pp 15-68).
[Lafferty, McCallum & Pereira 2001] Lafferty, J.; McCallum, A.; and Pereira, F., Conditional Random Fields: Probabilistic Models
for Segmenting and Labeling Sequence Data, In Proceedings of ICML-2001.
[Leek 1997] Leek, T. R. Information extraction using hidden Markov models. Master’s thesis. UC San Diego.
[McCallum, Freitag & Pereira 2000] McCallum, A.; Freitag, D.; and Pereira. F., Maximum entropy Markov models for information
extraction and segmentation, In Proceedings of ICML-2000
[Miller et al 2000] Miller, S.; Fox, H.; Ramshaw, L.; Weischedel, R. A Novel Use of Statistical Parsing to Extract Information from
Text. Proceedings of the 1st Annual Meeting of the North American Chapter of the ACL (NAACL), p. 226 - 233.
Slides from Cohen & McCallum