- •List of Tables
- •List of Figures
- •Table of Notation
- •Preface
- •Boolean retrieval
- •An example information retrieval problem
- •Processing Boolean queries
- •The extended Boolean model versus ranked retrieval
- •References and further reading
- •The term vocabulary and postings lists
- •Document delineation and character sequence decoding
- •Obtaining the character sequence in a document
- •Choosing a document unit
- •Determining the vocabulary of terms
- •Tokenization
- •Dropping common terms: stop words
- •Normalization (equivalence classing of terms)
- •Stemming and lemmatization
- •Faster postings list intersection via skip pointers
- •Positional postings and phrase queries
- •Biword indexes
- •Positional indexes
- •Combination schemes
- •References and further reading
- •Dictionaries and tolerant retrieval
- •Search structures for dictionaries
- •Wildcard queries
- •General wildcard queries
- •Spelling correction
- •Implementing spelling correction
- •Forms of spelling correction
- •Edit distance
- •Context sensitive spelling correction
- •Phonetic correction
- •References and further reading
- •Index construction
- •Hardware basics
- •Blocked sort-based indexing
- •Single-pass in-memory indexing
- •Distributed indexing
- •Dynamic indexing
- •Other types of indexes
- •References and further reading
- •Index compression
- •Statistical properties of terms in information retrieval
- •Dictionary compression
- •Dictionary as a string
- •Blocked storage
- •Variable byte codes
- •References and further reading
- •Scoring, term weighting and the vector space model
- •Parametric and zone indexes
- •Weighted zone scoring
- •Learning weights
- •The optimal weight g
- •Term frequency and weighting
- •Inverse document frequency
- •The vector space model for scoring
- •Dot products
- •Queries as vectors
- •Computing vector scores
- •Sublinear tf scaling
- •Maximum tf normalization
- •Document and query weighting schemes
- •Pivoted normalized document length
- •References and further reading
- •Computing scores in a complete search system
- •Index elimination
- •Champion lists
- •Static quality scores and ordering
- •Impact ordering
- •Cluster pruning
- •Components of an information retrieval system
- •Tiered indexes
- •Designing parsing and scoring functions
- •Putting it all together
- •Vector space scoring and query operator interaction
- •References and further reading
- •Evaluation in information retrieval
- •Information retrieval system evaluation
- •Standard test collections
- •Evaluation of unranked retrieval sets
- •Evaluation of ranked retrieval results
- •Assessing relevance
- •A broader perspective: System quality and user utility
- •System issues
- •User utility
- •Results snippets
- •References and further reading
- •Relevance feedback and query expansion
- •Relevance feedback and pseudo relevance feedback
- •The Rocchio algorithm for relevance feedback
- •Probabilistic relevance feedback
- •When does relevance feedback work?
- •Relevance feedback on the web
- •Evaluation of relevance feedback strategies
- •Pseudo relevance feedback
- •Indirect relevance feedback
- •Summary
- •Global methods for query reformulation
- •Vocabulary tools for query reformulation
- •Query expansion
- •Automatic thesaurus generation
- •References and further reading
- •XML retrieval
- •Basic XML concepts
- •Challenges in XML retrieval
- •A vector space model for XML retrieval
- •Evaluation of XML retrieval
- •References and further reading
- •Exercises
- •Probabilistic information retrieval
- •Review of basic probability theory
- •The Probability Ranking Principle
- •The 1/0 loss case
- •The PRP with retrieval costs
- •The Binary Independence Model
- •Deriving a ranking function for query terms
- •Probability estimates in theory
- •Probability estimates in practice
- •Probabilistic approaches to relevance feedback
- •An appraisal and some extensions
- •An appraisal of probabilistic models
- •Bayesian network approaches to IR
- •References and further reading
- •Language models for information retrieval
- •Language models
- •Finite automata and language models
- •Types of language models
- •Multinomial distributions over words
- •The query likelihood model
- •Using query likelihood language models in IR
- •Estimating the query generation probability
- •Language modeling versus other approaches in IR
- •Extended language modeling approaches
- •References and further reading
- •Relation to multinomial unigram language model
- •The Bernoulli model
- •Properties of Naive Bayes
- •A variant of the multinomial model
- •Feature selection
- •Mutual information
- •Comparison of feature selection methods
- •References and further reading
- •Document representations and measures of relatedness in vector spaces
- •k nearest neighbor
- •Time complexity and optimality of kNN
- •The bias-variance tradeoff
- •References and further reading
- •Exercises
- •Support vector machines and machine learning on documents
- •Support vector machines: The linearly separable case
- •Extensions to the SVM model
- •Multiclass SVMs
- •Nonlinear SVMs
- •Experimental results
- •Machine learning methods in ad hoc information retrieval
- •Result ranking by machine learning
- •References and further reading
- •Flat clustering
- •Clustering in information retrieval
- •Problem statement
- •Evaluation of clustering
- •Cluster cardinality in K-means
- •Model-based clustering
- •References and further reading
- •Exercises
- •Hierarchical clustering
- •Hierarchical agglomerative clustering
- •Time complexity of HAC
- •Group-average agglomerative clustering
- •Centroid clustering
- •Optimality of HAC
- •Divisive clustering
- •Cluster labeling
- •Implementation notes
- •References and further reading
- •Exercises
- •Matrix decompositions and latent semantic indexing
- •Linear algebra review
- •Matrix decompositions
- •Term-document matrices and singular value decompositions
- •Low-rank approximations
- •Latent semantic indexing
- •References and further reading
- •Web search basics
- •Background and history
- •Web characteristics
- •The web graph
- •Spam
- •Advertising as the economic model
- •The search user experience
- •User query needs
- •Index size and estimation
- •Near-duplicates and shingling
- •References and further reading
- •Web crawling and indexes
- •Overview
- •Crawling
- •Crawler architecture
- •DNS resolution
- •The URL frontier
- •Distributing indexes
- •Connectivity servers
- •References and further reading
- •Link analysis
- •The Web as a graph
- •Anchor text and the web graph
- •PageRank
- •Markov chains
- •The PageRank computation
- •Hubs and Authorities
- •Choosing the subset of the Web
- •References and further reading
- •Bibliography
- •Author Index
242 |
|
12 Language models for information retrieval |
|
different sequences, which we have never observed before, and so the model |
|
|
has to generalize beyond the observed data to allow unknown words and se- |
|
|
quences. This interpretation is not so clear in the IR case, where a document |
|
|
is finite and usually fixed. The strategy we adopt in IR is as follows. We |
|
|
pretend that the document d is only a representative sample of text drawn |
|
|
from a model distribution, treating it like a fine-grained topic. We then esti- |
|
|
mate a language model from this sample, and use that model to calculate the |
|
|
probability of observing any word sequence, and, finally, we rank documents |
|
|
according to their probability of generating the query. |
|
? |
Exercise 12.1 |
[ ] |
Including stop probabilities in the calculation, what will the sum of the probability |
||
estimates of all strings in the language of length 1 be? Assume that you generate a |
||
|
word and then decide whether to stop or not (i.e., the null string is not part of the |
|
|
language). |
|
|
Exercise 12.2 |
[ ] |
|
If the stop probability is omitted from calculations, what will the sum of the scores |
|
|
assigned to strings in the language of length 1 be? |
|
|
Exercise 12.3 |
[ ] |
|
What is the likelihood ratio of the document according to M1 and M2 in Exam- |
|
|
ple 12.2? |
|
|
Exercise 12.4 |
[ ] |
|
No explicit STOP probability appeared in Example 12.2. Assuming that the STOP |
|
|
probability of each model is 0.1, does this change the likelihood ratio of a document |
|
|
according to the two models? |
|
|
Exercise 12.5 |
[ ] |
|
How might a language model be used in a spelling correction system? In particular, |
|
|
consider the case of context-sensitive spelling correction, and correcting incorrect us- |
|
|
ages of words, such as their in Are you their? (See Section 3.5 (page 65) for pointers to |
|
|
some literature on this topic.) |
|
12.2 The query likelihood model
12.2.1 Using query likelihood language models in IR
QUERY LIKELIHOOD MODEL
Language modeling is a quite general formal approach to IR, with many variant realizations. The original and basic method for using language models in IR is the query likelihood model. In it, we construct from each document d in the collection a language model Md. Our goal is to rank documents by P(d|q), where the probability of a document is interpreted as the likelihood that it is relevant to the query. Using Bayes rule (as introduced in Section 11.1, page 220), we have:
P(d|q) = P(q|d)P(d)/P(q)
Online edition (c) 2009 Cambridge UP
12.2 The query likelihood model |
243 |
P(q) is the same for all documents, and so can be ignored. The prior probability of a document P(d) is often treated as uniform across all d and so it can also be ignored, but we could implement a genuine prior which could include criteria like authority, length, genre, newness, and number of previous people who have read the document. But, given these simplifications, we return results ranked by simply P(q|d), the probability of the query q under the language model derived from d. The Language Modeling approach thus attempts to model the query generation process: Documents are ranked by the probability that a query would be observed as a random sample from the respective document model.
The most common way to do this is using the multinomial unigram language model, which is equivalent to a multinomial Naive Bayes model (page 263), where the documents are the classes, each treated in the estimation as a separate “language”. Under this model, we have that:
(12.8) |
P(q|Md) = Kq ∏ P(t|Md)tft,d |
|
t V |
where, again Kq |
= Ld!/(tft1,d!tft2,d! · · · tftM,d!) is the multinomial coefficient |
for the query q, which we will henceforth ignore, since it is a constant for a particular query.
For retrieval based on a language model (henceforth LM), we treat the generation of queries as a random process. The approach is to
1.Infer a LM for each document.
2.Estimate P(q|Mdi ), the probability of generating the query according to each of these document models.
3.Rank the documents according to these probabilities.
The intuition of the basic model is that the user has a prototype document in mind, and generates a query based on words that appear in this document. Often, users have a reasonable idea of terms that are likely to occur in documents of interest and they will choose query terms that distinguish these documents from others in the collection.3 Collection statistics are an integral part of the language model, rather than being used heuristically as in many other approaches.
12.2.2Estimating the query generation probability
In this section we describe how to estimate P(q|Md). The probability of producing the query given the LM Md of document d using maximum likelihood
3. Of course, in other cases, they do not. The answer to this within the language modeling approach is translation language models, as briefly discussed in Section 12.4.
Online edition (c) 2009 Cambridge UP
244 |
12 Language models for information retrieval |
estimation (MLE) and the unigram assumption is:
(12.9) |
ˆ |
ˆ |
|
tft,d |
P(q|Md) = ∏ Pmle(t|Md) = ∏ |
Ld |
|||
|
|
t q |
t q |
where Md is the language model of document d, tft,d is the (raw) term frequency of term t in document d, and Ld is the number of tokens in document d. That is, we just count up how often each word occurred, and divide through by the total number of words in the document d. This is the same method of calculating an MLE as we saw in Section 11.3.2 (page 226), but now using a multinomial over word counts.
The classic problem with using language models is one of estimation (the ˆ symbol on the P’s is used above to stress that the model is estimated): terms appear very sparsely in documents. In particular, some words will not have appeared in the document at all, but are possible words for the information need, which the user may have used in the query. If we estimate
ˆ( | ) = 0 for a term missing from a document , then we get a strict
P t Md d
conjunctive semantics: documents will only give a query non-zero probability if all of the query terms appear in the document. Zero probabilities are clearly a problem in other uses of language models, such as when predicting the next word in a speech recognition application, because many words will be sparsely represented in the training data. It may seem rather less clear whether this is problematic in an IR application. This could be thought of as a human-computer interface issue: vector space systems have generally preferred more lenient matching, though recent web search developments have tended more in the direction of doing searches with such conjunctive semantics. Regardless of the approach here, there is a more general problem of estimation: occurring words are also badly estimated; in particular, the probability of words occurring once in the document is normally overestimated, since their one occurrence was partly by chance. The answer to this (as we saw in Section 11.3.2, page 226) is smoothing. But as people have come to understand the LM approach better, it has become apparent that the role of smoothing in this model is not only to avoid zero probabilities. The smoothing of terms actually implements major parts of the term weighting component (Exercise 12.8). It is not just that an unsmoothed model has conjunctive semantics; an unsmoothed model works badly because it lacks parts of the term weighting component.
Thus, we need to smooth probabilities in our document language models: to discount non-zero probabilities and to give some probability mass to unseen words. There’s a wide space of approaches to smoothing probability distributions to deal with this problem. In Section 11.3.2 (page 226), we already discussed adding a number (1, 1/2, or a small α) to the observed
Online edition (c) 2009 Cambridge UP
12.2 The query likelihood model |
245 |
counts and renormalizing to give a probability distribution.4 In this section we will mention a couple of other smoothing methods, which involve combining observed counts with a more general reference probability distribution. The general approach is that a non-occurring term should be possible in a query, but its probability should be somewhat close to but no more likely than would be expected by chance from the whole collection. That is, if tft,d = 0 then
ˆ( | ) ≤ cf /
P t Md t T
where cft is the raw count of the term in the collection, and T is the raw size (number of tokens) of the entire collection. A simple idea that works well in practice is to use a mixture between a document-specific multinomial distribution and a multinomial distribution estimated from the entire collection:
(12.10) |
ˆ |
ˆ |
ˆ |
P(t|d) = λPmle(t|Md) + (1 |
− λ)Pmle(t|Mc) |
where 0 < λ < 1 and Mc is a language model built from the entire document collection. This mixes the probability from the document with the general collection frequency of the word. Such a model is referred to as a
LINEAR linear interpolation language model.5 Correctly setting λ is important to the INTERPOLATION good performance of this model.
An alternative is to use a language model built from the whole collection BAYESIAN SMOOTHING as a prior distribution in a Bayesian updating process (rather than a uniform distribution, as we saw in Section 11.3.2). We then get the following equation:
|
|
|
ˆ |
(12.11) |
Pˆ(t |
d) = |
tft,d + αP(t|Mc) |
|
| |
|
Ld + α |
Both of these smoothing methods have been shown to perform well in IR experiments; we will stick with the linear interpolation smoothing method for the rest of this section. While different in detail, they are both conceptually similar: in both cases the probability estimate for a word present in the document combines a discounted MLE and a fraction of the estimate of its prevalence in the whole collection, while for words not present in a document, the estimate is just a fraction of the estimate of the prevalence of the word in the whole collection.
The role of smoothing in LMs for IR is not simply or principally to avoid estimation problems. This was not clear when the models were first proposed, but it is now understood that smoothing is essential to the good properties
4.In the context of probability theory, (re)normalization refers to summing numbers that cover an event space and dividing them through by their sum, so that the result is a probability distribution which sums to 1. This is distinct from both the concept of term normalization in Chapter 2 and the concept of length normalization in Chapter 6, which is done with a L2 norm.
5.It is also referred to as Jelinek-Mercer smoothing.
Online edition (c) 2009 Cambridge UP
246 |
12 Language models for information retrieval |
|
of the models. The reason for this is explored in Exercise 12.8. The extent |
|
of smoothing in these two models is controlled by the λ and α parameters: a |
|
small value of λ or a large value of α means more smoothing. This parameter |
|
can be tuned to optimize performance using a line search (or, for the linear |
|
interpolation model, by other methods, such as the expectation maximimiza- |
|
tion algorithm; see Section 16.5, page 368). The value need not be a constant. |
|
One approach is to make the value a function of the query size. This is useful |
|
because a small amount of smoothing (a “conjunctive-like” search) is more |
|
suitable for short queries, while a lot of smoothing is more suitable for long |
|
queries. |
|
To summarize, the retrieval ranking for a query q under the basic LM for |
|
IR we have been considering is given by: |
(12.12) |
P(d|q) P(d) ∏((1 − λ)P(t|Mc) + λP(t|Md)) |
|
t q |
This equation captures the probability that the document that the user had in mind was in fact d.
Example 12.3: Suppose the document collection contains two documents:
•d1: Xyzzy reports a profit but revenue is down
•d2: Quorus narrows quarter loss but revenue decreases further
The model will be MLE unigram models from the documents and collection, mixed with λ = 1/2.
Suppose the query is revenue down. Then:
(12.13) |
P(q|d1) |
= |
[(1/8 + 2/16)/2] × [(1/8 + 1/16)/2] |
|
|
= |
1/8 × 3/32 = 3/256 |
|
P(q|d2) |
= |
[(1/8 + 2/16)/2] × [(0/8 + 1/16)/2] |
|
|
= |
1/8 × 1/32 = 1/256 |
So, the ranking is d1 > d2.
12.2.3Ponte and Croft’s Experiments
Ponte and Croft (1998) present the first experiments on the language modeling approach to information retrieval. Their basic approach is the model that we have presented until now. However, we have presented an approach where the language model is a mixture of two multinomials, much as in (Miller et al. 1999, Hiemstra 2000) rather than Ponte and Croft’s multivariate Bernoulli model. The use of multinomials has been standard in most subsequent work in the LM approach and experimental results in IR, as well as evidence from text classification which we consider in Section 13.3
Online edition (c) 2009 Cambridge UP
12.2 The query likelihood model |
|
|
|
247 |
||
|
|
|
|
|
|
|
|
|
|
Precision |
|
|
|
|
Rec. |
tf-idf |
LM |
%chg |
|
|
|
0.0 |
0.7439 |
0.7590 |
+2.0 |
|
|
|
0.1 |
0.4521 |
0.4910 |
+8.6 |
|
|
|
0.2 |
0.3514 |
0.4045 |
+15.1 |
* |
|
|
0.3 |
0.2761 |
0.3342 |
+21.0 |
* |
|
|
0.4 |
0.2093 |
0.2572 |
+22.9 |
* |
|
|
0.5 |
0.1558 |
0.2061 |
+32.3 |
* |
|
|
0.6 |
0.1024 |
0.1405 |
+37.1 |
* |
|
|
0.7 |
0.0451 |
0.0760 |
+68.7 |
* |
|
|
0.8 |
0.0160 |
0.0432 |
+169.6 |
* |
|
|
0.9 |
0.0033 |
0.0063 |
+89.3 |
|
|
|
1.0 |
0.0028 |
0.0050 |
+76.9 |
|
|
|
Ave |
0.1868 |
0.2233 |
+19.55 |
* |
|
Figure 12.4 Results of a comparison of tf-idf with language modeling (LM) term weighting by Ponte and Croft (1998). The version of tf-idf from the INQUERY IR system includes length normalization of tf. The table gives an evaluation according to 11-point average precision with significance marked with a * according to a Wilcoxon signed rank test. The language modeling approach always does better in these experiments, but note that where the approach shows significant gains is at higher levels of recall.
(page 263), suggests that it is superior. Ponte and Croft argued strongly for the effectiveness of the term weights that come from the language modeling approach over traditional tf-idf weights. We present a subset of their results in Figure 12.4 where they compare tf-idf to language modeling by evaluating TREC topics 202–250 over TREC disks 2 and 3. The queries are sentencelength natural language queries. The language modeling approach yields significantly better results than their baseline tf-idf based term weighting approach. And indeed the gains shown here have been extended in subsequent work.
? |
Exercise 12.6 |
[ ] |
|
||
|
Consider making a language model from the following training text: |
|
|
the martian has landed on the latin pop sensation ricky martin |
|
a. Under a MLE-estimated unigram probability model, what are P(the) and P(martian)? b. Under a MLE-estimated bigram model, what are P(sensation|pop) and P(pop|the)?
Online edition (c) 2009 Cambridge UP