Presentation is loading. Please wait.

Presentation is loading. Please wait.

Mehdi Kargar Aijun An York University, Toronto, Canada Keyword Search in Graphs: Finding r-cliques.

Similar presentations


Presentation on theme: "Mehdi Kargar Aijun An York University, Toronto, Canada Keyword Search in Graphs: Finding r-cliques."— Presentation transcript:

1 Mehdi Kargar Aijun An York University, Toronto, Canada Keyword Search in Graphs: Finding r-cliques

2 Overview Keyword Search in Graphs/Relational Databases r-clique Definition Challenges in Finding r-clique Approximation Algorithm for Finding r-cliques Enumerating Top-k r-cliques in Polynomial Delay Empirical Results Conclusion 2/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

3 Keyword Search in Graphs/Relational Databases Keyword search is a well known mechanism for retrieving relevant information from a set of documents. Google is a familiar example ! What about structured data? Such as XML documents or Relational Databases? Current enterprise search engines in structured data requires: Knowledge of schema Knowledge of a query language Knowledge of the role of the keywords Do users have all of the above Knowledge ? The answer is NO ! 3/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

4 Keyword Search in Graphs/Relational Databases Users need a simple system that receives some keywords as input and returns a set of nodes that together cover all or part of the input keywords as output. Relational databases can be modeled using graphs: Tuples are nodes of the graph. Foreign key relationships are edges that connect two nodes (tuples) to each other. 4/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

5 Example: Search in Relational Databases IDName Country 22TorontoCA 16New YorkUS IDNameHead Q. 135UN16 175EU81 CountryOrg. CA135 US135 CodeName CACanada USUnited States CitiesOrganizations CountriesMemberships 5/28 Part of Mondial Dataset VLDB’11 Keyword Search in Graphs: Finding r-cliques

6 New York is Located in United States IDName Country 22TorontoCA 16New YorkUS IDNameHead Q. 135UN16 175EU81 CountryOrg. CA135 US135 CodeName CACanada USUnited States CitiesOrganizations CountriesMemberships Keywords : “New York” “United States” 6/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

7 New York hosts UN and Canada is a member IDName Country 22TorontoCA 16New YorkUS IDNameHead Q. 135UN16 175EU81 CountryOrg. CA135 US135 CodeName CACanada USUnited States CitiesOrganizations CountriesMemberships Keywords : “New York” “Canada” 7/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

8 Previous Approaches Most of the works find minimal connected trees that contain all or part of the input keywords. The tree is called Steiner Tree. Recently, methods that produce sub-graphs are proposed. They might provide more informative answers One of the recent approaches is called multi-center community (ICDE 2009). So, what is the problem with previous approaches? 8/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

9 Problems with Previous Approaches 1. There might be some content nodes that are far away from each other. It means that weak relationships among content nodes might exist. There is no guarantee on the closeness of the nodes. Since all keywords are equally important, all of them should be close to each other. They are also equally important in the ranking function. 2. While searching for the answers, current methods explore both content and non-content nodes. This might lead to poor performance. 9/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

10 r-cliques To solve the problem of previous approaches, we propose to find r-cliques. An r-clique is a set of content nodes that together contain all of the input keywords and in which the shortest distance between each pair of nodes is no longer than r. Weight of r-clique: Suppose that the nodes of an r-clique are denoted as {v 1, v 2, …, v n }. The weight of the r-clique is defined as: dist(v i,v j ) is the shortest distance between v i and v j. 10/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

11 Benefits of Finding r-cliques Finding r-cliques as the answers for keyword search in graphs does not have the problems of previous approaches. All of the content nodes are reasonably close to each other. The weight function evaluates all of the content nodes equally. The algorithm (to be discussed later) for finding r-cliques concentrate on the content nodes rather than all of the nodes in the graph. So, it is faster and more efficient. For presenting the relationships, the final answer has less irrelevant nodes than a multi-center community. 11/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

12 An Example Input Keyword: James John Jack 12/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques 12/28

13 r-clique weight: 12 tree weight: 8 community weight: 8 r-clique weight: 14 tree weight: 7 community weight: 7 13/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques 13/28

14 Challenges in Finding r-cliques Problem 1: Given a distance threshold r, a graph G and a set of input keywords, find an r-clique in G whose weight is minimum. Theorem: Problem 1 is NP-hard. Proved in the paper by reduction from 3-satisfiability (3-SAT). Solution : Approximation algorithm with guaranteed ratio. Total number of answers is exponential regarding the number of input keywords. It is not efficient to generate all answers and then sort them. Solution : Enumerating answers in polynomial delay. 14/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques 14/28

15 R-clique Problem NP-Hard Decision Version 3-sat Problem Reduction n words, m clause Step 1: construct nodes 2*n Step 2: construct keywords n + m Step3: construct weights 2* w, w/(n+m, 2) Step4: =>, <= Refer to Paper 15

16 Branch and Bound 16

17 What We Need … Producing r-cliques in a ranking order r-cliques with lower weights should be presented before ones with higher weights. Producing top-k r-cliques efficiently with a bound on approximation ratio Each r-clique must be generated efficiently in polynomial time. There must be a bound on the quality of a generated r-clique The weight of a generated r-clique should be within some factor of the current optimal solution Generating all the r-cliques if needed No r-clique should be missed 17/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques 17/28

18 Heuristic and Approximate Order It is close to the optimal answer with a provable guarantee It is expected to be close to the optimal answer. But, we have no guarantee Heuristic Order Approximate Order Desired Choice 18/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

19 Enumerating in Approximate Order The Lawler’s technique is used for finding the top-k answers. In each iteration, the next r-clique is generated by finding the top answer under constraints. Two problems should be solved 1- What are the constraints? 2- How top answer can be found efficiently under the constraints? 19/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques 19/28

20 Overview of the System Input Keywords + Value of k Find best Answer with no Constraint Insert the best r-clique with the search space in priority queue Fetch the best r-clique from priority queue and print it Divide the related search space of the top answer into sub-spaces Find best r-clique in each sub-space with associated constrains Insert each answer with the related search space into priority queue Top-k already printed OR Empty priority queue ? YES Terminate NO 20/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques 20/28

21 GenerateAnswers Algorithm Refer to Paper. 21

22 Constraints and Search Space Let’s do it using an example ! Suppose that the input keywords are {k 1, k 2, k 3, k 4 }. C i = {set of nodes that contains keyword k i }. The search space that contains the best r-clique can be represented as {C 1 C 2 C 3 C 4 }. Assume that the best r-clique is (v 1, v 2, v 3, v 4 ), where v i is a node containing keyword k i. 22/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques 22/28 The whole search space

23 FindTopRankedAnswer 23

24 Prove Theorem 2 & 3 Theorem 2 is obvious. Theorem 3: 24

25 Properties of the Approximation Algorithm Only content nodes are searched for finding the best answer in the search space. The approximation ratio of the algorithm is equal to 2. The weight of the answer is at most twice of the weight of the optimal answer. 25/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

26 Presenting r-cliques to the User To show the relationship between the nodes in an r-clique, a Steiner tree is found and presented to the user. Distributed Parallel Algorithm For Nonlinear Optimization Without Derivatives A Binding Number Computation of Graph Xuping Zhang w w Keywords : (in DBLP dataset) “Parallel” “Algorithm” “Optimization” “Graph” Distributed Parallel Algorithm For Nonlinear Optimization Without Derivatives A Binding Number Computation of Graph Congying Han w w A New Non-interior Continuation Method for Second-Order Cone Programming Guoping He Xuping Zhang w www w r-clique community Irrelevant 26/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

27 Experimental Results The r-clique is compared with the multi-center community method (it is called com-k). Our approximation algorithm is called poly-delay-k. Two datasets are used: DBLP and IMDb. The set of input keywords and parameters are the same as the community paper. 27/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

28 Running Time DBLP Dataset IMDb Dataset 28/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

29 Quality of the Answers DBLP Dataset 29/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

30 Search Accuracy from a User Study DBLP Dataset 30/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques Top-k precision: the percentage of the answers in the top-k answers that are relevant to the query. The users are asked to evaluate the answers using two methods. In the first approach the scores (0-1) are assigned to the nodes. Then, the average is used as the precision. In the second approach, the whole answer is evaluated and a score is assigned to it. The results of both of the methods are similar.

31 Conclusion A novel and efficient approach for keyword search in graphs has been proposed. All of the content nodes are reasonably close to each other. An approximation algorithm with bounded guarantee has been proposed. Only content nodes are explored during the search process. A Steiner tree which has as small as possible number of middle nodes has been generated to reveal relations among content nodes. 31/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques

32 Thank you! Any Questions? 32/28 VLDB’11 Keyword Search in Graphs: Finding r-cliques


Download ppt "Mehdi Kargar Aijun An York University, Toronto, Canada Keyword Search in Graphs: Finding r-cliques."

Similar presentations


Ads by Google