Supporting Efficient Top-k Queries in Type-Ahead
Description: Supporting Efficient Top-k Queries in Type-Ahead Search Guoliang Li1, Jiannan Wang1, Chen Li2, Jianhua Feng1 1 Tsinghua University 2 UC Irvine, Bimaple Technology Inc. SIGIR 2012, Portland, Oregon Query suggestions Li, Wang, Li, and Feng
Related Topics
Download Presentation
"Supporting Efficient Top-k Queries in Type-Ahead" is the property of its rightful owner. Permission is granted to download and print the materials on this website for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Presentation Transcript
slide1. Supporting Efficient Top-k Queries in Type-Ahead Search Guoliang Li1, Jiannan Wang1, Chen Li2, Jianhua Feng1
1 Tsinghua University
2 UC Irvine, Bimaple Technology Inc. SIGIR 2012, Portland, Oregon<br>
slide2. Query suggestions Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 2<br>
slide3. Type-ahead search (instant search) Li, Wang, Li, and Feng 3 Finding answers instantly! Tsinghua/UC Irvine/Bimaple<br>
slide4. ipubmed.ics.uci.edu Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 4<br>
slide5. Advantages of instant fuzzy search Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 5 Save time<br>
slide6. Challenges Speed
“100ms rule”
Prefix matching
Fuzzy matching Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 6<br>
slide7. Techniques for computing top-k answers in instant fuzzy search without generating all candidates Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 7 Contributions Ranking framework
Index Structures
Algorithms
Experimental evaluation<br>
slide8. Outline Problem Formulation
Instant exact search
Instant fuzzy search
Experiments Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 8<br>
slide9. Problem Formulation Data: records
Query:
w1, w2, …, wm
wm partial keyword
Answers: k best records Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 9 graph icde li Prefix<br>
slide10. Aggregate Ranking Framework Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 10 graph, gray, gross, icde, lin, liu Record Query graph icde li Score(graph) Score(icde) Score(lin) Score(liu) Max<br>
slide11. Trie Index structures g r a i l c d e m o p y h s u p s i u i n u Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 11 Inverted Index<br>
slide12. {graph, icde, li} k=1 Basic Solution g r a i l c d e m o p y h s u p s i u i n u graph icde lin liu Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 12<br>
slide13. Optimization 1: Heap-based Method Aggregate Max Heap graph icde lin liu GetMax() Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 13<br>
slide14. Optimization 2: Top-k List-Merging Algorithm Example: Threshold algorithm Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 14<br>
slide15. Efficient Random Access: How? g r a i l c d e m o p y h s u p s i u i n u Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 15<br>
slide16. Forward index [Ji et al. WWW’09] Keyword ID Weight Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 16 g r a i l c d e m o p y h s u p s i u i n u 1 2 3 4 5 6 7 8 9 [1, 1] [1, 2] [3,3] [4, 4] [3, 4] [1, 4] [1, 4] [2,2] [5, 6] [5, 6] [5, 6] [7, 8] [7, 9] [9, 9]<br>
slide17. g r a i l c d e m o p y h s u p s i u i n u 1 2 3 4 5 6 7 8 9 [1, 1] [1, 2] [3,3] [4, 4] [3, 4] [1, 4] [1, 4] [2,2] [5, 6] [5, 6] [5, 6] [7, 8] [7, 9] [9, 9] Random Access Using Forward Index 7 ? Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 17<br>
slide18. Outline Problem Formulation
Instant exact search
Instant fuzzy search
Experiments Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 18<br>
slide19. Ranking Framework (Fuzzy matching) Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 19 Aggregate graph, gray, icdm, gross, lin, liu Record Query graph icde li Score(graph) Sim(icde,icdm)
*Score(icdm) Score(lin) Score(liu) Max Sim(li,i)
*Score(lin)<br>
slide20. {graph, icde, li}, similarity threshold τ=0.45 Computing Similar Prefixes [Ji et al. WWW’09] g r a i l c d e m o p y h s u p s i u i n u Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 20<br>
slide21. Top-k Algorithm icde icdm lin liu lui Max Heap similarity ×0.5 ×1 ×1 ×0.5 ×0.5 icde icdm ×0.5 ×1 Max Heap Max Heap GetMax() sum ×1 graph icde li graph GetMax() GetMax() Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 21<br>
slide22. Probing on Forward Lists Efficient Random Access (method 1) Binary Search: [5,6], [7,9], [7,8], [9,9], 7, 8, 9 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 22 g r a i l c d e m o p y h s u p s i u i n u 1 2 3 4 5 6 7 8 9 [1, 1] [1, 2] [3,3] [4, 4] [3, 4] [1, 4] [1, 4] [2,2] [5, 6] [5, 6] [5, 6] [7, 8] [7, 9] [9, 9]<br>
slide23. Efficient Random Access (method 2) Probing on Trie Leaf Nodes g r a i l c d l m o p y h s u p s i u i n u 1 2 3 4 5 6 7 8 9 [1,1] [1,2] [3,3] [4,4] [3,4] [1,4] [1,4] [2,2] [5,6] [5,6] [5,6] [7,8] [7,9] [9,9] li, 0.5 li, 0.5 li, 1 li, 1 li, 0.5 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 23<br>
slide24. Optimization by materializing union lists g r a i l c d e m o p y h s u p s i u i n u Time/space tradeoff
Cost-based analysis for a space budget Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 24<br>
slide25. Outline Problem Formulation
Instant exact search
Instant fuzzy search
Experiments Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 25<br>
slide26. Data sets and index costs Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 26<br>
slide27. Exact Search (DBLP) k=10, similarity threshold τ=0.6 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 27<br>
slide28. Exact Search (DBLP) k=10, similarity threshold τ=0.6 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 28<br>
slide29. Fuzzy Search DBLP, k=10, similarity threshold τ=0.6 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 29 TA NRA<br>
slide30. Other results (not included in the paper) More general ranking (e.g., positional information)
Other languages
Location-based search Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 30<br>
slide31. Conclusions (ipubmed.ics.uci.edu) Efficient techniques for instant fuzzy search Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 31<br>
slide32. Acknowledgements The authors have financial interest in Bimaple Technology Inc., a company currently commercializing some of the techniques described in this publication.
Chen Li was partially supported by NIH grant 1R21LM010143-01A1.
Guoliang Li, Jianan Wang, and Jianhua Feng were partly supported by the National Natural Science Foundation of China under Grant No. 61003004, the National Grand Fundamental Research 973 Program of China under Grant No. 2011CB302206, a project of Tsinghua University under Grant No. 20111081073, and the “NExT Research Center” funded by MDA, Singapore, under the Grant No. WBS:R-252-300-001-490. Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 32<br>
1 Tsinghua University
2 UC Irvine, Bimaple Technology Inc. SIGIR 2012, Portland, Oregon<br>
slide2. Query suggestions Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 2<br>
slide3. Type-ahead search (instant search) Li, Wang, Li, and Feng 3 Finding answers instantly! Tsinghua/UC Irvine/Bimaple<br>
slide4. ipubmed.ics.uci.edu Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 4<br>
slide5. Advantages of instant fuzzy search Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 5 Save time<br>
slide6. Challenges Speed
“100ms rule”
Prefix matching
Fuzzy matching Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 6<br>
slide7. Techniques for computing top-k answers in instant fuzzy search without generating all candidates Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 7 Contributions Ranking framework
Index Structures
Algorithms
Experimental evaluation<br>
slide8. Outline Problem Formulation
Instant exact search
Instant fuzzy search
Experiments Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 8<br>
slide9. Problem Formulation Data: records
Query:
w1, w2, …, wm
wm partial keyword
Answers: k best records Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 9 graph icde li Prefix<br>
slide10. Aggregate Ranking Framework Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 10 graph, gray, gross, icde, lin, liu Record Query graph icde li Score(graph) Score(icde) Score(lin) Score(liu) Max<br>
slide11. Trie Index structures g r a i l c d e m o p y h s u p s i u i n u Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 11 Inverted Index<br>
slide12. {graph, icde, li} k=1 Basic Solution g r a i l c d e m o p y h s u p s i u i n u graph icde lin liu Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 12<br>
slide13. Optimization 1: Heap-based Method Aggregate Max Heap graph icde lin liu GetMax() Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 13<br>
slide14. Optimization 2: Top-k List-Merging Algorithm Example: Threshold algorithm Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 14<br>
slide15. Efficient Random Access: How? g r a i l c d e m o p y h s u p s i u i n u Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 15<br>
slide16. Forward index [Ji et al. WWW’09] Keyword ID Weight Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 16 g r a i l c d e m o p y h s u p s i u i n u 1 2 3 4 5 6 7 8 9 [1, 1] [1, 2] [3,3] [4, 4] [3, 4] [1, 4] [1, 4] [2,2] [5, 6] [5, 6] [5, 6] [7, 8] [7, 9] [9, 9]<br>
slide17. g r a i l c d e m o p y h s u p s i u i n u 1 2 3 4 5 6 7 8 9 [1, 1] [1, 2] [3,3] [4, 4] [3, 4] [1, 4] [1, 4] [2,2] [5, 6] [5, 6] [5, 6] [7, 8] [7, 9] [9, 9] Random Access Using Forward Index 7 ? Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 17<br>
slide18. Outline Problem Formulation
Instant exact search
Instant fuzzy search
Experiments Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 18<br>
slide19. Ranking Framework (Fuzzy matching) Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 19 Aggregate graph, gray, icdm, gross, lin, liu Record Query graph icde li Score(graph) Sim(icde,icdm)
*Score(icdm) Score(lin) Score(liu) Max Sim(li,i)
*Score(lin)<br>
slide20. {graph, icde, li}, similarity threshold τ=0.45 Computing Similar Prefixes [Ji et al. WWW’09] g r a i l c d e m o p y h s u p s i u i n u Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 20<br>
slide21. Top-k Algorithm icde icdm lin liu lui Max Heap similarity ×0.5 ×1 ×1 ×0.5 ×0.5 icde icdm ×0.5 ×1 Max Heap Max Heap GetMax() sum ×1 graph icde li graph GetMax() GetMax() Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 21<br>
slide22. Probing on Forward Lists Efficient Random Access (method 1) Binary Search: [5,6], [7,9], [7,8], [9,9], 7, 8, 9 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 22 g r a i l c d e m o p y h s u p s i u i n u 1 2 3 4 5 6 7 8 9 [1, 1] [1, 2] [3,3] [4, 4] [3, 4] [1, 4] [1, 4] [2,2] [5, 6] [5, 6] [5, 6] [7, 8] [7, 9] [9, 9]<br>
slide23. Efficient Random Access (method 2) Probing on Trie Leaf Nodes g r a i l c d l m o p y h s u p s i u i n u 1 2 3 4 5 6 7 8 9 [1,1] [1,2] [3,3] [4,4] [3,4] [1,4] [1,4] [2,2] [5,6] [5,6] [5,6] [7,8] [7,9] [9,9] li, 0.5 li, 0.5 li, 1 li, 1 li, 0.5 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 23<br>
slide24. Optimization by materializing union lists g r a i l c d e m o p y h s u p s i u i n u Time/space tradeoff
Cost-based analysis for a space budget Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 24<br>
slide25. Outline Problem Formulation
Instant exact search
Instant fuzzy search
Experiments Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 25<br>
slide26. Data sets and index costs Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 26<br>
slide27. Exact Search (DBLP) k=10, similarity threshold τ=0.6 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 27<br>
slide28. Exact Search (DBLP) k=10, similarity threshold τ=0.6 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 28<br>
slide29. Fuzzy Search DBLP, k=10, similarity threshold τ=0.6 Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 29 TA NRA<br>
slide30. Other results (not included in the paper) More general ranking (e.g., positional information)
Other languages
Location-based search Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 30<br>
slide31. Conclusions (ipubmed.ics.uci.edu) Efficient techniques for instant fuzzy search Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 31<br>
slide32. Acknowledgements The authors have financial interest in Bimaple Technology Inc., a company currently commercializing some of the techniques described in this publication.
Chen Li was partially supported by NIH grant 1R21LM010143-01A1.
Guoliang Li, Jianan Wang, and Jianhua Feng were partly supported by the National Natural Science Foundation of China under Grant No. 61003004, the National Grand Fundamental Research 973 Program of China under Grant No. 2011CB302206, a project of Tsinghua University under Grant No. 20111081073, and the “NExT Research Center” funded by MDA, Singapore, under the Grant No. WBS:R-252-300-001-490. Li, Wang, Li, and Feng Tsinghua/UC Irvine/Bimaple 32<br>