View
220
Download
1
Tags:
Embed Size (px)
Citation preview
2
Keyword Queries Simple, natural language queries were designed to
enable everyone to search
Current search engines do not perform well (in general) with natural language queries
People trained (in effect) to use keywords
Compare average of about 2.3 words/Web query to average of 30 words/Community-based
Question Answering (CQA) query
Keyword selection is not always easy
Query refinement techniques can help
3
Query-Based Stemming
Make decision about stemming at query time rather than during indexing
Improved flexibility and effectiveness
Query is expanded using word variants
Documents are not stemmed
e.g., “rock climbing” expanded with “climb”, not stemmed to “climb”
4
Stem Classes Stemming generates stem classes
A stem class is the group of words that will be transformed into the same stem by the stemming algorithm
Generated by running stemmer on large corpus
e.g., Porter stemmer on TREC News on 3 stem classes with the first entry being the stem
5
Stem Classes
Stem classes are often too big and inaccurate
Modify using analysis of word co-occurrence
Assumption:
Word variants that could substitute for each other should co-occur often in documents
6
Modifying Stem Classes For all pairs of words in the stem classes, count how
often they co-occur in text windows of W words, where W is in the range 50-100
Compute a co-occurrence or association metric for each pair, which measures the degree of association between the words.
Construct a graph where the vertices represent words and the edges are between words
whose co-occurrence metric is above a threshold value, which is set empirically.
Find the connected components of the graph. These are the new stem classes.
7
Modifying Stem Classes Dices’ Coefficient is an example of a term association
measure
, where nx is the number of windows (documents) containing x
a measure of the proportion of term co-occurrence
Two vertices are in the same connected component of a graph if there is a path between them
Forms word clusters
Sample output of modification
8
Context Sensitive StemmingAccording to [Peng 07]:
Although stemming increases recall, when considering Web searches, stemming lowers precision and requires significant additional computation.
Traditional stemming transforms all query terms, i.e., it always performs the same transformation for the same query word, regardless of the context in which the words appears.
Stemming by query expansion, on the other hand, handles each query differently, i.e., considers the context of each word in a query, which is more effective.
The Porter Stemmer algorithm does not considers the semantic meaning of words and thus can make mistakes when converting a word to its base form, e.g., “news” to “new”.
[Peng 07] F. Peng, et al. Context Sensitive Stemming for Web Search. In Proc. of Conf. on Research and Development in Information Retrieval. 2007.
9
Spell Checking Important part of query processing
10-15% of all Web queries have spelling errors
Errors include typical word processing errors but also many other types, (e.g., errors extracted from query logs)
10
Spell Checking Basic approach: suggest corrections for words not found
in spelling dictionary
Many spelling errors are related to websites, products, companies, people, etc. that are unlikely to be found
Suggestions found by comparing word to words in dictionary using similarity measure
Most common similarity measure is edit distance
Number of operations required to transform one word into the other
11
Edit Distance Damerau-Levenshtein Distance
Counts the minimum number of insertions, deletions, substitutions, or transpositions of single characters required
e.g., Damerau-Levenshtein distance 1 (single-character errors)
Distance 2
12
Edit Distance Different techniques used to speed up calculation of
edit distances -- restrict to words that
start with same character (spelling errors rarely occur in the first letter)
come with similar length (spelling errors rarely occur on words with the same length)
sound the same (homophone, rules map words to codes)
Last option uses a (same) phonetic code to group words
e.g., Soundex
14
Spelling Correction Issues Ranking corrections (> 1 possible corrections for an error)
“Did you mean...” feature requires accurate ranking of possible corrections (more likely: the best suggestion)
Context Choosing right suggestion depends on context (other words)
e.g., lawers → lowers, lawyers, layers, lasers, lagers but trial lawers → trial lawyers
Run-on errors (word boundaries are skipped/mistyped) e.g., “mainscourcebank”
Missing spaces can be considered another single character error in right framework
15
Noisy Channel Model Address the issues of ranking, context, and run-on errors
User chooses word w based on probability distribution P(w)
Called the language model
Can capture context information about the frequency of occurrence of a word in text, e.g., P(w1 | w2)
The probability of observing a word, given that another one has just been observed
User writes word w, but noisy channel causes word e to be written instead with probability P(e | w)
Called error model
Represents information about the frequency of spelling errors
16
Noisy Channel Model Need to estimate probability of correction – to represent
info. about the frequency of different types of errors
P(w | e) = P(e | w)P(w), i.e., the probability that given a written word e, the correct word is w
Estimate language model using context
P(w) = λP(w) + (1 − λ)P(w | wp)
where wp is a previous word of w, and λ is a parameter which specifies the relative importance of P(w) & P(w | wp)
Examples.
“fish tink”: “tank” and “think” both likely corrections, but
Error ModelProbability of
Word Occurrence
P(tank | fish) > P(think | fish)
Probability of WordCo-occurrence
17
Noisy Channel Model Language model probabilities estimated using corpus
and query log
Both simple and complex methods have been used for estimating error model
Simple approach: assume that all words with same edit distance have same probability, only edit distance 1 and 2 considered
More complex approach: incorporate estimates based on common typing errors
• Estimates are derived from large collections of text by finding many pairs of (in)correctly spelled words
18
Cucerzan and Brill (2004)’s Spell Checker using (i) query log (QL) and (ii) dictionary (D)
1. Tokenize the query.
2. For each token, a set of alternative words and pairs of words is found using an edit distance modified by weighting certain types of errors. The data structure that is searched for the alternatives contains words and pairs from QL and D.
3. The noisy channel model is used to select the best correction.
4. The process of looking for alternatives and finding the best correction is repeated until no better correction is found.
19
Query Expansion
A variety of (semi)-automatic query expansion techniques have been developed
Goal: improve effectiveness by matching related terms
Semi-automatic techniques require user interaction to select best expansion terms
Query suggestion is a related technique
Alternative queries, not necessarily more terms
20
Query Expansion Approaches usually based on an analysis of term co-
occurrence either in
(i) the entire document collection,
(ii) a large collection of queries, or
(iii) the top-ranked documents in a result list
Query-based stemming also an expansion technique
Automatic expansion based on general thesaurus, but not effective
Does not take context into account
21
Term Association Measures Key to effective expansion: choose appropriate words
for the context of the query
e.g., “aquarium” for “tank” in “tropical fish tanks”, but not for “armor for tanks”
Dice’s Coefficient: computing the term-occurrence
Mutual Information: measure co-occurrence words
log P(a, b)
P(a)P(b)
rank na . nb
nab
22
Term Association Measures Mutual Information measure favors low frequency terms
Expected Mutual Information Measure (EMIM) corrects the problem of MIM by weighting MIM values
using P(a, b)
where N is the number of documents in a collection
favoring high-frequency terms, which can be a problem
23
Term Association Measures Pearson’s Chi-squared (χ2) measure
Compares the number of co-occurrences of two words with the expected number of co-occurrences
if the two words were independent
Normalizes this comparison by the expected number
Also limited form focused on word co-occurrence
independentco-occurrences
25
Association Measures Associated words are of little use for expanding the query
“tropical fish”
Expansion based on whole query takes context into account
e.g., using Dice with term “tropical fish” gives the following highly associated words:
goldfish, reptile, aquarium, coral, frog, exotic, stripe, regent, pet, wet
Impractical for all possible queries, other approaches used to achieve this effect
26
Other Approaches Pseudo-relevance feedback
Expansion terms based on top retrieved documents for initial query
Context vectors
Represent words by the co-occurred words
• e.g., top 35 most strongly associated words for “aquarium” (using Dice’s coefficient):
Rank words for a query by ranking context vectors
27
Other Approaches Query logs
Best source of information about queries and related terms
• Short pieces of text and click data
e.g., most frequent words in queries containing “tropical fish” from MSN log:
stores, pictures, live, sale, types, clipart, blue, freshwater, aquarium, supplies
Query suggestion based on finding similar queries
• Group based on click data
28
Query Expansion on Web Searches According to [Crabtree 07] automatic query expansion (on
Web searches)
Enhances recall but not precision: expanding queries using 20 terms improves the recall of the result set, but hurts
the precision due to query drift.
Helps identifying other relevant pages by identifying additional terms that occur on relevant pages
Relies on both local and global document analysis (considering documents in the result set or using a
thesauri/properties of the entire corpus, respectively) as sources for refinement terms
[Crabtree 07] D. Crabtree et al. Exploiting Underrepresented Query Aspects for Automatic Query Expansion. In Proc. of Conf. on Knowledge Discovery and Data Mining. 2007.
29
Relevance Feedback User identifies relevant (and maybe non-relevant)
documents in the initial result list
System modifies query using terms from those documents and re-ranks documents
Example of simple ML algorithm using training data
But, very little training data
Pseudo-relevance feedback just assumes top-ranked documents are relevant – no user input
31
Relevance Feedback Example
If we assume top 10 are relevant, most frequent terms are (with frequency):
a (926), td (535), href (495), http (357), width (345), com (343), nbsp (316), www (260), tr (239), htm (233), class (225), jpg (221)
Too many stopwords and HTML expressions
Use only snippets and remove stopwords
tropical (26), fish (28), aquarium (8), freshwater (5), breeding (4), information (3), species (3), tank (2), Badman’s (2), page (2), hobby (2), forums (2)
32
Relevance Feedback Both relevance and pseudo-relevance feedback are
effective, but not used in many applications
Pseudo-relevance feedback has reliability issues, especially with queries that don’t retrieve
many relevant documents
Some applications use relevance feedback
Filtering, “more like this”
Query suggestion more popular
May be less accurate, but can work if initial query fails
33
Context and Personalization If a query has the same words as another query, results
will be the same regardless of
Who submitted the query
Why the query was submitted
Where the query was submitted
What other queries were submitted in the same session
These other factors (the context) could have a significant impact on relevance
Difficult to incorporate into ranking
34
User Models Generate user profiles based on documents that the
person looks at
Such as Web pages visited, email messages, or word processing documents on the desktop
Modify user’s queries using words from his profile
Generally not effective
Imprecise profiles, information needs can change significantly
35
Query Logs Query logs provide important contextual information that
can be used effectively
Context in this case is
Previous queries that are the same
Previous queries that are similar
Query sessions including the same query
Query history for individuals could be used for caching
36
Local Search Location is context
Local search uses geographic information to modify the ranking of search results
Location derived from the query text
Location of the device where the query originated
Examples
“Underworld 3 cape cod”
“Underworld 3” from mobile device in Hyannis
37
Local Search Identify the geographic region associated with Web pages
Use location metadata that has been manually added to the document
Or identify locations such as place names, city names, or country names in text
Identify the geographic region associated with the query
10-15% of queries contain some location reference
Rank Web pages using location information in addition to text and link-based features
38
Snippet Generation
Query-dependent document summary
Simple summarization approach
Rank each sentence in a document using a significance factor
Select the top sentences for the summary
First proposed by Luhn in 50’s
39
Sentence Selection Significance factor for a sentence is calculated based
on the occurrence of significant words
If fd,w is the frequency of word w in document d, then w is a significant word if it is not a stopword, i.e.,
a high-frequency word, and
where sd is the number of sentences in document d
Text is bracketed by significant words (limit on number of non-significant words in bracket)
40
Sentence Selection Significance factor for bracketed text spans is computed
by (i) dividing the square of the number of significant words in the span by (ii) the total number of words
Example.
Significance factor = 42/7 = 2.3
The limit set for non-significantwords in a bracket is 4
41
Snippet Generation Involves more features than just significance factor
Example. (A sentence-based approach) on a news story
1. Whether the sentence is a heading
2. Whether it is the 1st or 2nd line of the document
3. The total number of query terms occurring in the sentence
4. The number of unique query terms in the sentence
5. The longest contiguous run of query words in the sentence
6. A density measure of query words (i.e., significance factor)
Weighted combination of features used to rank sentences
42
Blog Snippets
According to [Parapar 10], in performing a Blog search
Considering reader’s comments improves the quality of post snippets and thus enhances users’ access to relevant post in a result list
Indexing comments, as well as the post itself, enhances the recall of a blog search, which is more important in blog than web search, since searchers are usually interested in all recent posts about a specific topic)
[Parapar 10] J. Parapar et al. Blog Snippets: A Comments-Biased Approach. In Proc. of Intl. Conf. on Research and
Development in Information Retrieval . 2010.
43
Clustering Results Result lists often contain documents related to different
aspects of the query topic
Clustering is used to group related documents to simplify browsing
Example clusters for query “tropical fish”
45
Clustering Results Requirements
Efficiency
Must be specific to each query and are based on the top-ranked documents for that query
Typically based on snippets
Easy to understand
Can be difficult to assign good labels to groups
Monothetic vs. polythetic classification
46
Types of Classification Monothetic
Every member of a class has the property that defines the class
Typical assumption made by users
Easy to understand
Polythetic
Members of classes share many properties but there is no single defining property
Most clustering algorithms (e.g., K-means) produce this type of output
47
Classification Example
Possible monothetic classification
{ D1,D2 } (labeled using a) and { D2,D3 } (labeled e)
Possible polythetic classification
{ D2,D3,D4 }, D1
Labels?
D1 = {a, b, c}D2 = {a, d, e}D3 = {d, e, f, g}D4 = {f, g}