Tolerant Retrieval. Searching the Dictionary Tolerant Retrieval. Information Retrieval & Extraction Misbhauddin 1
|
|
- Luke Wiggins
- 5 years ago
- Views:
Transcription
1 Tolerant Retrieval Searching the Dictionary Tolerant Retrieval Information Retrieval & Extraction Misbhauddin 1
2 Query Retrieval Dictionary data structures Tolerant retrieval Wild-card queries Soundex Spelling correction Information Retrieval & Extraction Misbhauddin 2
3 Dictionary Data Structure The dictionary data structure stores the term vocabulary, document frequency, pointers to each postings list... in what data structure? Information Retrieval & Extraction Misbhauddin 3
4 Dictionary Data Structure Two main choices: Hash table Tree Some IR systems use hashes, some trees Information Retrieval & Extraction Misbhauddin 4
5 Hash Tables Each vocabulary term is hashed to an integer Pros: Lookup is faster than for a tree: O(1) Cons: No easy way to find minor variants: judgment/judgement No prefix search [tolerant retrieval] If vocabulary keeps growing, need to occasionally do the expensive operation of rehashing everything Information Retrieval & Extraction Misbhauddin 5
6 Trees Simplest: binary tree More usual: B-trees Trees require a standard ordering of characters and hence strings but we standardly have one Pros: Solves the prefix problem (terms starting with hyp) Cons: Slower: O(log M) [and this requires balanced tree] Rebalancing binary trees is expensive But B-trees mitigate the rebalancing problem Information Retrieval & Extraction Misbhauddin 6
7 Binary Trees a-m Root n-z a-hu hy-m n-sh si-z 7 Information Retrieval & Extraction Misbhauddin 7
8 B-Trees Definition: Every internal node has a number of children in the interval [a,b] where a, b are appropriate natural numbers, e.g., [2,4]. a-hu hy-m n-z Information Retrieval & Extraction Misbhauddin 8
9 Wildcard Queries (*) Information Retrieval & Extraction Misbhauddin 9
10 Wildcard Queries mon*: find all docs containing any word beginning with mon (trailing wild-card queries) Easy with binary tree (or B-tree): retrieve all words in range: mon w < moo *mon: find words ending in mon : harder (leading wild-card queries) Maintain an additional B-tree for terms backwards (reverse B-tree). Can retrieve all words in range: nom w < non. Exercise: From this, how can we enumerate all terms meeting the wild-card query pro*cent? Information Retrieval & Extraction Misbhauddin 10
11 Query Processing At this point, we have an enumeration of all terms in the dictionary that match the wild-card query. We still have to look up the postings for each enumerated term. E.g., consider the query: se*ate ANDfil*er This may result in the execution of many Boolean AND queries. Information Retrieval & Extraction Misbhauddin 11
12 Index Variations for Wildcard Queries Two strategies: Permuterm indexes k-gram indexes Information Retrieval & Extraction Misbhauddin 12
13 Permuterm How can we handle * s in the middle of query term? co*tion We could look up co* AND *tion in a B-tree and intersect the two term sets Expensive The solution: transform wild-card queries so that the * s occur at the end This gives rise to the Permuterm Index. Information Retrieval & Extraction Misbhauddin 13
14 Permuterm For term hello, index under: hello$, ello$h, llo$he, lo$hel, o$hell where $ is a special symbol Queries: X lookup on X$ {Standard Query no wildcard} X* lookup on $X* {Trailing wildcard query} *X lookup on X$* {Leading wildcard query} X*Y lookup on Y$X* {Wildcard-in-the-middle query} *X* lookup on X* {Leading & Trailing wildcard query} Exercise: X*Y*Z Query = hel*o X=hel, Y=o Lookup o$hel* Information Retrieval & Extraction Misbhauddin 14
15 Permuterm Query Processing Rotate query wild-card to the right Now use B-tree lookup as before Permuterm problem: quadruples lexicon size (Empirical Observation) Information Retrieval & Extraction Misbhauddin 15
16 Bigram (k-gram) Indexes Enumerate all k-grams (sequence of k chars) occurring in any term e.g., from text April is the cruelest month we get the 2-grams (bigrams) $a, ap, pr, ri, il, l$, $i, is, s$, $t, th, he, e$, $c, cr, ru, ue, el, le, es, st, t$, $m, mo, on, nt, h$ $ is a special word boundary symbol Maintain a second inverted index from bigrams to dictionary terms that match each bigram Information Retrieval & Extraction Misbhauddin 16
17 Bigram Index Example The k-gram index finds terms based on a query consisting of k-grams (here k=2) $m mace madden mo on among among amortize around Information Retrieval & Extraction Misbhauddin 17
18 Processing Wildcards Query mon* can now be run as $m AND mo AND on Which is All terms starting with m, containing mo and containing on Gets terms that match AND version of our wildcard query But we d enumerate moon/mormon False Positives Must post-filter these terms against query Surviving enumerated terms are then looked up in the termdocument inverted index Fast, space efficient (compared to permuterm) Information Retrieval & Extraction Misbhauddin 18
19 Processing Wildcard Queries As before, we must execute a Boolean query for each enumerated, filtered term. Wild-cards can result in expensive query execution (very large disjunctions ) pyth* AND prog* If you encourage laziness people will respond! Type your search terms, use * if you need to. E.g., Alex* will match Alexander. Search Information Retrieval & Extraction Misbhauddin 19
20 Soundex Algorithm Information Retrieval & Extraction Misbhauddin 20
21 Soundex Class of heuristics to expand a query into phonetic equivalents Language-specific: Mainly for names Example: Chebyshev -> Tchebysheff Invented for the US Censes in 1918 Information Retrieval & Extraction Misbhauddin 21
22 Soundex Typical Algorithm Turn every token to be indexed into a 4-character reduced form Do the same with query terms Build and search an index on the reduced forms When the query needs a Soundex match Information Retrieval & Extraction Misbhauddin 22
23 Soundex Typical Algorithm 1. Retain the first letter of the word 2. Change all occurrences of the following letters to 0 (zero) A, E, I, O, U, H, W, Y 3. Change letters to digits as follows: B, F, P, V -> 1 C, G, J, K, Q, S, X, Z, -> 2 D, T -> 3 L -> 4 M, N -> 5 R -> 6 Information Retrieval & Extraction Misbhauddin 23
24 Soundex Typical Algorithm 4. Remove all pairs of consecutive digits 5. Remove all zeroes from the resulting string 6. Pad the resulting string with trailing zeroes and return the first four positions, which will be of the form <Upper-case Letter> <digit> <digit> <digit> Example: Herman => H655 Will Hermann generate the same code? Information Retrieval & Extraction Misbhauddin 24
25 Soundex Soundex is the classic algorithm, provided by most databases (Oracle, Microsoft) Select * from hr.employee Where SOUNDEX(lastname) = SOUNDEX( Smith ) How useful is soundex? Not very for Information retrieval Lowers the precision Okay for High Recall tasks (E.g Interpol) Information Retrieval & Extraction Misbhauddin 25
26 Spelling Correction Information Retrieval & Extraction Misbhauddin 26
27 Spell Correction Correcting user queries to retrieve right answers Two Approaches Isolated Word Check each word on its own for misspelling Will not catch typos in correctly spelled words Example: Form -> From Context-Sensitive Look at surroinding words Example: I flew form hofuf to riyadh Information Retrieval & Extraction Misbhauddin 27
28 Query Misspellings We can either Retrieve documents indexed by the correct spelling Retrieve several suggested alternative queries with the correct spelling Example: Did you mean? Information Retrieval & Extraction Misbhauddin 28
29 Isolated word correction Fundamental premise there is a lexicon from which the correct spellings come Two basic choices for this A standard lexicon such as Webster s English Dictionary An industry-specific lexicon hand-maintained The lexicon of the indexed corpus E.g., all words on the web All names, acronyms etc. (Including the misspellings) Information Retrieval & Extraction Misbhauddin 29
30 Isolated word correction Given a lexicon and a character sequence Q, return the words in the lexicon closest to Q What s closest? Several alternatives Edit distance (Levenshtein distance) Weighted edit distance n-gram overlap Information Retrieval & Extraction Misbhauddin 30
31 Intro. Dynamic Programming Fibonacci Series 0, 1, 1, 2, 3, 5, 8, N t = N t-1 + N t-2 Solutions Divide and Conquer Recursion Solve the sub-problems recursively Issue - solving many sub-problems again and again Dynamic Programming Memoization Store the solution of these sub-problems so that we do not have to solve them again Information Retrieval & Extraction Misbhauddin 31
32 Edit Distance (Levenshtein) Given two strings S 1 and S 2, the minimum number of operations to convert one to the other Operations are typically character-level Insert, Delete, Replace, (Transposition) E.g., the edit distance from dof to dog is 1 From cat to act is 2 from cat to dog is 3 (Just 1 with transpose.) Generally found by dynamic programming Information Retrieval & Extraction Misbhauddin 32
33 Edit Distance (Levenshtein) S1 Gold Operation: Deletion S1 Gold Operation: Insertion S2 Old Edit Distance: 1 S2 Goaled Edit Distance: 2 S1 S2 Gold Sold Operation: Replace Edit Distance: 1 Information Retrieval & Extraction Misbhauddin 33
34 Edit Distance (Levenshtein): Terminology A string S = S 1, S 2, S 3, S 4, S n Caterpillar (n=11) A substring S = S 1, S 2, S 3, S 4, S k S n Caterpillar (k=3) To find the edit distance between strings S and T, we need to examine their substrings S n -> S 1 j for all j from n-1 to 1 T m -> S 1 k for all j from m-1 to 1 Information Retrieval & Extraction Misbhauddin 34
35 Edit Distance (Levenshtein): Function E(j, k) = D(S 1.j, T 1..k ) E(j, 0) = D(S 1.j, ) => J deletions to get an empty string => j E(0, k) = D(, T 1..k ) => K insertions => k Information Retrieval & Extraction Misbhauddin 35
36 Edit Distance (Levenshtein): Formula E(j, 0) = j E(0, k) = k E(j, k) = min E j 1, k + 1 deletion E j, k insertion E j 1, k 1, Sj = TK Nothing to do E j 1, k 1 + 1, Sj T K Replace Information Retrieval & Extraction Misbhauddin 36
37 E(j, k) = min k E j 1, k + 1 deletion E j, k insertion E j 1, k 1, Sj = TK Nothing to do E j 1, k 1 + 1, Sj T K Replace gold 4 gol 3 go 2 g g go goo good j Information Retrieval & Extraction Misbhauddin 37
38 Weighted Edit Distance As Edit Distance, but the weight of an operation depends on the character(s) involved Meant to capture OCR or keyboard errors Example: m more likely to be mis-typed as n than as q Therefore, replacing m by n is a smaller edit distance than by q This may be formulated as a probability model Requires weight matrix as input Modify dynamic programming to handle weights Information Retrieval & Extraction Misbhauddin 38
39 Weighted Edit Distance Modified Formula E(j, k) = min E j 1, k + X deletion E j, k 1 + Y insertion E j 1, k 1, Sj = TK Nothing to do E j 1, k 1 + Z, Sj T K Replace X = Cost of Deletion Y = Cost of Insertion Z = Lookup in the Weight Matrix for Cost(S j, T k ) Information Retrieval & Extraction Misbhauddin 39
40 Using Edit Distance Given query, first enumerate all character sequences within a preset (weighted) edit distance (e.g., 2) Intersect this set with list of correct words Show terms you found to user as suggestions Alternatively, We can look up all possible corrections in our inverted index and return all docs slow We can run with a single most likely correction The alternatives disempower the user, but save a round of interaction with the user Information Retrieval & Extraction Misbhauddin 40
41 Edit distance to all dictionary terms? Given a (misspelled) query do we compute its edit distance to every dictionary term? Expensive and slow Alternative? How do we cut the set of candidate dictionary terms? One possibility is to use n-gram overlap for this This can also be used by itself for spelling correction Information Retrieval & Extraction Misbhauddin 41
42 n-gram overlap Enumerate all the n-grams in the query string as well as in the lexicon Use the n-gram index (recall wild-card search) to retrieve all lexicon terms matching any of the query n-grams Threshold by number of matching n-grams Variants weight by keyboard layout, etc. Information Retrieval & Extraction Misbhauddin 42
43 Example with trigrams Suppose the text is november Trigrams are nov, ove, vem, emb, mbe, ber. The query is december Trigrams are dec, ece, cem, emb, mbe, ber. So 3 trigrams overlap (of 6 in each term) How can we turn this into a normalized measure of overlap? Information Retrieval & Extraction Misbhauddin 43
44 One option Jaccard coefficient A commonly-used measure of overlap Let X and Y be two sets; then the J.C. is X Ç Y / X ÈY Equals 1 when X and Y have the same elements and zero when they are disjoint X and Y don t have to be of the same size Always assigns a number between 0 and 1 Now threshold to decide if you have a match E.g., if J.C. > 0.8, declare a match Information Retrieval & Extraction Misbhauddin 44
45 Context-sensitive spell correction Text: I flew from Heathrow to Narita. Consider the phrase query flew form Heathrow We d like to respond Did you mean flew from Heathrow? because no docs matched the query phrase. Information Retrieval & Extraction Misbhauddin 45
46 Context-sensitive spell correction Need surrounding context to catch this. First idea: retrieve dictionary terms close (in weighted edit distance) to each query term Now try all possible resulting phrases with one word fixed at a time flew from heathrow fled form heathrow flea form heathrow Hit-based spelling correction: Suggest the alternative that has lots of hits. Information Retrieval & Extraction Misbhauddin 46
3-1. Dictionaries and Tolerant Retrieval. Most slides were adapted from Stanford CS 276 course and University of Munich IR course.
3-1. Dictionaries and Tolerant Retrieval Most slides were adapted from Stanford CS 276 course and University of Munich IR course. 1 Dictionary data structures for inverted indexes Sec. 3.1 The dictionary
More informationDictionaries and tolerant retrieval CE-324 : Modern Information Retrieval Sharif University of Technology
Dictionaries and tolerant retrieval CE-324 : Modern Information Retrieval Sharif University of Technology M. Soleymani Fall 2014 Most slides have been adapted from: Profs. Nayak & Raghavan (CS- 276, Stanford)
More informationDictionaries and tolerant retrieval CE-324 : Modern Information Retrieval Sharif University of Technology
Dictionaries and tolerant retrieval CE-324 : Modern Information Retrieval Sharif University of Technology M. Soleymani Fall 2016 Most slides have been adapted from: Profs. Nayak & Raghavan (CS- 276, Stanford)
More informationDictionaries and Tolerant retrieval
Dictionaries and Tolerant retrieval Slides adapted from Stanford CS297:Introduction to Information Retrieval A skipped lecture The type/token distinction Terms are normalized types put in the dictionary
More informationDictionaries and tolerant retrieval. Slides by Manning, Raghavan, Schutze
Dictionaries and tolerant retrieval 1 Ch. 2 Recap of the previous lecture The type/token distinction Terms are normalized types put in the dictionary Tokenization problems: Hyphens, apostrophes, compounds,
More informationRecap of the previous lecture. This lecture. A naïve dictionary. Introduction to Information Retrieval. Dictionary data structures Tolerant retrieval
Ch. 2 Recap of the previous lecture Introduction to Information Retrieval Lecture 3: Dictionaries and tolerant retrieval The type/token distinction Terms are normalized types put in the dictionary Tokenization
More informationRecap of last time CS276A Information Retrieval
Recap of last time CS276A Information Retrieval Index compression Space estimation Lecture 4 This lecture Tolerant retrieval Wild-card queries Spelling correction Soundex Wild-card queries Wild-card queries:
More informationInformation Retrieval
Information Retrieval Dictionaries & Tolerant Retrieval Gintarė Grigonytė gintare@ling.su.se Department of Linguistics and Philology Uppsala University Slides based on previous IR course given by Jörg
More informationInformation Retrieval
Information Retrieval Suan Lee - Information Retrieval - 03 Dictionaries and Tolerant Retrieval 1 03 Dictionaries and Tolerant Retrieval - Information Retrieval - 03 Dictionaries and Tolerant Retrieval
More informationOUTLINE. Documents Terms. General + Non-English English. Skip pointers. Phrase queries
WECHAT GROUP 1 OUTLINE Documents Terms General + Non-English English Skip pointers Phrase queries 2 Phrase queries We want to answer a query such as [stanford university] as a phrase. Thus The inventor
More informationOverview. Lecture 3: Index Representation and Tolerant Retrieval. Type/token distinction. IR System components
Overview Lecture 3: Index Representation and Tolerant Retrieval Information Retrieval Computer Science Tripos Part II Ronan Cummins 1 Natural Language and Information Processing (NLIP) Group 1 Recap 2
More informationInformation Retrieval
Introduction to Information Retrieval CS3245 Information Retrieval Lecture 4: Dictionaries and Tolerant Retrieval4 Last Time: Terms and Postings Details Ch. 2 Skip pointers Encoding a tree-like structure
More informationText Technologies for Data Science INFR Indexing (2) Instructor: Walid Magdy
Text Technologies for Data Science INFR11145 Indexing (2) Instructor: Walid Magdy 10-Oct-2017 Lecture Objectives Learn more about indexing: Structured documents Extent index Index compression Data structure
More informationText Technologies for Data Science INFR Indexing (2) Instructor: Walid Magdy
Text Technologies for Data Science INFR11145 Indexing (2) Instructor: Walid Magdy 03-Oct-2018 Lecture Objectives Learn more about indexing: Structured documents Extent index Index compression Data structure
More informationInformation Retrieval
Introduction to Information Retrieval Lecture 3: Dictionaries and tolerant retrieval 1 Outline Dictionaries Wildcard queries skip Edit distance skip Spelling correction skip Soundex 2 Inverted index Our
More informationNatural Language Processing and Information Retrieval
Natural Language Processing and Information Retrieval Indexing and Vector Space Models Alessandro Moschitti Department of Computer Science and Information Engineering University of Trento Email: moschitti@disi.unitn.it
More informationhttp://www.xkcd.com/628/ Results Summaries Spelling Correction David Kauchak cs160 Fall 2009 adapted from: http://www.stanford.edu/class/cs276/handouts/lecture3-tolerantretrieval.ppt http://www.stanford.edu/class/cs276/handouts/lecture8-evaluation.ppt
More informationIntroduction to Information Retrieval (Manning, Raghavan, Schutze)
Introduction to Information Retrieval (Manning, Raghavan, Schutze) Chapter 3 Dictionaries and Tolerant retrieval Chapter 4 Index construction Chapter 5 Index compression Content Dictionary data structures
More informationWeb Information Retrieval. Lecture 4 Dictionaries, Index Compression
Web Information Retrieval Lecture 4 Dictionaries, Index Compression Recap: lecture 2,3 Stemming, tokenization etc. Faster postings merges Phrase queries Index construction This lecture Dictionary data
More informationPart 2: Boolean Retrieval Francesco Ricci
Part 2: Boolean Retrieval Francesco Ricci Most of these slides comes from the course: Information Retrieval and Web Search, Christopher Manning and Prabhakar Raghavan Content p Term document matrix p Information
More informationBoolean retrieval & basics of indexing CE-324: Modern Information Retrieval Sharif University of Technology
Boolean retrieval & basics of indexing CE-324: Modern Information Retrieval Sharif University of Technology M. Soleymani Fall 2013 Most slides have been adapted from: Profs. Manning, Nayak & Raghavan (CS-276,
More informationINFO 4300 / CS4300 Information Retrieval. slides adapted from Hinrich Schütze s, linked from
INFO 4300 / CS4300 Information Retrieval slides adapted from Hinrich Schütze s, linked from http://informationretrieval.org/ IR 3: Dictionaries and tolerant retrieval Paul Ginsparg Cornell University,
More informationCSCI 5417 Information Retrieval Systems Jim Martin!
CSCI 5417 Information Retrieval Systems Jim Martin! Lecture 4 9/1/2011 Today Finish up spelling correction Realistic indexing Block merge Single-pass in memory Distributed indexing Next HW details 1 Query
More informationBoolean retrieval & basics of indexing CE-324: Modern Information Retrieval Sharif University of Technology
Boolean retrieval & basics of indexing CE-324: Modern Information Retrieval Sharif University of Technology M. Soleymani Fall 2015 Most slides have been adapted from: Profs. Manning, Nayak & Raghavan lectures
More informationCourse structure & admin. CS276A Text Information Retrieval, Mining, and Exploitation. Dictionary and postings files: a fast, compact inverted index
CS76A Text Information Retrieval, Mining, and Exploitation Lecture 1 Oct 00 Course structure & admin CS76: two quarters this year: CS76A: IR, web (link alg.), (infovis, XML, PP) Website: http://cs76a.stanford.edu/
More informationLecture 2: Encoding models for text. Many thanks to Prabhakar Raghavan for sharing most content from the following slides
Lecture 2: Encoding models for text Many thanks to Prabhakar Raghavan for sharing most content from the following slides Recap of the previous lecture Overview of course topics Basic inverted indexes:
More informationInformation Retrieval
Introduction to Information Retrieval Lecture 4: Index Construction 1 Plan Last lecture: Dictionary data structures Tolerant retrieval Wildcards Spell correction Soundex a-hu hy-m n-z $m mace madden mo
More informationData-analysis and Retrieval Boolean retrieval, posting lists and dictionaries
Data-analysis and Retrieval Boolean retrieval, posting lists and dictionaries Hans Philippi (based on the slides from the Stanford course on IR) April 25, 2018 Boolean retrieval, posting lists & dictionaries
More informationInformation Retrieval
Information Retrieval Suan Lee - Information Retrieval - 04 Index Construction 1 04 Index Construction - Information Retrieval - 04 Index Construction 2 Plan Last lecture: Dictionary data structures Tolerant
More informationPart 3: The term vocabulary, postings lists and tolerant retrieval Francesco Ricci
Part 3: The term vocabulary, postings lists and tolerant retrieval Francesco Ricci Most of these slides comes from the course: Information Retrieval and Web Search, Christopher Manning and Prabhakar Raghavan
More informationSearch Engines. Gertjan van Noord. September 17, 2018
Search Engines Gertjan van Noord September 17, 2018 About the course Information about the course is available from: http://www.let.rug.nl/vannoord/college/zoekmachines/ Last week Normalization (case,
More informationCS347. Lecture 2 April 9, Prabhakar Raghavan
CS347 Lecture 2 April 9, 2001 Prabhakar Raghavan Today s topics Inverted index storage Compressing dictionaries into memory Processing Boolean queries Optimizing term processing Skip list encoding Wild-card
More informationToday s topics CS347. Inverted index storage. Inverted index storage. Processing Boolean queries. Lecture 2 April 9, 2001 Prabhakar Raghavan
Today s topics CS347 Lecture 2 April 9, 2001 Prabhakar Raghavan Inverted index storage Compressing dictionaries into memory Processing Boolean queries Optimizing term processing Skip list encoding Wild-card
More informationPreliminary draft (c)2008 Cambridge UP
DRAFT! February 16, 2008 Cambridge University Press. Feedback welcome. 49 3 Dictionariesandtolerant retrieval WILDCARD QUERY In Chapters 1 and 2 we developed the ideas underlying inverted indexes for handling
More informationMultimedia Information Extraction and Retrieval Indexing and Query Answering
Multimedia Information Extraction and Retrieval Indexing and Query Answering Ralf Moeller Hamburg Univ. of Technology Recall basic indexing pipeline Documents to be indexed. Friends, Romans, countrymen.
More informationIndexing and Searching
Indexing and Searching Berlin Chen Department of Computer Science & Information Engineering National Taiwan Normal University References: 1. Modern Information Retrieval, chapter 8 2. Information Retrieval:
More informationInformation Retrieval and Applications
Information Retrieval and Applications Knowledge Discovery and Data Mining 2 (VU) (707.004) Roman Kern, Heimo Gursch KTI, TU Graz 2014-03-19 Roman Kern, Heimo Gursch (KTI, TU Graz) Information Retrieval
More informationIndexing and Searching
Indexing and Searching Berlin Chen Department of Computer Science & Information Engineering National Taiwan Normal University References: 1. Modern Information Retrieval, chapter 9 2. Information Retrieval:
More informationInverted Indexes. Indexing and Searching, Modern Information Retrieval, Addison Wesley, 2010 p. 5
Inverted Indexes Indexing and Searching, Modern Information Retrieval, Addison Wesley, 2010 p. 5 Basic Concepts Inverted index: a word-oriented mechanism for indexing a text collection to speed up the
More informationA Modern spell(1) Abhinav Upadhyay EuroBSDCon 2017, Paris
A Modern spell(1) Abhinav Upadhyay EuroBSDCon 2017, Paris Outline Shortcomings in the old spell(1) Feature Requirements of a modern spell(1) Implementation Details of new spell(1)
More informationBoolean Queries. Keywords combined with Boolean operators:
Query Languages 1 Boolean Queries Keywords combined with Boolean operators: OR: (e 1 OR e 2 ) AND: (e 1 AND e 2 ) BUT: (e 1 BUT e 2 ) Satisfy e 1 but not e 2 Negation only allowed using BUT to allow efficient
More informationCMSC 341 Lecture 16/17 Hashing, Parts 1 & 2
CMSC 341 Lecture 16/17 Hashing, Parts 1 & 2 Prof. John Park Based on slides from previous iterations of this course Today s Topics Overview Uses and motivations of hash tables Major concerns with hash
More informationΕΠΛ660. Ανάκτηση µε το µοντέλο διανυσµατικού χώρου
Ανάκτηση µε το µοντέλο διανυσµατικού χώρου Σηµερινό ερώτηµα Typically we want to retrieve the top K docs (in the cosine ranking for the query) not totally order all docs in the corpus can we pick off docs
More informationMultimedia Information Extraction and Retrieval Term Frequency Inverse Document Frequency
Multimedia Information Extraction and Retrieval Term Frequency Inverse Document Frequency Ralf Moeller Hamburg Univ. of Technology Acknowledgement Slides taken from presentation material for the following
More informationChapter 5 Data Structures Algorithm Theory WS 2016/17 Fabian Kuhn
Chapter 5 Data Structures Algorithm Theory WS 06/ Fabian Kuhn Examples Dictionary: Operations: insert(key,value), delete(key), find(key) Implementations: Linked list: all operations take O(n) time (n:
More informationStanford University Computer Science Department Solved CS347 Spring 2001 Mid-term.
Stanford University Computer Science Department Solved CS347 Spring 2001 Mid-term. Question 1: (4 points) Shown below is a portion of the positional index in the format term: doc1: position1,position2
More informationIndex extensions. Manning, Raghavan and Schütze, Chapter 2. Daniël de Kok
Index extensions Manning, Raghavan and Schütze, Chapter 2 Daniël de Kok Today We will discuss some extensions to the inverted index to accommodate boolean processing: Skip pointers: improve performance
More informationInformation Retrieval
Information Retrieval Suan Lee - Information Retrieval - 05 Index Compression 1 05 Index Compression - Information Retrieval - 05 Index Compression 2 Last lecture index construction Sort-based indexing
More informationDDS Dynamic Search Trees
DDS Dynamic Search Trees 1 Data structures l A data structure models some abstract object. It implements a number of operations on this object, which usually can be classified into l creation and deletion
More informationIntroduction to. CS276: Information Retrieval and Web Search Christopher Manning and Prabhakar Raghavan. Lecture 4: Index Construction
Introduction to Information Retrieval CS276: Information Retrieval and Web Search Christopher Manning and Prabhakar Raghavan Lecture 4: Index Construction 1 Plan Last lecture: Dictionary data structures
More informationIntroduction to Information Retrieval
Introduction to Information Retrieval CS276: Information Retrieval and Web Search Pandu Nayak and Prabhakar Raghavan Hamid Rastegari Lecture 4: Index Construction Plan Last lecture: Dictionary data structures
More informationLecture 3: Phrasal queries and wildcards
Lecture 3: Phrasal queries and wildcards Trevor Cohn (tcohn@unimelb.edu.au) COMP90042, 2015, Semester 1 What we ll learn today Building on the boolean index and query mechanism to support multi-word queries
More informationINDEX CONSTRUCTION 1
1 INDEX CONSTRUCTION PLAN Last lecture: Dictionary data structures Tolerant retrieval Wildcards Spell correction Soundex a-hu hy-m n-z $m mace madden This time: mo among amortize Index construction on
More informationBirkbeck (University of London)
Birkbeck (University of London) MSc Examination for Internal Students Department of Computer Science and Information Systems Information Retrieval and Organisation (COIY64H7) Credit Value: 5 Date of Examination:
More information信息检索与搜索引擎 Introduction to Information Retrieval GESC1007
信息检索与搜索引擎 Introduction to Information Retrieval GESC1007 Philippe Fournier-Viger Full professor School of Natural Sciences and Humanities philfv8@yahoo.com Spring 2019 1 Last week We have discussed in
More informationEfficiency. Efficiency: Indexing. Indexing. Efficiency Techniques. Inverted Index. Inverted Index (COSC 488)
Efficiency Efficiency: Indexing (COSC 488) Nazli Goharian nazli@cs.georgetown.edu Difficult to analyze sequential IR algorithms: data and query dependency (query selectivity). O(q(cf max )) -- high estimate-
More informationInformation Retrieval
Introduction to CS3245 Lecture 5: Index Construction 5 CS3245 Last Time Dictionary data structures Tolerant retrieval Wildcards Spelling correction Soundex a-hu hy-m n-z $m mace madden mo among amortize
More informationIndexing and Searching
Indexing and Searching Introduction How to retrieval information? A simple alternative is to search the whole text sequentially Another option is to build data structures over the text (called indices)
More informationA6-R3: DATA STRUCTURE THROUGH C LANGUAGE
A6-R3: DATA STRUCTURE THROUGH C LANGUAGE NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. 2. PART ONE is to be answered in the TEAR-OFF
More informationCS 525: Advanced Database Organization 04: Indexing
CS 5: Advanced Database Organization 04: Indexing Boris Glavic Part 04 Indexing & Hashing value record? value Slides: adapted from a course taught by Hector Garcia-Molina, Stanford InfoLab CS 5 Notes 4
More informationData Structures and Methods. Johan Bollen Old Dominion University Department of Computer Science
Data Structures and Methods Johan Bollen Old Dominion University Department of Computer Science jbollen@cs.odu.edu http://www.cs.odu.edu/ jbollen January 20, 2004 Page 1 Lecture Objectives 1. To this point:
More informationLCP Array Construction
LCP Array Construction The LCP array is easy to compute in linear time using the suffix array SA and its inverse SA 1. The idea is to compute the lcp values by comparing the suffixes, but skip a prefix
More informationText Analytics. Index-Structures for Information Retrieval. Ulf Leser
Text Analytics Index-Structures for Information Retrieval Ulf Leser Content of this Lecture Inverted files Storage structures Phrase and proximity search Building and updating the index Using a RDBMS Ulf
More informationInformation Retrieval
Introduction to CS3245 Lecture 5: Index Construction 5 Last Time Dictionary data structures Tolerant retrieval Wildcards Spelling correction Soundex a-hu hy-m n-z $m mace madden mo among amortize on abandon
More information1 Format. 2 Topics Covered. 2.1 Minimal Spanning Trees. 2.2 Union Find. 2.3 Greedy. CS 124 Quiz 2 Review 3/25/18
CS 124 Quiz 2 Review 3/25/18 1 Format You will have 83 minutes to complete the exam. The exam may have true/false questions, multiple choice, example/counterexample problems, run-this-algorithm problems,
More informationIntroduction to. Algorithms. Lecture 5
6.006- Introduction to Algorithms Lecture 5 Prof. Manolis Kellis Unit #2 Genomes, Hashing, and Dictionaries 2 (hashing out ) Our plan ahead Today: Genomes, Dictionaries, i and Hashing Intro, basic operations,
More informationPractice problems Set 2
Practice problems Set 2 1) Write a program to obtain transpose of a 4 x 4 matrix. The transpose of matrix is obtained by exchanging the elements of each row with the elements of the corresponding column.
More informationInformation Retrieval
Information Retrieval Natural Language Processing: Lecture 12 30.11.2017 Kairit Sirts Homework 4 things that seemed to work Bidirectional LSTM instead of unidirectional Change LSTM activation to sigmoid
More informationHash Table and Hashing
Hash Table and Hashing The tree structures discussed so far assume that we can only work with the input keys by comparing them. No other operation is considered. In practice, it is often true that an input
More informationTRIE BASED METHODS FOR STRING SIMILARTIY JOINS
TRIE BASED METHODS FOR STRING SIMILARTIY JOINS Venkat Charan Varma Buddharaju #10498995 Department of Computer and Information Science University of MIssissippi ENGR-654 INFORMATION SYSTEM PRINCIPLES RESEARCH
More informationText Analytics. Index-Structures for Information Retrieval. Ulf Leser
Text Analytics Index-Structures for Information Retrieval Ulf Leser Content of this Lecture Inverted files Storage structures Phrase and proximity search Building and updating the index Using a RDBMS Ulf
More informationRecap: lecture 2 CS276A Information Retrieval
Recap: lecture 2 CS276A Information Retrieval Stemming, tokenization etc. Faster postings merges Phrase queries Lecture 3 This lecture Index compression Space estimation Corpus size for estimates Consider
More informationCS 245: Database System Principles
CS 2: Database System Principles Notes 4: Indexing Chapter 4 Indexing & Hashing value record value Hector Garcia-Molina CS 2 Notes 4 1 CS 2 Notes 4 2 Topics Conventional indexes B-trees Hashing schemes
More information1 Dynamic Programming
Recitation 13 Dynamic Programming Parallel and Sequential Data Structures and Algorithms, 15-210 (Fall 2013) November 20, 2013 1 Dynamic Programming Dynamic programming is a technique to avoid needless
More informationLecture Notes on Tries
Lecture Notes on Tries 15-122: Principles of Imperative Computation Thomas Cortina, Frank Pfenning, Rob Simmons, Penny Anderson Lecture 21 November 10, 2014 1 Introduction In the data structures implementing
More informationPace University. Fundamental Concepts of CS121 1
Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction
More informationInformation Retrieval
Information Retrieval WS 2016 / 2017 Lecture 5, Tuesday November 22 nd, 2016 (Fuzzy Search, Edit Distance, q-gram Index) Prof. Dr. Hannah Bast Chair of Algorithms and Data Structures Department of Computer
More information1 Dynamic Programming
Recitation 13 Dynamic Programming Parallel and Sequential Data Structures and Algorithms, 15-210 (Spring 2013) April 17, 2013 1 Dynamic Programming Dynamic programming is a technique to avoid needless
More informationCSE 562 Database Systems
Goal of Indexing CSE 562 Database Systems Indexing Some slides are based or modified from originals by Database Systems: The Complete Book, Pearson Prentice Hall 2 nd Edition 08 Garcia-Molina, Ullman,
More informationDigital Libraries: Language Technologies
Digital Libraries: Language Technologies RAFFAELLA BERNARDI UNIVERSITÀ DEGLI STUDI DI TRENTO P.ZZA VENEZIA, ROOM: 2.05, E-MAIL: BERNARDI@DISI.UNITN.IT Contents 1 Recall: Inverted Index..........................................
More informationChapter 13: Query Processing
Chapter 13: Query Processing! Overview! Measures of Query Cost! Selection Operation! Sorting! Join Operation! Other Operations! Evaluation of Expressions 13.1 Basic Steps in Query Processing 1. Parsing
More informationIndexing. UCSB 290N. Mainly based on slides from the text books of Croft/Metzler/Strohman and Manning/Raghavan/Schutze
Indexing UCSB 290N. Mainly based on slides from the text books of Croft/Metzler/Strohman and Manning/Raghavan/Schutze All slides Addison Wesley, 2008 Table of Content Inverted index with positional information
More informationECE 122. Engineering Problem Solving Using Java
ECE 122 Engineering Problem Solving Using Java Lecture 27 Linear and Binary Search Overview Problem: How can I efficiently locate data within a data structure Searching for data is a fundamental function
More informationLecture 7. Transform-and-Conquer
Lecture 7 Transform-and-Conquer 6-1 Transform and Conquer This group of techniques solves a problem by a transformation to a simpler/more convenient instance of the same problem (instance simplification)
More informationRecall from Last Time: AVL Trees
CSE 326 Lecture 8: Getting to now AVL Trees Today s Topics: Balanced Search Trees AVL Trees and Rotations Splay trees Covered in Chapter 4 of the text Recall from Last Time: AVL Trees AVL trees are height-balanced
More informationLecture 4: Advanced Data Structures
Lecture 4: Advanced Data Structures Prakash Gautam https://prakashgautam.com.np/6cs008 info@prakashgautam.com.np Agenda Heaps Binomial Heap Fibonacci Heap Hash Tables Bloom Filters Amortized Analysis 2
More informationLecture Notes on Tries
Lecture Notes on Tries 15-122: Principles of Imperative Computation Thomas Cortina Notes by Frank Pfenning Lecture 24 April 19, 2011 1 Introduction In the data structures implementing associative arrays
More informationInformation Retrieval
Introduction to Information Retrieval CS3245 Information Retrieval Lecture 6: Index Compression 6 Last Time: index construction Sort- based indexing Blocked Sort- Based Indexing Merge sort is effective
More informationMore on indexing CE-324: Modern Information Retrieval Sharif University of Technology
More on indexing CE-324: Modern Information Retrieval Sharif University of Technology M. Soleymani Fall 2014 Most slides have been adapted from: Profs. Manning, Nayak & Raghavan (CS-276, Stanford) Plan
More informationChapter 12: Query Processing
Chapter 12: Query Processing Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Overview Chapter 12: Query Processing Measures of Query Cost Selection Operation Sorting Join
More informationInformation Retrieval
Information Retrieval Suan Lee - Information Retrieval - 01 Boolean Retrieval 1 01 Boolean Retrieval - Information Retrieval - 01 Boolean Retrieval 2 Introducing Information Retrieval and Web Search -
More information1 Probability Review. CS 124 Section #8 Hashing, Skip Lists 3/20/17. Expectation (weighted average): the expectation of a random quantity X is:
CS 124 Section #8 Hashing, Skip Lists 3/20/17 1 Probability Review Expectation (weighted average): the expectation of a random quantity X is: x= x P (X = x) For each value x that X can take on, we look
More informationInformation Retrieval. Chap 7. Text Operations
Information Retrieval Chap 7. Text Operations The Retrieval Process user need User Interface 4, 10 Text Text logical view Text Operations logical view 6, 7 user feedback Query Operations query Indexing
More informationQuestions. 6. Suppose we were to define a hash code on strings s by:
Questions 1. Suppose you are given a list of n elements. A brute force method to find duplicates could use two (nested) loops. The outer loop iterates over position i the list, and the inner loop iterates
More informationHash Open Indexing. Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1
Hash Open Indexing Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1 Warm Up Consider a StringDictionary using separate chaining with an internal capacity of 10. Assume our buckets are implemented
More information3-2. Index construction. Most slides were adapted from Stanford CS 276 course and University of Munich IR course.
3-2. Index construction Most slides were adapted from Stanford CS 276 course and University of Munich IR course. 1 Ch. 4 Index construction How do we construct an index? What strategies can we use with
More informationCOMP171. Hashing.
COMP171 Hashing Hashing 2 Hashing Again, a (dynamic) set of elements in which we do search, insert, and delete Linear ones: lists, stacks, queues, Nonlinear ones: trees, graphs (relations between elements
More information1 Static-to-Dynamic Transformations
You re older than you ve ever been and now you re even older And now you re even older And now you re even older You re older than you ve ever been and now you re even older And now you re older still
More informationBoolean Retrieval. Manning, Raghavan and Schütze, Chapter 1. Daniël de Kok
Boolean Retrieval Manning, Raghavan and Schütze, Chapter 1 Daniël de Kok Boolean query model Pose a query as a boolean query: Terms Operations: AND, OR, NOT Example: Brutus AND Caesar AND NOT Calpuria
More information! A relational algebra expression may have many equivalent. ! Cost is generally measured as total elapsed time for
Chapter 13: Query Processing Basic Steps in Query Processing! Overview! Measures of Query Cost! Selection Operation! Sorting! Join Operation! Other Operations! Evaluation of Expressions 1. Parsing and
More information