CS 4705 Lecture 15 Corpus Linguistics III. Training and Testing Probabilities come from a training corpus, which is used to design the model. –overly.

Slides:



Advertisements
Similar presentations
Language Modeling: Ngrams
Advertisements

N-Grams and Corpus Linguistics 6 July Linguistics vs. Engineering “But it must be recognized that the notion of “probability of a sentence” is an.
N-gram model limitations Important question was asked in class: what do we do about N-grams which were not in our training corpus? Answer given: we distribute.
Albert Gatt Corpora and Statistical Methods – Lecture 7.
SI485i : NLP Set 4 Smoothing Language Models Fall 2012 : Chambers.
Smoothing Techniques – A Primer
Smoothing N-gram Language Models Shallow Processing Techniques for NLP Ling570 October 24, 2011.
CMSC 723 / LING 645: Intro to Computational Linguistics February 25, 2004 Lecture 5 (Dorr): Intro to Probabilistic NLP and N-grams (chap ) Prof.
CS 4705 N-Grams and Corpus Linguistics Julia Hirschberg CS 4705.
CSC 9010: Special Topics, Natural Language Processing. Spring, Matuszek & Papalaskari 1 N-Grams CSC 9010: Special Topics. Natural Language Processing.
1 N-Grams and Corpus Linguistics September 2009 Lecture #5.
NATURAL LANGUAGE PROCESSING. Applications  Classification ( spam )  Clustering ( news stories, twitter )  Input correction ( spell checking )  Sentiment.
A* Search Uses evaluation function f (n)= g(n) + h(n) where n is a node. – g is a cost function Total cost incurred so far from initial state at node n.
N-Grams and Corpus Linguistics.  Regular expressions for asking questions about the stock market from stock reports  Due midnight, Sept. 29 th  Use.
Part II. Statistical NLP Advanced Artificial Intelligence N-Gramms Wolfram Burgard, Luc De Raedt, Bernhard Nebel, Lars Schmidt-Thieme Most slides taken.
Part II. Statistical NLP Advanced Artificial Intelligence Markov Models and N-gramms Wolfram Burgard, Luc De Raedt, Bernhard Nebel, Kristian Kersting Some.
N-Grams and Corpus Linguistics
Lecture 1, 7/21/2005Natural Language Processing1 CS60057 Speech &Natural Language Processing Autumn 2007 Lecture 5 2 August 2007.
N-Gram Language Models CMSC 723: Computational Linguistics I ― Session #9 Jimmy Lin The iSchool University of Maryland Wednesday, October 28, 2009.
Page 1 Language Modeling. Page 2 Next Word Prediction From a NY Times story... Stocks... Stocks plunged this …. Stocks plunged this morning, despite a.
CS 4705 Lecture 6 N-Grams and Corpus Linguistics.
Ngram models and the Sparsity problem John Goldsmith November 2002.
Smoothing Bonnie Dorr Christof Monz CMSC 723: Introduction to Computational Linguistics Lecture 5 October 6, 2004.
N-gram model limitations Q: What do we do about N-grams which were not in our training corpus? A: We distribute some probability mass from seen N-grams.
LING 438/538 Computational Linguistics Sandiway Fong Lecture 20: 11/8.
1 Language Model (LM) LING 570 Fei Xia Week 4: 10/21/2009 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAA A A.
1 Smoothing LING 570 Fei Xia Week 5: 10/24/07 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAA A A AA A A A.
N-Grams and Language Modeling
Introduction to Language Models Evaluation in information retrieval Lecture 4.
CS 4705 N-Grams and Corpus Linguistics. Homework Use Perl or Java reg-ex package HW focus is on writing the “grammar” or FSA for dates and times The date.
LING 438/538 Computational Linguistics Sandiway Fong Lecture 19: 10/31.
LING 438/538 Computational Linguistics Sandiway Fong Lecture 18: 10/26.
1 SIMS 290-2: Applied Natural Language Processing Marti Hearst Sept 15, 2004.
CS 4705 N-Grams and Corpus Linguistics. Spelling Correction, revisited M$ suggests: –ngram: NorAm –unigrams: anagrams, enigmas –bigrams: begrimes –trigrams:
CS 4705 Lecture 14 Corpus Linguistics II. Relating Conditionals and Priors P(A | B) = P(A ^ B) / P(B) –Or, P(A ^ B) = P(A | B) P(B) Bayes Theorem lets.
Language Models Instructor: Paul Tarau, based on Rada Mihalcea’s original slides Note: some of the material in this slide set was adapted from an NLP course.
SI485i : NLP Set 3 Language Models Fall 2012 : Chambers.
1 Advanced Smoothing, Evaluation of Language Models.
8/27/2015CPSC503 Winter CPSC 503 Computational Linguistics Lecture 5 Giuseppe Carenini.
Natural Language Processing Lecture 6—9/17/2013 Jim Martin.
1 N-Grams and Corpus Linguistics September 6, 2012 Lecture #4.
Machine Translation Course 3 Diana Trandab ă ț Academic year:
NGrams 09/16/2004 Instructor: Rada Mihalcea Note: some of the material in this slide set was adapted from an NLP course taught by Bonnie Dorr at Univ.
1 N-Gram – Part 2 ICS 482 Natural Language Processing Lecture 8: N-Gram – Part 2 Husni Al-Muhtaseb.
Formal Models of Language. Slide 1 Language Models A language model an abstract representation of a (natural) language phenomenon. an approximation to.
Natural Language Processing Language Model. Language Models Formal grammars (e.g. regular, context free) give a hard “binary” model of the legal sentences.
1 LIN6932 Spring 2007 LIN6932: Topics in Computational Linguistics Hana Filip Lecture 5: N-grams.
Lecture 1, 7/21/2005Natural Language Processing1 CS60057 Speech &Natural Language Processing Autumn 2007 Lecture 7 8 August 2007.
6. N-GRAMs 부산대학교 인공지능연구실 최성자. 2 Word prediction “I’d like to make a collect …” Call, telephone, or person-to-person -Spelling error detection -Augmentative.
N-Grams and Corpus Linguistics guest lecture by Dragomir Radev
1 COMP 791A: Statistical Language Processing n-gram Models over Sparse Data Chap. 6.
Chapter 6: Statistical Inference: n-gram Models over Sparse Data
Chapter 6: N-GRAMS Heshaam Faili University of Tehran.
Chapter6. Statistical Inference : n-gram Model over Sparse Data 이 동 훈 Foundations of Statistic Natural Language Processing.
Lecture 4 Ngrams Smoothing
Ngram models and the Sparcity problem. The task Find a probability distribution for the current word in a text (utterance, etc.), given what the last.
Estimating N-gram Probabilities Language Modeling.
Natural Language Processing Statistical Inference: n-grams
2/29/2016CPSC503 Winter CPSC 503 Computational Linguistics Lecture 5 Giuseppe Carenini.
Statistical Methods for NLP Diana Trandab ă ț
Speech and Language Processing Lecture 4 Chapter 4 of SLP.
Language Modeling Part II: Smoothing Techniques Niranjan Balasubramanian Slide Credits: Chris Manning, Dan Jurafsky, Mausam.
Statistical Methods for NLP
N-Grams Chapter 4 Part 2.
CSC 594 Topics in AI – Natural Language Processing
N-Grams and Corpus Linguistics
N-Grams and Corpus Linguistics
CPSC 503 Computational Linguistics
CSCE 771 Natural Language Processing
Presentation transcript:

CS 4705 Lecture 15 Corpus Linguistics III

Training and Testing Probabilities come from a training corpus, which is used to design the model. –overly narrow corpus: probabilities don't generalize –overly general corpus: probabilities don't reflect task or domain A separate test corpus is used to evaluate the model, typically using standard metrics –held out test set –cross validation –evaluation differences should be statistically significant

Terminology Sentence: unit of written language Utterance: unit of spoken language Word Form: the inflected form that appears in the corpus Lemma: lexical forms having the same stem, part of speech, and word sense Types: number of distinct words in a corpus (vocabulary size) Tokens: total number of words

Simple N-Grams An N-gram model uses the previous N-1 words to predict the next one: –P(w n | w n -1 ) –We'll pretty much always be dealing with P( | ) unigrams: P(dog) bigrams: P(dog | big) trigrams: P(dog | the big) quadrigrams: P(dog | chasing the big)

Using N-Grams Recall that –P(w n | w 1..n-1 )  P(w n | w n-N+1..n-1 ) For a bigram grammar –P(sentence) can be approximated by multiplying all the bigram probabilities in the sequence E.g. –P(I want to each Chinese food) = P(I | ) P(want | I) P(to | want) P(eat | to) P(Chinese | eat) P(food | Chinese)

A Bigram Grammar Fragment from BERP Eat on.16Eat Thai.03 Eat some.06Eat breakfast.03 Eat lunch.06Eat in.02 Eat dinner.05Eat Chinese.02 Eat at.04Eat Mexican.02 Eat a.04Eat tomorrow.01 Eat Indian.04Eat dessert.007 Eat today.03Eat British.001

I.25Want some.04 I’d.06Want Thai.01 Tell.04To eat.26 I’m.02To have.14 I want.32To spend.09 I would.29To be.02 I don’t.08British food.60 I have.04British restaurant.15 Want to.65British cuisine.01 Want a.05British lunch.01

P(I want to eat British food) = P(I| ) P(want|I) P(to|want) P(eat|to) P(British|eat) P(food|British) =.25*.32*.65*.26*.001*.60 = vs. I want to eat Chinese food = Probabilities seem to capture ``syntactic'' facts, ``world knowledge'' –eat is often followed by a NP –British food is not too popular N-gram models can be trained by counting and normalization

BERP Bigram Counts IWantToEatChineseFoodlunch I Want To Eat Chinese Food Lunch

BERP Bigram Probabilities Normalization: divide each row's counts by appropriate unigram counts Computing the probability of I I –C(I|I)/C(all I) –p = 8 / 3437 =.0023 A bigram grammar is an NxN matrix of probabilities, where N is the vocabulary size IWantToEatChineseFoodLunch

What do we learn about the language? What's being captured with... –P(want | I) =.32 –P(to | want) =.65 –P(eat | to) =.26 –P(food | Chinese) =.56 –P(lunch | eat) =.055 What about... –P(I | I) =.0023 –P(I | want) =.0025 –P(I | food) =.013

–P(I | I) =.0023 I I I I want –P(I | want) =.0025 I want I want –P(I | food) =.013 the kind of food I want is...

Approximating Shakespeare As we increase the value of N, the accuracy of the n-gram model increases Generating sentences with random unigrams... –Every enter now severally so, let –Hill he late speaks; or! a more to leg less first you enter With bigrams... –What means, sir. I confess she? then all sorts, he is trim, captain. –Why dost stand forth thy canopy, forsooth; he is this palpable hit the King Henry.

Trigrams –Sweet prince, Falstaff shall die. –This shall forbid it should be branded, if renown made it empty. Quadrigrams –What! I will go seek the traitor Gloucester. –Will you not tell me who I am?

There are 884,647 tokens, with 29,066 word form types, in about a one million word Shakespeare corpus Shakespeare produced 300,000 bigram types out of 844 million possible bigrams: so, 99.96% of the possible bigrams were never seen (have zero entries in the table). Quadrigrams worse: What's coming out looks like Shakespeare because it is Shakespeare. All those zeroes are causing problems.

N-Gram Training Sensitivity If we repeated the Shakespeare experiment but trained on a Wall Street Journal corpus, there would be little overlap in the output This has major implications for corpus selection or design

Some Useful Empirical Observations A small number of events occur with high frequency A large number of events occur with low frequency You can quickly collect statistics on the high frequency events You might have to wait an arbitrarily long time to get valid statistics on low frequency events Some of the zeroes in the table are really zeroes. But others are simply low frequency events you haven't seen yet. How to fix?

Smoothing Techniques Every ngram training matrix is sparse, even for very large corpora (Zipf’s law) Solution: estimate the likelihood of unseen ngrams Add-one smoothing: –Add 1 to every bigram count –Normalize by N/(N+V) –Smoothed count is –Discount: ratio of new counts to old (e.g. add-one smoothing changes the BERP bigram (to|want) from 786 to 331 (and p from.65 to.28)

We’d like to find methods that don’t change the original probabilities so drastically Witten-Bell Discounting –A zero ngram is just an ngram you haven’t seen yet… –Model unseen bigrams by the ngrams you’ve only seen once (i.e. the total number of word types in the corpus) –Total probability of unseen bigrams estimated as –View training corpus as series of events, one for each token (N) and one for each new type (T) –We can divide the probability mass equally among unseen bigrams….or we can condition the probability of an unseen bigram on the first word of the bigram

–Discount values for Witten-Bell are much more reasonable than Add-One Good-Turing Discounting –Re-estimate amount of probability mass for zero (or low count) ngrams by looking at ngrams with higher counts –Estimate –Assumes: word bigrams follow a binomial distribution We know number of unseen bigrams (VxV-seen)

Backoff methods (e.g. Katz) –Build e.g. a trigram model –Where trigram unavailable back off to bigram if available, o.w. unigram probability –E.g An omnivorous unicorn C (MLE)NcNc C* (GT) …

Next: Semantics Read Ch 14 Homework I