Introduction to Information Retrieval Introduction to Information Retrieval Hinrich Schütze and Christina Lioma Lecture 13: Text Classification & Naive.

Slides:



Advertisements
Similar presentations
Improvements and extras Paul Thomas CSIRO. Overview of the lectures 1.Introduction to information retrieval (IR) 2.Ranked retrieval 3.Probabilistic retrieval.
Advertisements

Mustafa Cayci INFS 795 An Evaluation on Feature Selection for Text Clustering.
Language Models Naama Kraus (Modified by Amit Gross) Slides are based on Introduction to Information Retrieval Book by Manning, Raghavan and Schütze.
Chapter 5: Introduction to Information Retrieval
1 Evaluation Rong Jin. 2 Evaluation  Evaluation is key to building effective and efficient search engines usually carried out in controlled experiments.
Hinrich Schütze and Christina Lioma
S ENTIMENTAL A NALYSIS O F B LOGS B Y C OMBINING L EXICAL K NOWLEDGE W ITH T EXT C LASSIFICATION. 1 By Prem Melville, Wojciech Gryc, Richard D. Lawrence.
Evaluating Search Engine
Hinrich Schütze and Christina Lioma Lecture 12: Language Models for IR
Hinrich Schütze and Christina Lioma
Bayes Rule How is this rule derived? Using Bayes rule for probabilistic inference: –P(Cause | Evidence): diagnostic probability –P(Evidence | Cause): causal.
Lecture 13-1: Text Classification & Naive Bayes
Introduction to Information Retrieval Introduction to Information Retrieval Hinrich Schütze and Christina Lioma Lecture 12: Language Models for IR.
Introduction to Information Retrieval Introduction to Information Retrieval Hinrich Schütze and Christina Lioma Lecture 11: Probabilistic Information Retrieval.
TEXT CLASSIFICATION CC437 (Includes some original material by Chris Manning)
Hinrich Schütze and Christina Lioma
1 CS 430 / INFO 430 Information Retrieval Lecture 10 Probabilistic Information Retrieval.
Naïve Bayes Classification Debapriyo Majumdar Data Mining – Fall 2014 Indian Statistical Institute Kolkata August 14, 2014.
Scalable Text Mining with Sparse Generative Models
Text Categorization Moshe Koppel Lecture 2: Naïve Bayes Slides based on Manning, Raghavan and Schutze.
CS Bayesian Learning1 Bayesian Learning. CS Bayesian Learning2 States, causes, hypotheses. Observations, effect, data. We need to reconcile.
Chapter 5: Information Retrieval and Web Search
Crash Course on Machine Learning
Advanced Multimedia Text Classification Tamara Berg.
(ACM KDD 09’) Prem Melville, Wojciech Gryc, Richard D. Lawrence
Information Retrieval and Web Search Introduction to Text Classification (Note: slides in this set have been adapted from the course taught by Chris Manning.
Processing of large document collections Part 2 (Text categorization) Helena Ahonen-Myka Spring 2006.
Bayesian Networks. Male brain wiring Female brain wiring.
Processing of large document collections Part 2 (Text categorization, term selection) Helena Ahonen-Myka Spring 2005.
CSCI 5417 Information Retrieval Systems Jim Martin Lecture 11 9/29/2011.
Text Classification, Active/Interactive learning.
How to classify reading passages into predefined categories ASH.
1 Bins and Text Categorization Carl Sable (Columbia University) Kenneth W. Church (AT&T)
A Simple Unsupervised Query Categorizer for Web Search Engines Prashant Ullegaddi and Vasudeva Varma Search and Information Extraction Lab Language Technologies.
Naive Bayes Classifier
Spam Filtering. From: "" Subject: real estate is the only way... gem oalvgkay Anyone can buy real estate with no money down Stop paying rent TODAY ! There.
Text Feature Extraction. Text Classification Text classification has many applications –Spam detection –Automated tagging of streams of news articles,
Information Retrieval and Organisation Chapter 13 Text Classification and Naïve Bayes Dell Zhang Birkbeck, University of London.
Chapter 6: Information Retrieval and Web Search
Empirical Research Methods in Computer Science Lecture 7 November 30, 2005 Noah Smith.
Processing of large document collections Part 3 (Evaluation of text classifiers, term selection) Helena Ahonen-Myka Spring 2006.
Classification Techniques: Bayesian Classification
LANGUAGE MODELS FOR RELEVANCE FEEDBACK Lee Won Hee.
Chapter 8 Evaluating Search Engine. Evaluation n Evaluation is key to building effective and efficient search engines  Measurement usually carried out.
CHAPTER 6 Naive Bayes Models for Classification. QUESTION????
Active learning Haidong Shi, Nanyi Zeng Nov,12,2008.
Information Retrieval Lecture 4 Introduction to Information Retrieval (Manning et al. 2007) Chapter 13 For the MSc Computer Science Programme Dell Zhang.
KNN & Naïve Bayes Hongning Wang Today’s lecture Instance-based classifiers – k nearest neighbors – Non-parametric learning algorithm Model-based.
Naïve Bayes Classification Material borrowed from Jonathan Huang and I. H. Witten’s and E. Frank’s “Data Mining” and Jeremy Wyatt and others.
Information Retrieval and Organisation Chapter 14 Vector Space Classification Dell Zhang Birkbeck, University of London.
Introduction to Information Retrieval Introduction to Information Retrieval Lecture Probabilistic Information Retrieval.
Naïve Bayes Classifier April 25 th, Classification Methods (1) Manual classification Used by Yahoo!, Looksmart, about.com, ODP Very accurate when.
BAYESIAN LEARNING. 2 Bayesian Classifiers Bayesian classifiers are statistical classifiers, and are based on Bayes theorem They can calculate the probability.
Introduction to Information Retrieval Introduction to Information Retrieval Lecture 15: Text Classification & Naive Bayes 1.
ECE 8443 – Pattern Recognition ECE 8527 – Introduction to Machine Learning and Pattern Recognition Objectives: Bayes Rule Mutual Information Conditional.
KNN & Naïve Bayes Hongning Wang
Naive Bayes Classifier. REVIEW: Bayesian Methods Our focus this lecture: – Learning and classification methods based on probability theory. Bayes theorem.
Introduction to Information Retrieval Probabilistic Information Retrieval Chapter 11 1.
Opinion spam and Analysis 소프트웨어공학 연구실 G 최효린 1 / 35.
Naïve Bayes Classification Recitation, 1/25/07 Jonathan Huang.
Text Classification and Naïve Bayes Formalizing the Naïve Bayes Classifier.
Naive Bayes Classifier
Lecture 15: Text Classification & Naive Bayes
Data Mining Lecture 11.
Text Categorization Rong Jin.
Where did we stop? The Bayes decision rule guarantees an optimal classification… … But it requires the knowledge of P(ci|x) (or p(x|ci) and P(ci)) We.
Information Retrieval
INF 141: Information Retrieval
Naïve Bayes Text Classification
NAÏVE BAYES CLASSIFICATION
Presentation transcript:

Introduction to Information Retrieval Introduction to Information Retrieval Hinrich Schütze and Christina Lioma Lecture 13: Text Classification & Naive Bayes 1

Introduction to Information Retrieval Overview ❶ Recap ❷ Text classification ❸ Naive Bayes ❹ NB theory ❺ Evaluation of TC 2

Introduction to Information Retrieval Overview ❶ Recap ❷ Text classification ❸ Naive Bayes ❹ NB theory ❺ Evaluation of TC 3

Introduction to Information Retrieval 4 Looking vs. Clicking 4

Introduction to Information Retrieval 5 Pivot normalization 5 Source: Lillian Lee

Introduction to Information Retrieval 6 Use min heap for selecting top k out of N  Use a binary min heap  A binary min heap is a binary tree in which each node’s value is less than the values of its children.  It takes O(N log k) operations to construct the k-heap containing the k largest values (where N is the number of documents).  Essentially linear in N for small k and large N.

Introduction to Information Retrieval 7 Binary min heap

Introduction to Information Retrieval 8 Heuristics for finding the top k most relevant  Document-at-a-time processing  We complete computation of the query-document similarity score of document d i before starting to compute the query- document similarity score of d i+1.  Requires a consistent ordering of documents in the postings lists  Term-at-a-time processing  We complete processing the postings list of query term t i before starting to process the postings list of t i+1.  Requires an accumulator for each document “still in the running”  The most effective heuristics switch back and forth between term-at-a-time and document-at-a-time processing.

Introduction to Information Retrieval 9 Tiered index

Introduction to Information Retrieval 10 Complete search system

Introduction to Information Retrieval 11 Take-away today 11  Text classification: definition & relevance to information retrieval  Naive Bayes: simple baseline text classifier  Theory: derivation of Naive Bayes classification rule & analysis  Evaluation of text classification: how do we know it worked / didn’t work?

Introduction to Information Retrieval Outline ❶ Recap ❷ Text classification ❸ Naive Bayes ❹ NB theory ❺ Evaluation of TC 12

Introduction to Information Retrieval 13 A text classification task: spam filtering 13 From: ‘‘’’ Subject: real estate is the only way... gem oalvgkay Anyone can buy real estate with no money down Stop paying rent TODAY ! There is no need to spend hundreds or even thousands for similar courses I am 22 years old and I have already purchased 6 properties using the methods outlined in this truly INCREDIBLE ebook. Change your life NOW ! ================================================= Click Below to order: ================================================= How would you write a program that would automatically detect and delete this type of message?

Introduction to Information Retrieval 14 Formal definition of TC: Training 14 Given:  A document space X  Documents are represented in this space – typically some type of high-dimensional space.  A fixed set of classes C = {c 1, c 2,..., c J }  The classes are human-defined for the needs of an application (e.g., relevant vs. nonrelevant).  A training set D of labeled documents with each labeled document ∈ X × C Using a learning method or learning algorithm, we then wish to learn a classifier ϒ that maps documents to classes: ϒ : X → C

Introduction to Information Retrieval 15 Formal definition of TC: Application/Testing 15 Given: a description d ∈ X of a document Determine: ϒ (d) ∈ C, that is, the class that is most appropriate for d

Introduction to Information Retrieval 16 Topic classification 16

Introduction to Information Retrieval 17 Exercise 17  Find examples of uses of text classification in information retrieval

Introduction to Information Retrieval 18 Examples of how search engines use classification 18  Language identification (classes: English vs. French etc.)  The automatic detection of spam pages (spam vs. nonspam)  The automatic detection of sexually explicit content (sexually explicit vs. not)  Topic-specific or vertical search – restrict search to a “vertical” like “related to health” (relevant to vertical vs. not)  Standing queries (e.g., Google Alerts)  Sentiment detection: is a movie or product review positive or negative (positive vs. negative)

Introduction to Information Retrieval 19 Classification methods: 1. Manual 19  Manual classification was used by Yahoo in the beginning of the web. Also: ODP, PubMed  Very accurate if job is done by experts  Consistent when the problem size and team is small  Scaling manual classification is difficult and expensive.  → We need automatic methods for classification.

Introduction to Information Retrieval 20 Classification methods: 2. Rule-based 20  Our Google Alerts example was rule-based classification.  There are IDE-type development enviroments for writing very complex rules efficiently. (e.g., Verity)  Often: Boolean combinations (as in Google Alerts)  Accuracy is very high if a rule has been carefully refined over time by a subject expert.  Building and maintaining rule-based classification systems is cumbersome and expensive.

Introduction to Information Retrieval 21 A Verity topic (a complex classification rule) 21

Introduction to Information Retrieval 22 Classification methods: 3. Statistical/Probabilistic 22  This was our definition of the classification problem – text classification as a learning problem  (i) Supervised learning of a the classification function ϒ and (ii) its application to classifying new documents  We will look at a couple of methods for doing this: Naive Bayes, Rocchio, kNN, SVMs  No free lunch: requires hand-classified training data  But this manual classification can be done by non-experts.

Introduction to Information Retrieval Outline ❶ Recap ❷ Text classification ❸ Naive Bayes ❹ NB theory ❺ Evaluation of TC 23

Introduction to Information Retrieval 24 The Naive Bayes classifier 24  The Naive Bayes classifier is a probabilistic classifier.  We compute the probability of a document d being in a class c as follows:  n d is the length of the document. (number of tokens)  P(t k |c) is the conditional probability of term t k occurring in a document of class c  P(t k |c) as a measure of how much evidence t k contributes that c is the correct class.  P(c) is the prior probability of c.  If a document’s terms do not provide clear evidence for one class vs. another, we choose the c with highest P(c).

Introduction to Information Retrieval 25 Maximum a posteriori class 25  Our goal in Naive Bayes classification is to find the “best” class.  The best class is the most likely or maximum a posteriori (MAP) class c map :

Introduction to Information Retrieval 26 Taking the log 26  Multiplying lots of small probabilities can result in floating point underflow.  Since log(xy) = log(x) + log(y), we can sum log probabilities instead of multiplying probabilities.  Since log is a monotonic function, the class with the highest score does not change.  So what we usually compute in practice is:

Introduction to Information Retrieval 27 Naive Bayes classifier 27  Classification rule:  Simple interpretation:  Each conditional parameter log is a weight that indicates how good an indicator t k is for c.  The prior log is a weight that indicates the relative frequency of c.  The sum of log prior and term weights is then a measure of how much evidence there is for the document being in the class.  We select the class with the most evidence.

Introduction to Information Retrieval 28 Parameter estimation take 1: Maximum likelihood 28  Estimate parameters and from train data: How?  Prior:  N c : number of docs in class c; N: total number of docs  Conditional probabilities:  T ct is the number of tokens of t in training documents from class c (includes multiple occurrences)  We’ve made a Naive Bayes independence assumption here:

Introduction to Information Retrieval 29 The problem with maximum likelihood estimates: Zeros 29 P(China|d) ∝ P(China) ・ P( BEIJING |China) ・ P( AND |China) ・ P( TAIPEI |China) ・ P( JOIN |China) ・ P(WTO|China)  If WTO never occurs in class China in the train set:

Introduction to Information Retrieval 30 The problem with maximum likelihood estimates: Zeros (cont) 30  If there were no occurrences of WTO in documents in class China, we’d get a zero estimate:  → We will get P(China|d) = 0 for any document that contains WTO!  Zero probabilities cannot be conditioned away.

Introduction to Information Retrieval 31 To avoid zeros: Add-one smoothing 31  Before:  Now: Add one to each count to avoid zeros:  B is the number of different words (in this case the size of the vocabulary: |V | = M)

Introduction to Information Retrieval 32 To avoid zeros: Add-one smoothing 32  Estimate parameters from the training corpus using add-one smoothing  For a new document, for each class, compute sum of (i) log of prior and (ii) logs of conditional probabilities of the terms  Assign the document to the class with the largest score

Introduction to Information Retrieval 33 Naive Bayes: Training 33

Introduction to Information Retrieval 34 Naive Bayes: Testing 34

Introduction to Information Retrieval 35 Exercise 35  Estimate parameters of Naive Bayes classifier  Classify test document

Introduction to Information Retrieval 36 Example: Parameter estimates 36 The denominators are (8 + 6) and (3 + 6) because the lengths of text c and are 8 and 3, respectively, and because the constant B is 6 as the vocabulary consists of six terms.

Introduction to Information Retrieval 37 Example: Classification 37 Thus, the classifier assigns the test document to c = China. The reason for this classification decision is that the three occurrences of the positive indicator CHINESE in d 5 outweigh the occurrences of the two negative indicators JAPAN and TOKYO.

Introduction to Information Retrieval 38 Time complexity of Naive Bayes 38  L ave : average length of a training doc, L a : length of the test doc, M a : number of distinct terms in the test doc, training set, V : vocabulary, set of classes  is the time it takes to compute all counts.  is the time it takes to compute the parameters from the counts.  Generally:  Test time is also linear (in the length of the test document).  Thus: Naive Bayes is linear in the size of the training set (training) and the test document (testing). This is optimal.

Introduction to Information Retrieval Outline ❶ Recap ❷ Text classification ❸ Naive Bayes ❹ NB theory ❺ Evaluation of TC 39

Introduction to Information Retrieval 40 Naive Bayes: Analysis 40  Now we want to gain a better understanding of the properties of Naive Bayes.  We will formally derive the classification rule... ... and state the assumptions we make in that derivation explicitly.

Introduction to Information Retrieval 41 Derivation of Naive Bayes rule 41 We want to find the class that is most likely given the document: Apply Bayes rule Drop denominator since P(d) is the same for all classes:

Introduction to Information Retrieval 42 Too many parameters / sparseness 42  There are too many parameters, one for each unique combination of a class and a sequence of words.  We would need a very, very large number of training examples to estimate that many parameters.  This is the problem of data sparseness.

Introduction to Information Retrieval 43 Naive Bayes conditional independence assumption 43 To reduce the number of parameters to a manageable size, we make the Naive Bayes conditional independence assumption: We assume that the probability of observing the conjunction of attributes is equal to the product of the individual probabilities P(X k = t k |c). Recall from earlier the estimates for these priors and conditional probabilities:

Introduction to Information Retrieval 44 Generative model 44  Generate a class with probability P(c)  Generate each of the words (in their respective positions), conditional on the class, but independent of each other, with probability P(t k |c)  To classify docs, we “reengineer” this process and find the class that is most likely to have generated the doc.

Introduction to Information Retrieval 45 Second independence assumption 45   For example, for a document in the class UK, the probability of generating QUEEN in the first position of the document is the same as generating it in the last position.  The two independence assumptions amount to the bag of words model.

Introduction to Information Retrieval 46 A different Naive Bayes model: Bernoulli model 46

Introduction to Information Retrieval 47 Violation of Naive Bayes independence assumption 47  The independence assumptions do not really hold of documents written in natural language.  Conditional independence:  Positional independence:  Exercise  Examples for why conditional independence assumption is not really true?  Examples for why positional independence assumption is not really true?  How can Naive Bayes work if it makes such inappropriate assumptions?

Introduction to Information Retrieval 48 Why does Naive Bayes work? 48  Naive Bayes can work well even though conditional independence assumptions are badly violated.  Example:  Double counting of evidence causes underestimation (0.01) and overestimation (0.99).  Classification is about predicting the correct class and not about accurately estimating probabilities.  Correct estimation ⇒ accurate prediction.  But not vice versa!

Introduction to Information Retrieval 49 Naive Bayes is not so naive 49  Naive Naive Bayes has won some bakeoffs (e.g., KDD-CUP 97)  More robust to nonrelevant features than some more complex learning methods  More robust to concept drift (changing of definition of class over time) than some more complex learning methods  Better than methods like decision trees when we have many equally important features  A good dependable baseline for text classification (but not the best)  Optimal if independence assumptions hold (never true for text, but true for some domains)  Very fast  Low storage requirements

Introduction to Information Retrieval Outline ❶ Recap ❷ Text classification ❸ Naive Bayes ❹ NB theory ❺ Evaluation of TC 50

Introduction to Information Retrieval 51 Evaluation on Reuters 51

Introduction to Information Retrieval 52 Example: The Reuters collection 52

Introduction to Information Retrieval 53 A Reuters document 53

Introduction to Information Retrieval 54 Evaluating classification 54  Evaluation must be done on test data that are independent of the training data (usually a disjoint set of instances).  It’s easy to get good performance on a test set that was available to the learner during training (e.g., just memorize the test set).  Measures: Precision, recall, F 1, classification accuracy

Introduction to Information Retrieval 55 Precision P and recall R 55 P = TP / ( TP + FP) R = TP / ( TP + FN)

Introduction to Information Retrieval 56 A combined measure: F 56  F 1 allows us to trade off precision against recall.   This is the harmonic mean of P and R:

Introduction to Information Retrieval 57 Averaging: Micro vs. Macro 57  We now have an evaluation measure (F 1 ) for one class.  But we also want a single number that measures the aggregate performance over all classes in the collection.  Macroaveraging  Compute F 1 for each of the C classes  Average these C numbers  Microaveraging  Compute TP, FP, FN for each of the C classes  Sum these C numbers (e.g., all TP to get aggregate TP)  Compute F 1 for aggregate TP, FP, FN

Introduction to Information Retrieval 58 Naive Bayes vs. other methods 58

Introduction to Information Retrieval 59 Take-away today 59  Text classification: definition & relevance to information retrieval  Naive Bayes: simple baseline text classifier  Theory: derivation of Naive Bayes classification rule & analysis  Evaluation of text classification: how do we know it worked / didn’t work?

Introduction to Information Retrieval 60 Resources 60  Chapter 13 of IIR  Resources at  Weka: A data mining software package that includes an implementation of Naive Bayes  Reuters – the most famous text classification evaluation set (but now it’s too small for realistic experiments)